Search in sources :

Example 1 with Json

use of com.b2international.commons.json.Json in project snow-owl by b2ihealthcare.

the class SnomedRefSetMemberApiTest method createOwlAxiomWithIncorrectFocusConceptIdInExpression.

@Ignore
@Test
public void createOwlAxiomWithIncorrectFocusConceptIdInExpression() throws Exception {
    // ROOT != Abbreviation
    Json createRequestBody = createRefSetMemberRequestBody(Concepts.REFSET_OWL_AXIOM, Concepts.ROOT_CONCEPT).with(SnomedRf2Headers.FIELD_OWL_EXPRESSION, SnomedApiTestConstants.owlAxiom3(Concepts.ABBREVIATION)).with("commitComment", "Created new OWL Axiom reference set member");
    createComponent(branchPath, SnomedComponentType.MEMBER, createRequestBody).statusCode(400);
}
Also used : Json(com.b2international.commons.json.Json) Ignore(org.junit.Ignore) Test(org.junit.Test) AbstractSnomedApiTest(com.b2international.snowowl.snomed.core.rest.AbstractSnomedApiTest)

Example 2 with Json

use of com.b2international.commons.json.Json in project snow-owl by b2ihealthcare.

the class SnomedRefSetMemberApiTest method updateConcreteDomainMember.

@Test
public void updateConcreteDomainMember() {
    createConcreteDomainParentConcept(branchPath);
    String refSetId = createConcreteDomainRefSet(branchPath, DataType.DECIMAL);
    Json createRequest = createRefSetMemberRequestBody(refSetId, Concepts.ROOT_CONCEPT).with(Json.object(SnomedRf2Headers.FIELD_TYPE_ID, Concepts.REFSET_ATTRIBUTE, SnomedRf2Headers.FIELD_RELATIONSHIP_GROUP, 1, SnomedRf2Headers.FIELD_CHARACTERISTIC_TYPE_ID, Concepts.STATED_RELATIONSHIP, SnomedRf2Headers.FIELD_VALUE, "3.1415927", "commitComment", "Created new concrete domain reference set member"));
    String memberId = assertCreated(createComponent(branchPath, SnomedComponentType.MEMBER, createRequest));
    @SuppressWarnings("unchecked") Map<String, Object> member = getComponent(branchPath, SnomedComponentType.MEMBER, memberId).statusCode(200).body(SnomedRf2Headers.FIELD_TYPE_ID, equalTo(Concepts.REFSET_ATTRIBUTE)).body(SnomedRf2Headers.FIELD_RELATIONSHIP_GROUP, equalTo(1)).body(SnomedRf2Headers.FIELD_CHARACTERISTIC_TYPE_ID, equalTo(Concepts.STATED_RELATIONSHIP)).body(SnomedRf2Headers.FIELD_VALUE, equalTo("3.1415927")).extract().as(Map.class);
    member.put(SnomedRf2Headers.FIELD_TYPE_ID, Concepts.CONCEPT_MODEL_ATTRIBUTE);
    member.put(SnomedRf2Headers.FIELD_VALUE, "2.7182818");
    member.put("commitComment", "Updated existing concrete domain reference set member");
    updateRefSetComponent(branchPath, SnomedComponentType.MEMBER, memberId, member, false).statusCode(204);
    getComponent(branchPath, SnomedComponentType.MEMBER, memberId).statusCode(200).body(SnomedRf2Headers.FIELD_TYPE_ID, equalTo(Concepts.CONCEPT_MODEL_ATTRIBUTE)).body(SnomedRf2Headers.FIELD_RELATIONSHIP_GROUP, equalTo(1)).body(SnomedRf2Headers.FIELD_CHARACTERISTIC_TYPE_ID, equalTo(Concepts.STATED_RELATIONSHIP)).body(SnomedRf2Headers.FIELD_VALUE, equalTo("2.7182818"));
}
Also used : CoreMatchers.containsString(org.hamcrest.CoreMatchers.containsString) Json(com.b2international.commons.json.Json) Test(org.junit.Test) AbstractSnomedApiTest(com.b2international.snowowl.snomed.core.rest.AbstractSnomedApiTest)

Example 3 with Json

use of com.b2international.commons.json.Json in project snow-owl by b2ihealthcare.

the class SnomedRefSetMemberApiTest method executeSyncAction.

