Project

General

Profile

« Previous | Next » 

Revision 8051fca9

Added by Andreas Müller about 13 years ago

tests for image galleries in derived unit facade and bugfix for test in DescriptionServiceImplTest which didn't run in maven.

View differences:

cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/facade/DerivedUnitFacadeTest.java
10 10
package eu.etaxonomy.cdm.api.facade;
11 11

  
12 12
import java.lang.reflect.Field;
13
import java.net.URI;
13 14
import java.text.ParseException;
14 15
import java.util.HashSet;
15 16
import java.util.List;
17
import java.util.UUID;
16 18

  
17 19
import org.apache.log4j.Logger;
18 20
import org.junit.Assert;
......
20 22
import org.junit.BeforeClass;
21 23
import org.junit.Ignore;
22 24
import org.junit.Test;
25
import org.unitils.dbunit.annotation.DataSet;
26
import org.unitils.dbunit.annotation.ExpectedDataSet;
27
import org.unitils.spring.annotation.SpringBeanByType;
23 28

  
24 29
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade.DerivedUnitType;
30
import eu.etaxonomy.cdm.api.service.IOccurrenceService;
31
import eu.etaxonomy.cdm.api.service.ITermService;
25 32
import eu.etaxonomy.cdm.model.agent.AgentBase;
26 33
import eu.etaxonomy.cdm.model.agent.Team;
27
import eu.etaxonomy.cdm.model.common.DefaultTermInitializer;
28 34
import eu.etaxonomy.cdm.model.common.IdentifiableSource;
29 35
import eu.etaxonomy.cdm.model.common.Language;
30 36
import eu.etaxonomy.cdm.model.common.LanguageString;
31 37
import eu.etaxonomy.cdm.model.common.TimePeriod;
38
import eu.etaxonomy.cdm.model.description.Feature;
32 39
import eu.etaxonomy.cdm.model.description.Sex;
40
import eu.etaxonomy.cdm.model.description.SpecimenDescription;
33 41
import eu.etaxonomy.cdm.model.description.Stage;
42
import eu.etaxonomy.cdm.model.description.TextData;
34 43
import eu.etaxonomy.cdm.model.location.NamedArea;
35 44
import eu.etaxonomy.cdm.model.location.Point;
36 45
import eu.etaxonomy.cdm.model.location.ReferenceSystem;
......
49 58
import eu.etaxonomy.cdm.model.occurrence.Specimen;
50 59
import eu.etaxonomy.cdm.model.reference.Reference;
51 60
import eu.etaxonomy.cdm.model.reference.ReferenceFactory;
61
import eu.etaxonomy.cdm.test.integration.CdmTransactionalIntegrationTest;
52 62

  
53 63
/**
54 64
 * @author a.mueller
55 65
 * @date 17.05.2010
56 66
 *
57 67
 */
