Search in sources :

Example 1 with Action

use of org.raml.model.Action in project microservice_framework by CJSCommonPlatform.

the class HttpActionBuilder method build.

public Action build() {
    final Action action = new Action();
    action.setType(actionType);
    if (description != null) {
        action.setDescription(description);
    } else if (mappingDescription != null) {
        action.setDescription(mappingDescription.build());
    }
    action.setBody(body);
    if (responseMap.isEmpty()) {
        final HashMap<String, Response> responsesFromList = new HashMap<>();
        responses.forEach(response -> responsesFromList.put(valueOf(OK.getStatusCode()), response));
        action.setResponses(responsesFromList);
    } else {
        action.setResponses(responseMap);
    }
    if (resource != null) {
        action.setResource(resource);
    }
    action.setQueryParameters(queryParameters);
    return action;
}
Also used : Response(org.raml.model.Response) Action(org.raml.model.Action) HashMap(java.util.HashMap)

Example 2 with Action

use of org.raml.model.Action in project microservice_framework by CJSCommonPlatform.

the class ResourcesListToSubscriptionListConverterTest method shouldConvertAListOfResourcesToAListOfSubscriptions.

@Test
public void shouldConvertAListOfResourcesToAListOfSubscriptions() throws Exception {
    final Resource resource_1 = mock(Resource.class);
    final Resource resource_2 = mock(Resource.class);
    final Resource resource_3 = mock(Resource.class);
    final Action action_1 = mock(Action.class);
    final Action action_2 = mock(Action.class);
    final Action action_3 = mock(Action.class);
    final Subscription subscription_1 = mock(Subscription.class);
    final Subscription subscription_2 = mock(Subscription.class);
    final Subscription subscription_3 = mock(Subscription.class);
    when(resource_1.getAction(POST)).thenReturn(action_1);
    when(resource_2.getAction(POST)).thenReturn(action_2);
    when(resource_3.getAction(POST)).thenReturn(action_3);
    when(ramlResourceToSubscriptionConverter.asSubscription(resource_1)).thenReturn(subscription_1);
    when(ramlResourceToSubscriptionConverter.asSubscription(resource_2)).thenReturn(subscription_2);
    when(ramlResourceToSubscriptionConverter.asSubscription(resource_3)).thenReturn(subscription_3);
    final Collection<Resource> resources = asList(resource_1, resource_2, resource_3);
    final List<Subscription> subscriptions = resourcesListToSubscriptionListConverter.getSubscriptions(resources);
    assertThat(subscriptions.size(), is(3));
    assertThat(subscriptions, hasItem(subscription_1));
    assertThat(subscriptions, hasItem(subscription_2));
    assertThat(subscriptions, hasItem(subscription_3));
}
Also used : Action(org.raml.model.Action) Resource(org.raml.model.Resource) Subscription(uk.gov.justice.subscription.domain.Subscription) Test(org.junit.Test)

Example 3 with Action

use of org.raml.model.Action in project microservice_framework by CJSCommonPlatform.

the class ResourcesListToSubscriptionListConverterTest method shouldOnlyConvertResourcesThatHaveAnActionOfPost.

@Test
public void shouldOnlyConvertResourcesThatHaveAnActionOfPost() throws Exception {
    final Resource resource_1 = mock(Resource.class);
    final Resource resource_2 = mock(Resource.class);
    final Resource resource_3 = mock(Resource.class);
    final Resource resource_4 = mock(Resource.class);
    final Resource resource_5 = mock(Resource.class);
    final Resource resource_6 = mock(Resource.class);
    final Resource resource_7 = mock(Resource.class);
    final Action action_1 = mock(Action.class);
    final Subscription subscription_1 = mock(Subscription.class);
    when(resource_1.getAction(POST)).thenReturn(action_1);
    when(resource_2.getAction(GET)).thenReturn(null);
    when(resource_3.getAction(DELETE)).thenReturn(null);
    when(resource_4.getAction(HEAD)).thenReturn(null);
    when(resource_5.getAction(OPTIONS)).thenReturn(null);
    when(resource_6.getAction(PATCH)).thenReturn(null);
    when(resource_7.getAction(TRACE)).thenReturn(null);
    when(ramlResourceToSubscriptionConverter.asSubscription(resource_1)).thenReturn(subscription_1);
    final Collection<Resource> resources = asList(resource_1, resource_2, resource_3, resource_4, resource_5, resource_6, resource_7);
    final List<Subscription> subscriptions = resourcesListToSubscriptionListConverter.getSubscriptions(resources);
    assertThat(subscriptions.size(), is(1));
    assertThat(subscriptions.get(0), is(subscription_1));
}
Also used : Action(org.raml.model.Action) Resource(org.raml.model.Resource) Subscription(uk.gov.justice.subscription.domain.Subscription) Test(org.junit.Test)