@Test
public void executeSyncAction() throws Exception {
    String queryRefSetId = createNewRefSet(branchPath, SnomedRefSetType.QUERY);
    String simpleRefSetId = createNewRefSet(branchPath);
    String parentId = createNewConcept(branchPath);
    List<String> conceptIds = newArrayList();
    for (int i = 0; i < 3; i++) {
        String conceptId = createNewConcept(branchPath, parentId);
        conceptIds.add(conceptId);
        // Need to add an inferred IS A counterpart, as query evaluation uses inferred relationships
        createNewRelationship(branchPath, conceptId, Concepts.IS_A, parentId, Concepts.INFERRED_RELATIONSHIP);
    }
    final Json memberRequest = Json.object(SnomedRf2Headers.FIELD_MODULE_ID, Concepts.MODULE_SCT_CORE, "refsetId", queryRefSetId, SnomedRf2Headers.FIELD_REFERENCED_COMPONENT_ID, simpleRefSetId, SnomedRf2Headers.FIELD_QUERY, "<" + parentId, "commitComment", "Created new query reference set member");
    final String memberId = assertCreated(createComponent(branchPath, SnomedComponentType.MEMBER, memberRequest));
    getComponent(branchPath, SnomedComponentType.MEMBER, memberId).statusCode(200);
    // Since we have used an existing simple type refset, it will have no members initially, so sync first
    executeSyncAction(memberId);
    checkReferencedComponentIds(conceptIds, simpleRefSetId);
    // Add a new concept that matches the query, then sync again
    String extraConceptId = createNewConcept(branchPath, parentId);
    conceptIds.add(extraConceptId);
    createNewRelationship(branchPath, extraConceptId, Concepts.IS_A, parentId, Concepts.INFERRED_RELATIONSHIP);
    executeSyncAction(memberId);
    checkReferencedComponentIds(conceptIds, simpleRefSetId);
}
Also used : CoreMatchers.containsString(org.hamcrest.CoreMatchers.containsString) Json(com.b2international.commons.json.Json) Test(org.junit.Test) AbstractSnomedApiTest(com.b2international.snowowl.snomed.core.rest.AbstractSnomedApiTest)

Example 4 with Json

use of com.b2international.commons.json.Json in project snow-owl by b2ihealthcare.

the class SnomedRefSetMemberApiTest method createMRMCAttributeRangeMember.

@Test
public void createMRMCAttributeRangeMember() {
    String newIdentifierConceptId = createNewConcept(branchPath, SnomedRefSetUtil.getParentConceptId(SnomedRefSetType.MRCM_ATTRIBUTE_RANGE));
    createNewRefSet(branchPath, SnomedRefSetType.MRCM_ATTRIBUTE_RANGE, newIdentifierConceptId);
    Json requestBody = createRefSetMemberRequestBody(newIdentifierConceptId, Concepts.ROOT_CONCEPT).with(Json.object(SnomedRf2Headers.FIELD_MRCM_RANGE_CONSTRAINT, "rangeConstraint", SnomedRf2Headers.FIELD_MRCM_ATTRIBUTE_RULE, "attributeRule", SnomedRf2Headers.FIELD_MRCM_RULE_STRENGTH_ID, Concepts.ROOT_CONCEPT, SnomedRf2Headers.FIELD_MRCM_CONTENT_TYPE_ID, Concepts.ROOT_CONCEPT, "commitComment", "Created new reference set member"));
    String memberId = assertCreated(createComponent(branchPath, SnomedComponentType.MEMBER, requestBody));
    getComponent(branchPath, SnomedComponentType.MEMBER, memberId).statusCode(200).body(SnomedRf2Headers.FIELD_MRCM_RANGE_CONSTRAINT, equalTo("rangeConstraint")).body(SnomedRf2Headers.FIELD_MRCM_ATTRIBUTE_RULE, equalTo("attributeRule")).body(SnomedRf2Headers.FIELD_MRCM_RULE_STRENGTH_ID, equalTo(Concepts.ROOT_CONCEPT)).body(SnomedRf2Headers.FIELD_MRCM_CONTENT_TYPE_ID, equalTo(Concepts.ROOT_CONCEPT));
    Json requestBody2 = createRefSetMemberRequestBody(newIdentifierConceptId, Concepts.ROOT_CONCEPT).with(Json.object(SnomedRf2Headers.FIELD_MRCM_ATTRIBUTE_CARDINALITY, "attributeCardinality", SnomedRf2Headers.FIELD_MRCM_ATTRIBUTE_IN_GROUP_CARDINALITY, "attributeInGroupCardinality", // XXX batman should not be in the test dataset
    SnomedRf2Headers.FIELD_MRCM_RULE_STRENGTH_ID, // XXX batman should not be in the test dataset
    "159725002", SnomedRf2Headers.FIELD_MRCM_CONTENT_TYPE_ID, Concepts.ROOT_CONCEPT, "commitComment", "Created new reference set member"));
    createComponent(branchPath, SnomedComponentType.MEMBER, requestBody2).statusCode(400);
    Json requestBody3 = createRefSetMemberRequestBody(newIdentifierConceptId, Concepts.ROOT_CONCEPT).with(Json.object(SnomedRf2Headers.FIELD_MRCM_ATTRIBUTE_CARDINALITY, "attributeCardinality", SnomedRf2Headers.FIELD_MRCM_ATTRIBUTE_IN_GROUP_CARDINALITY, "attributeInGroupCardinality", SnomedRf2Headers.FIELD_MRCM_RULE_STRENGTH_ID, Concepts.ROOT_CONCEPT, // XXX batman should not be in the test dataset
    SnomedRf2Headers.FIELD_MRCM_CONTENT_TYPE_ID, // XXX batman should not be in the test dataset
    "159725002", "commitComment", "Created new reference set member"));
    createComponent(branchPath, SnomedComponentType.MEMBER, requestBody3).statusCode(400);
}
Also used : CoreMatchers.containsString(org.hamcrest.CoreMatchers.containsString) Json(com.b2international.commons.json.Json) Test(org.junit.Test) AbstractSnomedApiTest(com.b2international.snowowl.snomed.core.rest.AbstractSnomedApiTest)