58
public class DerivedUnitFacadeTest {
59
	@SuppressWarnings("unused")
68
public class DerivedUnitFacadeTest extends CdmTransactionalIntegrationTest {
60 69
	private static final Logger logger = Logger.getLogger(DerivedUnitFacadeTest.class);
70
	
71
	@SpringBeanByType
72
	private IOccurrenceService service;
73

  
74
	@SpringBeanByType
75
	private ITermService termService;
61 76

  
77
	
78
	
62 79
	Specimen specimen;
63 80
	DerivationEvent derivationEvent;
64 81
	FieldObservation fieldObservation;
......
109 126
	 */
110 127
	@BeforeClass
111 128
	public static void setUpBeforeClass() throws Exception {
112
		new DefaultTermInitializer().initialize();
129
		//new DefaultTermInitializer().initialize();
113 130
	}
114 131

  
115 132
	/**
......
178 195

  
179 196
//****************************** TESTS *****************************************/
180 197
	
198
	@Test
199
	@DataSet("DerivedUnitFacadeTest.testSetFieldObjectImageGallery.xml")
200
	@ExpectedDataSet
201
	public void testSetFieldObjectImageGallery()  {
202
		UUID imageFeatureUuid = Feature.IMAGE().getUuid();
203
		Feature imageFeature = (Feature)termService.find(imageFeatureUuid);
204
		
205
		DerivedUnitFacade facade = DerivedUnitFacade.NewInstance(DerivedUnitType.Specimen);
206
		facade.setFieldNumber("12345");
207
		Media media = Media.NewInstance(URI.create("www.abc.de"), 200, null, "jpeg");
208
		
209
		try {
210
			SpecimenDescription imageGallery = SpecimenDescription.NewInstance();
211
			imageGallery.addDescribedSpecimenOrObservation(facade.innerFieldObservation());
212
			imageGallery.setImageGallery(true);
213
			TextData textData = TextData.NewInstance();
214
			textData.setFeature(imageFeature);
215
			imageGallery.addElement(textData);
216
			textData.addMedia(media);
217
			facade.setFieldObjectImageGallery(imageGallery);
218
			
219
		} catch (DerivedUnitFacadeNotSupportedException e1) {
220
			e1.printStackTrace();
221
			Assert.fail(e1.getLocalizedMessage());
222
		}
223
		this.service.save(facade.innerDerivedUnit());
224
				
225
//		setComplete(); endTransaction();
226
//		try {if (true){printDataSet(System.out, new String[]{"HIBERNATE_SEQUENCES","SPECIMENOROBSERVATIONBASE","SPECIMENOROBSERVATIONBASE_DERIVATIONEVENT" ,"DERIVATIONEVENT", "DESCRIPTIONBASE","DESCRIPTIONELEMENTBASE","DESCRIPTIONELEMENTBASE_MEDIA","DESCRIPTIONBASE_SPECIMENOROBSERVATIONBASE", "MEDIA", "MEDIAREPRESENTATION","MEDIAREPRESENTATIONPART"});}
227
//		} catch(Exception e) { logger.warn(e);} 
228

  
229
		
230
	}	
231
	
232
	@Test
233
	@Ignore //TODO generally works but has id problems when running together with above test ()setFieldObjectImageGallery. Therefore set to ignore.
234
	@DataSet("DerivedUnitFacadeTest.testSetDerivedUnitImageGallery.xml")
235
	@ExpectedDataSet
236
	public void testSetDerivedUnitImageGallery()  {
237
//		UUID specimenUUID = UUID.fromString("25383fc8-789b-4eff-92d3-a770d0622351");
238
//		Specimen specimen = (Specimen)service.find(specimenUUID);
239
		DerivedUnitFacade facade = DerivedUnitFacade.NewInstance(DerivedUnitType.Specimen);
240
		Media media = Media.NewInstance(URI.create("www.derivedUnitImage.de"), 200, null, "png");
241
		
242
		try {
243
			SpecimenDescription imageGallery = SpecimenDescription.NewInstance();
244
			imageGallery.addDescribedSpecimenOrObservation(facade.innerDerivedUnit());
245
			imageGallery.setImageGallery(true);
246
			TextData textData = TextData.NewInstance();
247
			imageGallery.addElement(textData);
248
			textData.addMedia(media);
249
			facade.setDerivedUnitImageGallery(imageGallery);
250
			
251
		} catch (DerivedUnitFacadeNotSupportedException e1) {
252
			e1.printStackTrace();
253
			Assert.fail(e1.getLocalizedMessage());
254
		}
255
		this.service.save(facade.innerDerivedUnit());
256
				
257
//		setComplete(); endTransaction();
258
//		try {if (true){printDataSet(System.out, new String[]{"HIBERNATE_SEQUENCES","SPECIMENOROBSERVATIONBASE","SPECIMENOROBSERVATIONBASE_DERIVATIONEVENT" ,"DERIVATIONEVENT", "DESCRIPTIONBASE","DESCRIPTIONELEMENTBASE","DESCRIPTIONELEMENTBASE_MEDIA","DESCRIPTIONBASE_SPECIMENOROBSERVATIONBASE", "MEDIA", "MEDIAREPRESENTATION","MEDIAREPRESENTATIONPART"});}
259
//		} catch(Exception e) { logger.warn(e);} 
260

  
261
		
262
	}	
263
	
264
	@Test
265
	@DataSet
266
	public void testGetDerivedUnitImageGalleryBooleanPersisted(){
267
		UUID specimenUUID = UUID.fromString("25383fc8-789b-4eff-92d3-a770d0622351");
268
		Specimen specimen = (Specimen)service.find(specimenUUID);
269
		Assert.assertNotNull("Specimen should exist (persisted)", specimen);
270
		try {
271
			DerivedUnitFacade facade = DerivedUnitFacade.NewInstance(specimen);
272
			SpecimenDescription imageGallery = facade.getFieldObjectImageGallery(true);
273
			Assert.assertNotNull("Image gallery should exist", imageGallery);
274
			Assert.assertEquals("There should be one TextData in image gallery", 1, imageGallery.getElements().size());
275
			List<Media> media = imageGallery.getElements().iterator().next().getMedia();
276
			Assert.assertEquals("There should be 1 media", 1, media.size());
277
		} catch (DerivedUnitFacadeNotSupportedException e) {
278
			e.printStackTrace();
279
			Assert.fail();
280
		}
281
	}
282

  
283
	@Test
284
	public void testGetDerivedUnitImageGalleryBoolean(){
285
		Specimen specimen = Specimen.NewInstance();
286
		try {
287
			DerivedUnitFacade facade = DerivedUnitFacade.NewInstance(specimen);
288
			SpecimenDescription imageGallery = facade.getDerivedUnitImageGallery(true);
289
			Assert.assertNotNull("Image Gallery should have been created", imageGallery);
290
		} catch (DerivedUnitFacadeNotSupportedException e) {
291
			e.printStackTrace();
292
			Assert.fail();
293
		}
294
		
295
		
296
	}
297

  
298
	
181 299
	/**
182 300
	 * Test method for {@link eu.etaxonomy.cdm.api.facade.DerivedUnitFacade#NewInstance()}.
183 301
	 */
......
230 348
	
231 349
	@Test
232 350
	public void testGetSetCountry(){
233
	
351
		logger.warn("Not yet implemented");
234 352
	}
235 353
	
236 354
	

Also available in: Unified diff