Search in sources :

Example 16 with Api

use of org.alfresco.rest.framework.Api in project alfresco-remote-api by Alfresco.

the class ResourceLocatorTests method testResourceVersions.

@Test
public void testResourceVersions() {
    ResourceWithMetadata aResource = null;
    try {
        aResource = locator.locateEntityResource(api, "sheepnoaction", HttpMethod.GET);
        fail("Should throw an NotFoundException");
    } catch (NotFoundException error) {
    // this is correct
    }
    // Previously no actions for this entity, with v2 now have a GET action
    Api v2 = Api.valueOf(api.getName(), api.getScope().toString(), "2");
    aResource = locator.locateEntityResource(v2, "sheepnoaction", HttpMethod.GET);
    assertNotNull(aResource);
    // Not defined in v2 but now available because all v1 are available in v2.
    aResource = locator.locateEntityResource(v2, "sheep", HttpMethod.GET);
    assertNotNull(aResource);
    try {
        // Not defined in v1
        aResource = locator.locateRelationResource(api, "sheepnoaction", "v3isaresource", HttpMethod.GET);
        fail("Only available in v3");
    } catch (NotFoundException error) {
    // this is correct
    }
    try {
        // Not defined in v2
        aResource = locator.locateRelationResource(v2, "sheepnoaction", "v3isaresource", HttpMethod.GET);
        fail("Only available in v3");
    } catch (NotFoundException error) {
    // this is correct
    }
    // Only defined in V3
    Api v3 = Api.valueOf(api.getName(), api.getScope().toString(), "3");
    aResource = locator.locateRelationResource(v3, "sheepnoaction", "v3isaresource", HttpMethod.GET);
    assertNotNull("This resource is only available in v3", aResource);
    // Defined in v1 but available in v3
    aResource = locator.locateEntityResource(v3, "sheep", HttpMethod.GET);
    assertNotNull("This resource should be available in v3", aResource);
}
Also used : NotFoundException(org.alfresco.rest.framework.core.exceptions.NotFoundException) Api(org.alfresco.rest.framework.Api) ResourceWithMetadata(org.alfresco.rest.framework.core.ResourceWithMetadata) Test(org.junit.Test)

Example 17 with Api

use of org.alfresco.rest.framework.Api in project alfresco-remote-api by Alfresco.

the class ResourceLocatorTests method testFindEntityCollectionName.

@Test
public void testFindEntityCollectionName() {
    ResourceWithMetadata collResource = locator.locateEntityResource(api, "sheep", HttpMethod.GET);
    String name = ResourceInspector.findEntityCollectionNameName(collResource.getMetaData());
    assertEquals("sheep", name);
    ResourceWithMetadata relationResource = locator.locateRelationResource(api, "sheep", "baaahh", HttpMethod.GET);
    name = ResourceInspector.findEntityCollectionNameName(relationResource.getMetaData());
    assertEquals("sheep", name);
    relationResource = locator.locateRelationResource(api, "sheep", "blacksheep", HttpMethod.GET);
    name = ResourceInspector.findEntityCollectionNameName(relationResource.getMetaData());
    assertEquals("sheep", name);
    Api v2 = Api.valueOf(api.getName(), api.getScope().toString(), "2");
    Map<String, String> templateVars = new HashMap<String, String>();
    templateVars.put(ResourceLocator.COLLECTION_RESOURCE, "sheepnoaction");
    collResource = locator.locateResource(v2, templateVars, HttpMethod.GET);
    name = ResourceInspector.findEntityCollectionNameName(collResource.getMetaData());
    assertEquals("sheepnoaction", name);
}
Also used : HashMap(java.util.HashMap) Api(org.alfresco.rest.framework.Api) ResourceWithMetadata(org.alfresco.rest.framework.core.ResourceWithMetadata) Test(org.junit.Test)

Example 18 with Api

use of org.alfresco.rest.framework.Api in project alfresco-remote-api by Alfresco.

the class SerializeTests method testInvokeProperty.

@Test
public void testInvokeProperty() throws IOException {
    Api api3 = Api.valueOf("alfrescomock", "private", "3");
    ResourceWithMetadata propResource = locator.locateRelationResource(api3, "flock", "photo", HttpMethod.GET);
    AbstractResourceWebScript executor = getExecutor();
    Object result = executor.execute(propResource, Params.valueOf("234", null, null), mock(WebScriptResponse.class), true);
    assertNotNull(result);
}
Also used : AbstractResourceWebScript(org.alfresco.rest.framework.webscripts.AbstractResourceWebScript) WebScriptResponse(org.springframework.extensions.webscripts.WebScriptResponse) JSONObject(org.json.JSONObject) Api(org.alfresco.rest.framework.Api) ResourceWithMetadata(org.alfresco.rest.framework.core.ResourceWithMetadata) Test(org.junit.Test)

Aggregations

Api (org.alfresco.rest.framework.Api)18 Test (org.junit.Test)12 ResourceWithMetadata (org.alfresco.rest.framework.core.ResourceWithMetadata)7 ArrayList (java.util.ArrayList)6 HashMap (java.util.HashMap)6 UnsupportedResourceOperationException (org.alfresco.rest.framework.core.exceptions.UnsupportedResourceOperationException)3 EntityResourceAction (org.alfresco.rest.framework.resource.actions.interfaces.EntityResourceAction)3 JSONObject (org.json.JSONObject)3 List (java.util.List)2 Map (java.util.Map)2 WebApi (org.alfresco.rest.framework.WebApi)2 ResourceMetadata (org.alfresco.rest.framework.core.ResourceMetadata)2 NotFoundException (org.alfresco.rest.framework.core.exceptions.NotFoundException)2 BinaryResourceAction (org.alfresco.rest.framework.resource.actions.interfaces.BinaryResourceAction)2 MultiPartRelationshipResourceAction (org.alfresco.rest.framework.resource.actions.interfaces.MultiPartRelationshipResourceAction)2 MultiPartResourceAction (org.alfresco.rest.framework.resource.actions.interfaces.MultiPartResourceAction)2 RelationshipResourceAction (org.alfresco.rest.framework.resource.actions.interfaces.RelationshipResourceAction)2 ResourceAction (org.alfresco.rest.framework.resource.actions.interfaces.ResourceAction)2 SlimGoat (org.alfresco.rest.framework.tests.api.mocks3.SlimGoat)2 Method (java.lang.reflect.Method)1