CMIS-WS .NET tests

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@12874 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Logneon
2009-01-23 10:30:06 +00:00
parent dedef025d6
commit eaccbb3bf9
95 changed files with 63712 additions and 0 deletions

View File

@@ -0,0 +1,100 @@
using System;
using NUnit.Framework;
using WcfTestClient.RepositoryService;
namespace WcfCmisWSTests {
///
/// author: Dmitry Velichkevich
///
[TestFixture]
public class RepositoryServiceClientTest {
[Test]
public void testGetRepositories() {
try {
AbstractCmisServicesHelper.getAndAssertRepositoryId();
} catch (Exception e) {
Assert.Fail(e.Message);
}
}
[Test]
public void testGetRepositoryInfo() {
try {
RepositoryServicePortClient client = AbstractCmisServicesHelper.createRepositoryServiceClient();
assertRepositoryInfoReponse(client.getRepositoryInfoWrapper(AbstractCmisServicesHelper.
getAndAssertRepositoryId()));
} catch (Exception e) {
Assert.Fail(e.Message);
}
}
[Test]
public void testGetTypes() {
try {
assertGetTypesResponse(AbstractCmisServicesHelper.createRepositoryServiceClient());
} catch (Exception e) {
Assert.Fail(e.Message);
}
}
[Test]
public void testGetTypeDefinition() {
try {
RepositoryServicePortClient client = AbstractCmisServicesHelper.createRepositoryServiceClient();
string typeId = assertGetTypesResponse(client);
Assert.IsNotNull(typeId);
Assert.IsTrue(typeId.Length > AbstractCmisServicesHelper.MINIMAL_ARRAY_LIKE_STRUCTURES_LENGTH);
getTypeDefinitionResponse response = client.getTypeDefinitionWrapper(AbstractCmisServicesHelper.
getAndAssertRepositoryId(), typeId);
Assert.IsNotNull(response, typeId);
} catch (Exception e) {
Assert.Fail(e.Message);
}
}
private static void assertRepositoryInfoReponse(getRepositoryInfoResponse repositoryInfo) {
Assert.IsNotNull(repositoryInfo);
assertCapabilities(repositoryInfo);
}
private string assertGetTypesResponse(RepositoryServicePortClient client) {
bool hasMoreElements;
cmisTypeDefinitionType[] types = client.getTypes(AbstractCmisServicesHelper.getAndAssertRepositoryId(),
AbstractCmisServicesHelper.DOCUMENT_TYPE, false, AbstractCmisServicesHelper.TEXTUAL_ZERO,
AbstractCmisServicesHelper.TEXTUAL_ZERO, out hasMoreElements);
Assert.IsNotNull(types);
Assert.IsTrue((types.Length >= AbstractCmisServicesHelper.MINIMAL_ARRAY_LIKE_STRUCTURES_LENGTH)
&& types[0].fileable && hasMoreElements);
return types[new Random().Next(types.Length)].typeId;
}
private static void assertCapabilities(getRepositoryInfoResponse repositoryInfo) {
Assert.IsFalse(repositoryInfo.capabilities.capabilityUnfiling);
Assert.IsFalse(repositoryInfo.capabilities.capabilityPWCSearchable);
Assert.IsFalse(repositoryInfo.capabilities.capabilityVersionSpecificFiling);
Assert.IsFalse(repositoryInfo.capabilities.capabilityAllVersionsSearchable);
Assert.IsTrue(repositoryInfo.capabilities.capabilityMultifiling);
Assert.IsTrue(repositoryInfo.capabilities.capabilityPWCUpdateable);
Assert.AreEqual(enumCapabilityJoin.nojoin, repositoryInfo.capabilities.capabilityJoin);
Assert.AreEqual(enumCapabilityQuery.none, repositoryInfo.capabilities.capabilityQuery);
Assert.AreEqual(enumCapabilityFullText.fulltextandstructured,
repositoryInfo.capabilities.capabilityFullText);
}
}
}