Example 5 with Json

use of com.b2international.commons.json.Json in project snow-owl by b2ihealthcare.

the class SnomedRefSetMemberApiTest method createAndUpdateNewModuleDependencyMembers.

@Test
public void createAndUpdateNewModuleDependencyMembers() {
    Json requestBody = createRefSetMemberRequestBody(Concepts.REFSET_MODULE_DEPENDENCY_TYPE, Concepts.MODULE_SCT_MODEL_COMPONENT).with("commitComment", "Created new module dependency reference set member");
    String memberId = assertCreated(createComponent(branchPath, SnomedComponentType.MEMBER, requestBody));
    SnomedReferenceSetMember member = getComponent(branchPath, SnomedComponentType.MEMBER, memberId).statusCode(200).extract().as(SnomedReferenceSetMember.class);
    assertNull(member.getProperties().get(SnomedRf2Headers.FIELD_SOURCE_EFFECTIVE_TIME));
    assertNull(member.getProperties().get(SnomedRf2Headers.FIELD_TARGET_EFFECTIVE_TIME));
    Json updateRequest = Json.object(SnomedRf2Headers.FIELD_SOURCE_EFFECTIVE_TIME, "20181002", SnomedRf2Headers.FIELD_TARGET_EFFECTIVE_TIME, "20181002", "commitComment", "Updated reference set member");
    updateRefSetComponent(branchPath, SnomedComponentType.MEMBER, memberId, updateRequest, false).statusCode(204);
    SnomedReferenceSetMember updatedMember = getComponent(branchPath, SnomedComponentType.MEMBER, memberId).statusCode(200).extract().as(SnomedReferenceSetMember.class);
    assertEquals(EffectiveTimes.parse("20181002", DateFormats.SHORT), updatedMember.getProperties().get(SnomedRf2Headers.FIELD_SOURCE_EFFECTIVE_TIME));
    assertEquals(EffectiveTimes.parse("20181002", DateFormats.SHORT), updatedMember.getProperties().get(SnomedRf2Headers.FIELD_TARGET_EFFECTIVE_TIME));
}
Also used : SnomedReferenceSetMember(com.b2international.snowowl.snomed.core.domain.refset.SnomedReferenceSetMember) Json(com.b2international.commons.json.Json) CoreMatchers.containsString(org.hamcrest.CoreMatchers.containsString) Test(org.junit.Test) AbstractSnomedApiTest(com.b2international.snowowl.snomed.core.rest.AbstractSnomedApiTest)

Aggregations

Json (com.b2international.commons.json.Json)139 Test (org.junit.Test)134 AbstractSnomedApiTest (com.b2international.snowowl.snomed.core.rest.AbstractSnomedApiTest)111 CoreMatchers.containsString (org.hamcrest.CoreMatchers.containsString)33 LocalDate (java.time.LocalDate)17 RelationshipValue (com.b2international.snowowl.snomed.core.domain.RelationshipValue)11 SnomedDescription (com.b2international.snowowl.snomed.core.domain.SnomedDescription)11 SnomedReferenceSetMember (com.b2international.snowowl.snomed.core.domain.refset.SnomedReferenceSetMember)11 BaseResourceApiTest (com.b2international.snowowl.core.rest.BaseResourceApiTest)10 SnomedReferenceSetMembers (com.b2international.snowowl.snomed.core.domain.refset.SnomedReferenceSetMembers)10 CodeSystem (com.b2international.snowowl.core.codesystem.CodeSystem)7 ISnomedIdentifierService (com.b2international.snowowl.snomed.cis.ISnomedIdentifierService)6 SnomedConcept (com.b2international.snowowl.snomed.core.domain.SnomedConcept)6 SctId (com.b2international.snowowl.snomed.cis.domain.SctId)4 Pair (com.b2international.commons.Pair)3 ValidatableResponse (io.restassured.response.ValidatableResponse)3 File (java.io.File)3 NotFoundException (com.b2international.commons.exceptions.NotFoundException)2 IBranchPath (com.b2international.snowowl.core.api.IBranchPath)2 TransactionContext (com.b2international.snowowl.core.domain.TransactionContext)2