+ @Ignore
+ @Test
+ public void addDescription() {
+ UUID taxonNodeUuid = UUID.fromString("ce54c396-3694-47f2-abb0-1d7b7e057985");
+
+ TaxonNode taxonNode = taxonNodeService.load(taxonNodeUuid);
+ Taxon taxon = taxonNode.getTaxon();
+ TaxonDescription description = TaxonDescription.NewInstance(taxon);
+
+
+ TextData textData = TextData.NewInstance();
+
+ textData.setFeature(Feature.ECOLOGY());
+ description.addElement(textData);
+
+ DescriptionElementSource descriptionElementSource = DescriptionElementSource.NewInstance(OriginalSourceType.PrimaryTaxonomicSource);
+ textData.addSource(descriptionElementSource);
+
+
+ CdmStore.getService(ITaxonNodeService.class).merge(taxonNode);
+
+ description.getId();
+ }
+
+
+ @Test
+ public void addTaxonNodeCascadeProblem() {
+ UUID taxonNodeUuid = UUID.fromString("ce54c396-3694-47f2-abb0-1d7b7e057985");
+
+ TaxonNode taxonNode = taxonNodeService.load(taxonNodeUuid);
+ Taxon childTaxon = Taxon.NewInstance(null, null);
+ TaxonNode childTaxonNode = taxonNode.addChildTaxon(childTaxon, null, null);
+ Taxon grandChildTaxon = Taxon.NewInstance(null, null);
+ TaxonNode grandChildTaxonNode = childTaxonNode.addChildTaxon(grandChildTaxon, null, null);
+
+ CdmStore.getService(ITaxonNodeService.class).merge(grandChildTaxonNode,true);
+
+ Assert.assertEquals(taxonNode.getChildNodes().get(0).getId(), childTaxonNode.getId());
+
+ Assert.assertTrue(childTaxonNode.treeIndex() != null);
+ Assert.assertEquals(taxonNode.getChildNodes().get(0).treeIndex(), childTaxonNode.treeIndex());
+ Assert.assertFalse(childTaxon.getId() == 0);
+ Assert.assertEquals(taxonNode.getChildNodes().get(0).getTaxon().getId(), childTaxon.getId());
+
+ Assert.assertTrue(grandChildTaxonNode.treeIndex() != null);
+ Assert.assertEquals(taxonNode.getChildNodes().get(0).getChildNodes().get(0).getId(), grandChildTaxonNode.getId());
+ Assert.assertFalse(grandChildTaxon.getId() == 0);
+ Assert.assertEquals(taxonNode.getChildNodes().get(0).getChildNodes().get(0).getTaxon().getId(), grandChildTaxon.getId());
+ }
+