3 * Copyright (C) 2012 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
10 package eu
.etaxonomy
.cdm
.api
.application
;
12 import static org
.junit
.Assert
.*;
15 import java
.util
.UUID
;
18 import org
.apache
.log4j
.Logger
;
19 import org
.junit
.Test
;
20 import org
.unitils
.dbunit
.annotation
.DataSet
;
21 import org
.unitils
.dbunit
.annotation
.ExpectedDataSet
;
22 import org
.unitils
.spring
.annotation
.SpringBeanByType
;
24 import eu
.etaxonomy
.cdm
.api
.service
.IClassificationService
;
25 import eu
.etaxonomy
.cdm
.api
.service
.IDescriptionService
;
26 import eu
.etaxonomy
.cdm
.api
.service
.INameService
;
27 import eu
.etaxonomy
.cdm
.api
.service
.IReferenceService
;
28 import eu
.etaxonomy
.cdm
.api
.service
.ITaxonService
;
29 import eu
.etaxonomy
.cdm
.api
.service
.TaxonServiceImplTest
;
30 import eu
.etaxonomy
.cdm
.datagenerator
.TaxonGenerator
;
31 import eu
.etaxonomy
.cdm
.model
.description
.TaxonDescription
;
32 import eu
.etaxonomy
.cdm
.model
.name
.BotanicalName
;
33 import eu
.etaxonomy
.cdm
.model
.name
.Rank
;
34 import eu
.etaxonomy
.cdm
.model
.name
.TaxonNameBase
;
35 import eu
.etaxonomy
.cdm
.model
.reference
.IBook
;
36 import eu
.etaxonomy
.cdm
.model
.reference
.Reference
;
37 import eu
.etaxonomy
.cdm
.model
.reference
.ReferenceFactory
;
38 import eu
.etaxonomy
.cdm
.model
.taxon
.Taxon
;
39 import eu
.etaxonomy
.cdm
.strategy
.cache
.reference
.IReferenceBaseCacheStrategy
;
40 import eu
.etaxonomy
.cdm
.test
.integration
.CdmTransactionalIntegrationTest
;
43 * test for the {@link FirstDataInserter}
45 * @author a.kohlbecker
50 public class FirstDataInserterTest
extends CdmTransactionalIntegrationTest
{
52 private final String
[] tableNames
= new String
[]{"USERACCOUNT", "USERACCOUNT_GRANTEDAUTHORITYIMPL", "GRANTEDAUTHORITYIMPL", "CDMMETADATA"};
54 @SuppressWarnings("unused")
55 private static final Logger logger
= Logger
.getLogger(TaxonServiceImplTest
.class);
58 private ITaxonService taxonService
;
61 private INameService nameService
;
64 private IReferenceService referenceService
;
67 private IClassificationService classificationService
;
70 private IDescriptionService descriptionService
;
73 @DataSet(value
="FirstDataInserterTest.testBlankDB.xml")
74 @ExpectedDataSet(value
="FirstDataInserterTest.testBlankDB-result.xml")
75 public void testBlankDB(){
77 commitAndStartNewTransaction(null);
78 // printDataSet(System.err, tableNames);
82 @DataSet(value
="FirstDataInserterTest.testBlankDB.xml")
83 public void testInsertData(){
84 commitAndStartNewTransaction(null);
85 TaxonGenerator
.getTestTaxon();
86 Taxon newTaxon
= TaxonGenerator
.getTestTaxon();
87 UUID taxonUUID
= taxonService
.save(newTaxon
);
90 TaxonDescription description
= TaxonGenerator
.getTestDescription(1);
91 newTaxon
.addDescription(description
);
92 Set
<TaxonDescription
> descriptions
= newTaxon
.getDescriptions();
93 descriptionService
.save(description
);
95 newTaxon
= (Taxon
)taxonService
.find(taxonUUID
);
96 descriptions
= newTaxon
.getDescriptions();
97 assertEquals(2, descriptions
.size());