r1013 - in trunk/tutti-service/src/test: java/fr/ifremer/tutti/service/referential resources
Author: tchemit Date: 2013-05-27 19:54:12 +0200 (Mon, 27 May 2013) New Revision: 1013 Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1013 Log: fix import referential gear + add test Added: trunk/tutti-service/src/test/resources/tutti-test-write-dbCGFS.properties Modified: trunk/tutti-service/src/test/java/fr/ifremer/tutti/service/referential/TuttiReferentialImportExportServiceTest.java Modified: trunk/tutti-service/src/test/java/fr/ifremer/tutti/service/referential/TuttiReferentialImportExportServiceTest.java =================================================================== --- trunk/tutti-service/src/test/java/fr/ifremer/tutti/service/referential/TuttiReferentialImportExportServiceTest.java 2013-05-27 16:55:44 UTC (rev 1012) +++ trunk/tutti-service/src/test/java/fr/ifremer/tutti/service/referential/TuttiReferentialImportExportServiceTest.java 2013-05-27 17:54:12 UTC (rev 1013) @@ -25,23 +25,18 @@ */ import com.google.common.base.Charsets; -import com.google.common.collect.Lists; import com.google.common.io.Files; -import fr.ifremer.tutti.persistence.RessourceClassLoader; -import fr.ifremer.tutti.persistence.entities.TuttiBeanFactory; +import fr.ifremer.tutti.TuttiTechnicalException; import fr.ifremer.tutti.persistence.entities.referential.Gear; import fr.ifremer.tutti.persistence.entities.referential.Person; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.persistence.entities.referential.Vessel; -import fr.ifremer.tutti.service.AbstractServiceTest; -import fr.ifremer.tutti.service.PersistenceService; +import fr.ifremer.tutti.service.ServiceDbResource; import fr.ifremer.tutti.service.TuttiServiceContext; -import fr.ifremer.tutti.service.config.TuttiServiceConfig; import org.junit.Assert; import org.junit.Before; +import org.junit.ClassRule; import org.junit.Test; -import org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderFactory; import java.io.File; import java.util.List; @@ -50,8 +45,14 @@ * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class TuttiReferentialImportExportServiceTest extends AbstractServiceTest { +public class TuttiReferentialImportExportServiceTest { + @ClassRule + public static final ServiceDbResource dbResource = + ServiceDbResource.writeDb("dbCGFS"); + + protected File dataDirectory; + public static final String SPECIES_FILE_CONTENT = "name\n" + "Temporary Species name 1;\n" + @@ -80,119 +81,22 @@ protected TuttiReferentialImportExportService service; - @Override - protected TuttiServiceContext createServiceContext(RessourceClassLoader loader, TuttiServiceConfig config) { - return new TuttiServiceContext(loader, config); - } - @Before public void setUp() throws Exception { - super.setUp(); - serviceContext.getConfig().setCsvSeparator(';'); - service = new TuttiReferentialImportExportService() { + dataDirectory = dbResource.getServiceConfig().getDataDirectory(); - @Override - public void setServiceContext(TuttiServiceContext context) { - this.context = context; - persistenceService = new PersistenceService() { + TuttiServiceContext serviceContext = dbResource.getServiceContext(); - @Override - public List<Species> getAllSpecies() { - return Lists.newArrayList(); - } + serviceContext.getConfig().setCsvSeparator(';'); - @Override - public List<Person> getAllPerson() { - return Lists.newArrayList(); - } - - @Override - public List<Gear> getAllScientificGear() { - return Lists.newArrayList(); - } - - @Override - public List<Gear> getAllFishingGear() { - return Lists.newArrayList(); - } - - @Override - public List<Vessel> getAllScientificVessel() { - return Lists.newArrayList(); - } - - @Override - public List<Vessel> getAllFishingVessel() { - return Lists.newArrayList(); - } - - @Override - public List<Species> importTemporarySpecies(List<Species> species) { - Binder<Species, Species> binder = BinderFactory.newBinder(Species.class); - List<Species> result = Lists.newArrayList(); - int i = 1; - for (Species source : species) { - Species target = TuttiBeanFactory.newSpecies(); - binder.copy(source, target); - target.setId(i++); - result.add(target); - } - return result; - } - - @Override - public List<Vessel> importTemporaryVessel(List<Vessel> vessels) { - Binder<Vessel, Vessel> binder = BinderFactory.newBinder(Vessel.class); - List<Vessel> result = Lists.newArrayList(); - int i = 1; - for (Vessel source : vessels) { - Vessel target = TuttiBeanFactory.newVessel(); - binder.copy(source, target); - target.setId(i++); - result.add(target); - } - return result; - } - - @Override - public List<Person> importTemporaryPerson(List<Person> persons) { - Binder<Person, Person> binder = BinderFactory.newBinder(Person.class); - List<Person> result = Lists.newArrayList(); - int i = 1; - for (Person source : persons) { - Person target = TuttiBeanFactory.newPerson(); - binder.copy(source, target); - target.setId(i++); - result.add(target); - } - return result; - } - - @Override - public List<Gear> importTemporaryGear(List<Gear> gears) { - Binder<Gear, Gear> binder = BinderFactory.newBinder(Gear.class); - List<Gear> result = Lists.newArrayList(); - int i = 1; - for (Gear source : gears) { - Gear target = TuttiBeanFactory.newGear(); - binder.copy(source, target); - target.setId(i++); - result.add(target); - } - return result; - } - }; - persistenceService.setServiceContext(context); - } - }; - service.setServiceContext(serviceContext); + service = serviceContext.getService(TuttiReferentialImportExportService.class); } @Test public void importTemporarySpecies() throws Exception { - File file = new File(datadirectory, "importSpecies.csv"); + File file = new File(dataDirectory, "importSpecies.csv"); Files.createParentDirs(file); @@ -205,14 +109,21 @@ for (int i = 1; i <= 3; i++) { Species actual = result.get(i - 1); Assert.assertNotNull(actual); - Assert.assertEquals("" + i, actual.getId()); + Assert.assertEquals("-" + i, actual.getId()); Assert.assertEquals("Temporary Species name " + i, actual.getName()); } + // try to reimport them + try { + service.importTemporarySpecies(file); + Assert.fail(); + } catch (TuttiTechnicalException e) { + Assert.assertTrue(true); + } } @Test public void importTemporaryVessel() throws Exception { - File file = new File(datadirectory, "importVessel.csv"); + File file = new File(dataDirectory, "importVessel.csv"); Files.createParentDirs(file); @@ -225,7 +136,7 @@ for (int i = 1; i <= 2; i++) { Vessel actual = result.get(i - 1); Assert.assertNotNull(actual); - Assert.assertEquals("" + i, actual.getId()); + Assert.assertEquals("#TEMP¿"+actual.getInternationalRegistrationCode(), actual.getId()); Assert.assertEquals("Temporary fishing vessel name " + i, actual.getName()); Assert.assertEquals("International registration code F" + i, actual.getInternationalRegistrationCode()); Assert.assertFalse(actual.isScientificVessel()); @@ -233,16 +144,23 @@ for (int i = 3; i <= 4; i++) { Vessel actual = result.get(i - 1); Assert.assertNotNull(actual); - Assert.assertEquals("" + i, actual.getId()); + Assert.assertEquals("#TEMP¿"+actual.getInternationalRegistrationCode(), actual.getId()); Assert.assertEquals("Temporary scientific vessel name " + i, actual.getName()); Assert.assertEquals("International registration code S" + i, actual.getInternationalRegistrationCode()); Assert.assertTrue(actual.isScientificVessel()); } + // try to reimport them + try { + service.importTemporaryVessel(file); + Assert.fail(); + } catch (TuttiTechnicalException e) { + Assert.assertTrue(true); + } } @Test public void importTemporaryPerson() throws Exception { - File file = new File(datadirectory, "importPerson.csv"); + File file = new File(dataDirectory, "importPerson.csv"); Files.createParentDirs(file); @@ -255,7 +173,7 @@ for (int i = 1; i <= 3; i++) { Person actual = result.get(i - 1); Assert.assertNotNull(actual); - Assert.assertEquals("" + i, actual.getId()); + Assert.assertEquals("-" + i, actual.getId()); Assert.assertEquals("First name " + i, actual.getFirstName()); Assert.assertEquals("Last name " + i, actual.getLastName()); } @@ -263,7 +181,7 @@ @Test public void importTemporaryGear() throws Exception { - File file = new File(datadirectory, "importGear.csv"); + File file = new File(dataDirectory, "importGear.csv"); Files.createParentDirs(file); @@ -276,7 +194,7 @@ for (int i = 1; i <= 2; i++) { Gear actual = result.get(i - 1); Assert.assertNotNull(actual); - Assert.assertEquals("" + i, actual.getId()); + Assert.assertEquals("-" + i, actual.getId()); Assert.assertEquals("Gear fishing name " + i, actual.getName()); Assert.assertEquals("Gear fishing label " + i, actual.getLabel()); Assert.assertFalse(actual.isScientificGear()); @@ -284,7 +202,7 @@ for (int i = 3; i <= 4; i++) { Gear actual = result.get(i - 1); Assert.assertNotNull(actual); - Assert.assertEquals("" + i, actual.getId()); + Assert.assertEquals("-" + i, actual.getId()); Assert.assertEquals("Gear scientific name " + i, actual.getName()); Assert.assertEquals("Gear scientific label " + i, actual.getLabel()); Assert.assertTrue(actual.isScientificGear()); @@ -294,7 +212,7 @@ @Test public void exportTemporarySpeciesExample() throws Exception { - File file = new File(datadirectory, "importSpecies.csv"); + File file = new File(dataDirectory, "exportSpecies.csv"); Assert.assertFalse(file.exists()); service.exportTemporarySpeciesExample(file); @@ -306,7 +224,7 @@ @Test public void exportTemporaryVesselExample() throws Exception { - File file = new File(datadirectory, "importVessel.csv"); + File file = new File(dataDirectory, "exportVessel.csv"); Assert.assertFalse(file.exists()); service.exportTemporaryVesselExample(file); @@ -318,8 +236,9 @@ @Test public void exportTemporaryPersonExample() throws Exception { - File file = new File(datadirectory, "importPerson.csv"); + File file = new File(dataDirectory, "exportPerson.csv"); + Assert.assertFalse(file.exists()); service.exportTemporaryPersonExample(file); Assert.assertTrue(file.exists()); @@ -330,8 +249,9 @@ @Test public void exportTemporaryGearExample() throws Exception { - File file = new File(datadirectory, "importGear.csv"); + File file = new File(dataDirectory, "exportGear.csv"); + Assert.assertFalse(file.exists()); service.exportTemporaryGearExample(file); Assert.assertTrue(file.exists()); Copied: trunk/tutti-service/src/test/resources/tutti-test-write-dbCGFS.properties (from rev 1009, trunk/tutti-service/src/test/resources/tutti-test-read-dbCGFS.properties) =================================================================== --- trunk/tutti-service/src/test/resources/tutti-test-write-dbCGFS.properties (rev 0) +++ trunk/tutti-service/src/test/resources/tutti-test-write-dbCGFS.properties 2013-05-27 17:54:12 UTC (rev 1013) @@ -0,0 +1,24 @@ +### +# #%L +# Tutti :: Service +# $Id$ +# $HeadURL$ +# %% +# Copyright (C) 2012 - 2013 Ifremer +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public +# License along with this program. If not, see +# <http://www.gnu.org/licenses/gpl-3.0.html>. +# #L% +### +tutti.persistence.jdbc.createScript=src/test/dbCGFS/allegro.script \ No newline at end of file
participants (1)
-
tchemit@users.forge.codelutin.com