/** * Appends the concept to the end of the existing list of concept members for this Concept * * @since 1.7 * @param setMember Concept to add to the * @should add concept as a conceptSet * @should append concept to the existing list of conceptSet * @should place the new concept last in the list * @should assign the calling component as parent to the ConceptSet */ public void addSetMember(Concept setMember) { addSetMember(setMember, -1); }
/** * @see Concept#addSetMember(Concept) */ @Test public void addSetMember_shouldPlaceTheNewConceptLastInTheList() { Concept concept = new Concept(); Concept setMember1 = new Concept(1); concept.addSetMember(setMember1, 3); Concept setMember2 = new Concept(2); concept.addSetMember(setMember2); Assert.assertEquals(setMember2, concept.getSetMembers().get(1)); }
/** * @see Concept#addSetMember(Concept) */ @Test public void addSetMember_shouldAppendConceptToExistingConceptSet() { Concept concept = new Concept(); Concept setMember1 = new Concept(1); concept.addSetMember(setMember1); Concept setMember2 = new Concept(2); concept.addSetMember(setMember2); Assert.assertEquals(setMember2, concept.getSetMembers().get(1)); }
/** * @see Concept#addSetMember(Concept,int) */ @Test public void addSetMember_shouldInsertTheConceptInTheThirdSlot() { Concept concept = new Concept(); Concept firstSetMember = new Concept(2); concept.addSetMember(firstSetMember); Concept secondSetMember = new Concept(3); concept.addSetMember(secondSetMember); Concept thirdSetMember = new Concept(4); concept.addSetMember(thirdSetMember); Concept newThirdSetMember = new Concept(5); concept.addSetMember(newThirdSetMember, 2); ConceptSet thirdConceptSet = (ConceptSet) concept.getConceptSets().toArray()[2]; Assert.assertEquals(newThirdSetMember, thirdConceptSet.getConcept()); }
/** * @see Concept#getSetMembers() */ @Test public void getSetMembers_shouldReturnAllTheConceptMembersOfCurrentConcept() { Concept c = new Concept(); Concept setMember1 = new Concept(12345); c.addSetMember(setMember1); Concept setMember2 = new Concept(67890); c.addSetMember(setMember2); List<Concept> setMembers = c.getSetMembers(); Assert.assertEquals(2, setMembers.size()); Assert.assertEquals(setMember1, setMembers.get(0)); Assert.assertEquals(setMember2, setMembers.get(1)); }
/** * @see Concept#addSetMember(Concept,int) */ @Test public void addSetMember_shouldInsertTheConceptAtTheEndWithNegativeOneIndex() { Concept concept = new Concept(); Concept firstSetMember = new Concept(2); concept.addSetMember(firstSetMember); Concept setMember = new Concept(3); concept.addSetMember(setMember, -1); ConceptSet secondConceptSet = (ConceptSet) concept.getConceptSets().toArray()[1]; Assert.assertEquals(setMember, secondConceptSet.getConcept()); }
/** * @see Concept#getSetMembers() */ @Test(expected = UnsupportedOperationException.class) public void getSetMembers_shouldReturnUnmodifiableListOfConceptMemberList() { Concept c = new Concept(); c.addSetMember(new Concept(12345)); List<Concept> setMembers = c.getSetMembers(); Assert.assertEquals(1, setMembers.size()); setMembers.add(new Concept()); }
/** * @see Concept#addSetMember(Concept) */ @Test public void addSetMember_shouldAppendConceptToExistingConceptSetHavingRetiredConcept() { Concept concept = new Concept(); Concept setMember1 = new Concept(1); setMember1.setRetired(true); concept.addSetMember(setMember1); Concept setMember2 = new Concept(2); concept.addSetMember(setMember2); Concept setMember3 = new Concept(3); concept.addSetMember(setMember3); assertThat(concept.getSetMembers(), hasItem(setMember1)); assertThat(concept.getSetMembers(), hasItem(setMember2)); assertThat(concept.getSetMembers(), hasItem(setMember3)); assertThat(concept.getSetMembers().size(), is(3)); } }
/** * @see Concept#addSetMember(Concept,int) */ @Test public void addSetMember_shouldInsertTheConceptBeforeTheFirstWithZeroIndex() { Concept concept = new Concept(); Concept firstSetMember = new Concept(2); concept.addSetMember(firstSetMember); Concept setMember = new Concept(3); concept.addSetMember(setMember, 0); ConceptSet firstConceptSet = (ConceptSet) concept.getConceptSets().toArray()[0]; ConceptSet secondConceptSet = (ConceptSet) concept.getConceptSets().toArray()[1]; Assert.assertTrue(firstConceptSet.getSortWeight() < secondConceptSet.getSortWeight()); }
/** * @see Concept#addSetMember(Concept,int) */ @Test public void addSetMember_shouldAddTheConceptToTheCurrentListOfConceptSet() { Concept concept = new Concept(); Concept setMember = new Concept(1); Assert.assertEquals(0, concept.getConceptSets().size()); concept.addSetMember(setMember); Assert.assertEquals(1, concept.getConceptSets().size()); }
@Test public void shouldChangeConceptSetReferenceToParentConcept() { Concept c = new Concept(123); c.addSetMember(new Concept(1)); c.addSetMember(new Concept(2)); ConceptNumeric cn = new ConceptNumeric(c); for (ConceptSet cSet : cn.getConceptSets()) { Assert.assertSame(cn, cSet.getConceptSet()); } }
/** * @see Concept#addSetMember(Concept,int) */ @Test public void addSetMember_shouldAssignTheGivenConceptAsAConceptSet() { Concept concept = new Concept(); Concept setMember = new Concept(2); concept.addSetMember(setMember, 0); ConceptSet conceptSet = (ConceptSet) concept.getConceptSets().toArray()[0]; Assert.assertEquals(setMember, conceptSet.getConcept()); }
/** * @see Concept#addSetMember(Concept,int) */ @Test public void addSetMember_shouldAssignTheCallingComponentAsParentToTheConceptSet() { Concept concept = new Concept(); Concept setMember = new Concept(11); concept.addSetMember(setMember); ConceptSet conceptSet = (ConceptSet) concept.getConceptSets().toArray()[0]; Assert.assertEquals(concept, conceptSet.getConceptSet()); }
/** * @see Concept#addSetMember(Concept) */ @Test public void addSetMember_shouldAppendConceptToTheExistingListOfConceptSet() { Concept concept = new Concept(); Concept firstSetMember = new Concept(2); concept.addSetMember(firstSetMember); Concept setMember = new Concept(3); concept.addSetMember(setMember); ConceptSet firstConceptSet = (ConceptSet) concept.getConceptSets().toArray()[0]; ConceptSet secondConceptSet = (ConceptSet) concept.getConceptSets().toArray()[1]; Assert.assertEquals(firstSetMember, firstConceptSet.getConcept()); Assert.assertEquals(setMember, secondConceptSet.getConcept()); }
/** * @see Concept#addSetMember(Concept) */ @Test public void addSetMember_shouldAddConceptAsAConceptSet() { Concept concept = new Concept(); Concept setMember = new Concept(1); concept.addSetMember(setMember); ConceptSet conceptSet = (ConceptSet) concept.getConceptSets().toArray()[0]; Assert.assertEquals(setMember, conceptSet.getConcept()); }
/** * @see ConceptServiceImpl#saveConcept(Concept) */ @Test public void saveConcept_shouldForceSetFlagIfSetMembersExist() { //Given Concept concept = new Concept(); concept.addName(new ConceptName("Concept", new Locale("en", "US"))); concept.addDescription(new ConceptDescription("some description", null)); concept.setDatatype(new ConceptDatatype(1)); concept.setConceptClass(new ConceptClass(1)); Concept conceptSetMember = new Concept(); conceptSetMember.addName(new ConceptName("Set Member", new Locale("en", "US"))); conceptSetMember.addDescription(new ConceptDescription("some description", null)); conceptSetMember.setConceptClass(new ConceptClass(1)); conceptSetMember.setDatatype(new ConceptDatatype(1)); Context.getConceptService().saveConcept(conceptSetMember); concept.addSetMember(conceptSetMember); concept.setSet(false); //When Context.getConceptService().saveConcept(concept); //Then assertTrue(concept.getSet()); }
/** * @param instance * @param setMembers the list of Concepts */ @PropertySetter("setMembers") public static void setSetMembers(Concept instance, List<Concept> setMembers) { instance.getConceptSets().clear(); if (setMembers == null || setMembers.isEmpty()) { instance.setSet(false); } else { instance.setSet(true); for (Concept setMember : setMembers) { instance.addSetMember(setMember); } } } }
@Test public void testGetNamedRepresentation() throws Exception { Concept object = getObject(); object.addSetMember(object); try { SimpleObject rep = getResource().asRepresentation(object, new NamedRepresentation("fullchildreninternal")); } catch (ConversionException e) { Assert.assertFalse(e.getCause().getCause().getMessage().contains("Cycles in children are not supported.")); } } }
@Test(expected = ConversionException.class) public void shouldFailForFullChildrenWhenCyclesDetected() throws Exception { Concept conceptLevel1 = newConcept("level1"); Concept conceptLevel2 = newConcept("level2"); Concept conceptLevel3 = newConcept("level3"); Concept conceptLevel4 = newConcept("level4"); Concept conceptLevel5 = newConcept("level5"); conceptLevel1.addSetMember(conceptLevel2); conceptLevel2.addSetMember(conceptLevel3); conceptLevel3.addSetMember(conceptLevel4); conceptLevel4.addSetMember(conceptLevel5); service.saveConcept(conceptLevel5); service.saveConcept(conceptLevel4); service.saveConcept(conceptLevel3); service.saveConcept(conceptLevel2); service.saveConcept(conceptLevel1); //Create cycle conceptLevel5.addSetMember(conceptLevel1); service.saveConcept(conceptLevel5); deserialize(handle(newGetRequest(getURI() + "/" + conceptLevel1.getUuid(), new Parameter("v", "fullchildren")))); }
Concept conceptLevel5 = newConcept("level5"); conceptLevel1.addSetMember(conceptLevel2); conceptLevel2.addSetMember(conceptLevel3); conceptLevel3.addSetMember(conceptLevel4); conceptLevel4.addSetMember(conceptLevel5);