Example 4 with Action

use of org.raml.model.Action in project microservice_framework by CJSCommonPlatform.

the class AbstractContentTypeRamlValidator method validate.

@Override
protected void validate(final Resource resource) {
    actionTypes.forEach(actionType -> {
        final Action action = resource.getActions().get(actionType);
        if (action != null) {
            final Collection<MimeType> mediaTypes = mediaTypesToValidate(action);
            checkNonEmpty(mediaTypes);
        }
    });
}
Also used : Action(org.raml.model.Action) MimeType(org.raml.model.MimeType)

Example 5 with Action

use of org.raml.model.Action in project microservice_framework by CJSCommonPlatform.

the class ActionsTest method shouldReturnListOfBodyTypesForActionContainingResponseAndBodyType.

@Test
public void shouldReturnListOfBodyTypesForActionContainingResponseAndBodyType() throws Exception {
    final Action action = httpAction().withResponseTypes("application/json").build();
    assertThat(responseMimeTypesOf(action).iterator().next().getType(), equalTo("application/json"));
}
Also used : HttpActionBuilder.httpAction(uk.gov.justice.services.generators.test.utils.builder.HttpActionBuilder.httpAction) Action(org.raml.model.Action) Actions.isSynchronousAction(uk.gov.justice.services.generators.commons.helper.Actions.isSynchronousAction) Test(org.junit.Test)

Aggregations

Action (org.raml.model.Action)21 Test (org.junit.Test)18 HttpActionBuilder.httpAction (uk.gov.justice.services.generators.test.utils.builder.HttpActionBuilder.httpAction)15 Actions.isSynchronousAction (uk.gov.justice.services.generators.commons.helper.Actions.isSynchronousAction)8 MimeType (org.raml.model.MimeType)6 HashMap (java.util.HashMap)4 Resource (org.raml.model.Resource)4 MappingBuilder (uk.gov.justice.services.generators.test.utils.builder.MappingBuilder)3 Subscription (uk.gov.justice.subscription.domain.Subscription)3 ActionType (org.raml.model.ActionType)2 Response (org.raml.model.Response)2 ActionMimeTypeDefinition (uk.gov.justice.services.generators.commons.client.ActionMimeTypeDefinition)2 TypeSpec (com.squareup.javapoet.TypeSpec)1 HttpActionBuilder.defaultDeleteAction (uk.gov.justice.services.generators.test.utils.builder.HttpActionBuilder.defaultDeleteAction)1 HttpActionBuilder.defaultGetAction (uk.gov.justice.services.generators.test.utils.builder.HttpActionBuilder.defaultGetAction)1 HttpActionBuilder.defaultPatchAction (uk.gov.justice.services.generators.test.utils.builder.HttpActionBuilder.defaultPatchAction)1 HttpActionBuilder.defaultPostAction (uk.gov.justice.services.generators.test.utils.builder.HttpActionBuilder.defaultPostAction)1 HttpActionBuilder.defaultPutAction (uk.gov.justice.services.generators.test.utils.builder.HttpActionBuilder.defaultPutAction)1 Event (uk.gov.justice.subscription.domain.Event)1 SubscriptionDescriptor (uk.gov.justice.subscription.domain.SubscriptionDescriptor)1