Project

General

Profile

Download (20.7 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2007 EDIT
3
* European Distributed Institute of Taxonomy 
4
* http://www.e-taxonomy.eu
5
* 
6
* The contents of this file are subject to the Mozilla Public License Version 1.1
7
* See LICENSE.TXT at the top of this package for the full license terms.
8
*/
9
 
10
package eu.etaxonomy.cdm.model.name;
11

    
12
import static org.junit.Assert.assertEquals;
13
import static org.junit.Assert.assertFalse;
14
import static org.junit.Assert.assertTrue;
15
import static org.junit.Assert.fail;
16

    
17
import java.util.UUID;
18

    
19
import org.apache.log4j.Logger;
20
import org.junit.BeforeClass;
21
import org.junit.Test;
22

    
23
import eu.etaxonomy.cdm.model.term.DefaultTermInitializer;
24
import eu.etaxonomy.cdm.strategy.exceptions.UnknownCdmTypeException;
25
import eu.etaxonomy.cdm.test.unit.EntityTestBase;
26

    
27
public class RankTest extends EntityTestBase {
28
	static Logger logger = Logger.getLogger(RankTest.class);
29

    
30
	private static final UUID uuidEmpire = UUID.fromString("ac470211-1586-4b24-95ca-1038050b618d");
31
	private static final UUID uuidDomain = UUID.fromString("ffca6ec8-8b88-417b-a6a0-f7c992aac19b");
32
	private static final UUID uuidSuperkingdom = UUID.fromString("64223610-7625-4cfd-83ad-b797bf7f0edd");
33
	private static final UUID uuidKingdom = UUID.fromString("fbe7109d-66b3-498c-a697-c6c49c686162");
34
	private static final UUID uuidSubkingdom = UUID.fromString("a71bd9d8-f3ab-4083-afb5-d89315d71655");
35
	private static final UUID uuidInfrakingdom = UUID.fromString("1e37930c-86cf-44f6-90fd-7822928df260");
36
	private static final UUID uuidSuperphylum = UUID.fromString("0d0cecb1-e254-4607-b210-6801e7ecbb04");
37
	private static final UUID uuidPhylum = UUID.fromString("773430d2-76b4-438c-b817-97a543a33287");
38
	private static final UUID uuidSubphylum = UUID.fromString("23a9b6ff-9408-49c9-bd9e-7a2ca5ab4725");
39
	private static final UUID uuidInfraphylum = UUID.fromString("1701de3a-7693-42a5-a2d3-42697f944190");
40
	private static final UUID uuidSuperdivision = UUID.fromString("a735a48f-4fc8-49a7-ae0c-6a984f658131");
41
	private static final UUID uuidDivision = UUID.fromString("7e56f5cc-123a-4fd1-8cbb-6fd80358b581");
42
	private static final UUID uuidSubdivision = UUID.fromString("931c840f-7a6b-4d76-ad38-bfdd77d7b2e8");
43
	private static final UUID uuidInfradivision = UUID.fromString("c0ede273-be52-4dee-b411-66ee08d30c94");
44
	private static final UUID uuidSuperclass = UUID.fromString("e65b4e1a-21ec-428d-9b9f-e87721ab967c");
45
	private static final UUID uuidClass = UUID.fromString("f23d14c4-1d34-4ee6-8b4e-eee2eb9a3daf");
46
	private static final UUID uuidSubclass = UUID.fromString("8cb26733-e2f5-46cb-ab5c-f99254f877aa");
47
	private static final UUID uuidInfraclass = UUID.fromString("ad23cfda-879a-4021-8629-c54d27caf717");
48
	private static final UUID uuidSuperorder = UUID.fromString("c8c67a22-301a-4219-b882-4a49121232ff");
49
	private static final UUID uuidOrder = UUID.fromString("b0785a65-c1c1-4eb4-88c7-dbd3df5aaad1");
50
	private static final UUID uuidSuborder = UUID.fromString("768ad378-fa85-42ab-b668-763225832f57");
51
	private static final UUID uuidInfraorder = UUID.fromString("84099182-a6f5-47d7-8586-33c9e9955a10");
52
	private static final UUID uuidSectionZoology = UUID.fromString("691d371e-10d7-43f0-93db-3d7fa1a62c54");
53
	private static final UUID uuidSubsectionZoology = UUID.fromString("0ed32d28-adc4-4303-a9ca-68e2acd67e33");
54
	private static final UUID uuidSuperfamily = UUID.fromString("2cfa510a-dcea-4a03-b66a-b1528f9b0796");
55
	private static final UUID uuidFamily = UUID.fromString("af5f2481-3192-403f-ae65-7c957a0f02b6");
56
	private static final UUID uuidSubfamily = UUID.fromString("862526ee-7592-4760-a23a-4ff3641541c5");
57
	private static final UUID uuidInfrafamily = UUID.fromString("c3f2e3bb-6eef-4a26-9fb7-b14f4c8c5e4f");
58
	private static final UUID uuidSupertribe = UUID.fromString("11e94828-8c61-499b-87d6-1de35ce2c51c");
59
	private static final UUID uuidTribe = UUID.fromString("4aa6890b-0363-4899-8d7c-ee0cb78e6166");
60
	private static final UUID uuidSubtribe = UUID.fromString("ae41ecc5-5165-4126-9d24-79939ae5d822");
61
	private static final UUID uuidInfratribe = UUID.fromString("1ec02e8f-f2b7-4c65-af9f-b436b34c79a3");
62
	private static final UUID uuidSupragenericTaxon = UUID.fromString("1fdc0b93-c354-441a-8406-091e0303ff5c");
63
	private static final UUID uuidGenus = UUID.fromString("1b11c34c-48a8-4efa-98d5-84f7f66ef43a");
64
	private static final UUID uuidSubgenus = UUID.fromString("78786e16-2a70-48af-a608-494023b91904");
65
	private static final UUID uuidInfragenus = UUID.fromString("a9972969-82cd-4d54-b693-a096422f13fa");
66
	private static final UUID uuidSectionBotany = UUID.fromString("3edff68f-8527-49b5-bf91-7e4398bb975c");
67
	private static final UUID uuidSubsectionBotany = UUID.fromString("d20f5b61-d463-4448-8f8a-c1ff1f262f59");
68
	private static final UUID uuidSeries = UUID.fromString("d7381ecf-48f8-429b-9c54-f461656978cd");
69
	private static final UUID uuidSubseries = UUID.fromString("80c9a263-f4db-4a13-b6c2-b7fec1aa1200");
70
	private static final UUID uuidSpeciesAggregate = UUID.fromString("1ecae058-4217-4f75-9c27-6d8ba099ac7a");
71
	private static final UUID uuidInfragenericTaxon = UUID.fromString("41bcc6ac-37d3-4fd4-bb80-3cc5b04298b9");
72
	private static final UUID uuidSpecies = UUID.fromString("b301f787-f319-4ccc-a10f-b4ed3b99a86d");
73
	private static final UUID uuidSubspecificAggregate = UUID.fromString("72c248b9-027d-4402-b375-dd4f0850c9ad");
74
	private static final UUID uuidSubspecies = UUID.fromString("462a7819-8b00-4190-8313-88b5be81fad5");
75
	private static final UUID uuidInfraspecies = UUID.fromString("f28ebc9e-bd50-4194-9af1-42f5cb971a2c");
76
	private static final UUID uuidVariety = UUID.fromString("d5feb6a5-af5c-45ef-9878-bb4f36aaf490");
77
	private static final UUID uuidBioVariety = UUID.fromString("a3a364cb-1a92-43fc-a717-3c44980a0991");
78
	private static final UUID uuidPathoVariety = UUID.fromString("2f4f4303-a099-47e3-9048-d749d735423b");
79
	private static final UUID uuidSubvariety = UUID.fromString("9a83862a-7aee-480c-a98d-4bceaf8712ca");
80
	private static final UUID uuidSubsubvariety = UUID.fromString("bff22f84-553a-4429-a4e7-c4b3796c3a18");
81
	
82
	private static final UUID uuidProles = UUID.fromString("8810d1ba-6a34-4ae3-a355-919ccd1cd1a5");
83
	private static final UUID uuidRace = UUID.fromString("196dee39-cfd8-4460-8bf0-88b83da27f62");
84
	private static final UUID uuidSublusus = UUID.fromString("1fafa596-a8e7-4e62-a378-3cc8cb3627ca");
85
	
86
	private static final UUID uuidConvar = UUID.fromString("2cc740c9-cebb-43c8-9b06-1bef79e6a56a");
87
	private static final UUID uuidForm = UUID.fromString("0461281e-458a-47b9-8d41-19a3d39356d5");
88
	private static final UUID uuidSpecialForm = UUID.fromString("bed20aee-2f5a-4635-9c02-eff06246d067");
89
	private static final UUID uuidSubform = UUID.fromString("47cfc5b0-0fb7-4ceb-b61d-e1dd8de8b569");
90
	private static final UUID uuidSubsubform = UUID.fromString("1c8ac389-4349-4ae0-87be-7239f6635068");
91
	private static final UUID uuidInfraspecificTaxon = UUID.fromString("eb75c27d-e154-4570-9d96-227b2df60474");
92
	private static final UUID uuidCandidate = UUID.fromString("ead9a1f5-dfd4-4de2-9121-70a47accb10b");
93
	private static final UUID uuidDenominationClass = UUID.fromString("49bdf74a-2170-40ed-8be2-887a0db517bf");
94
	private static final UUID uuidGrex = UUID.fromString("08dcb4ff-ac58-48a3-93af-efb3d836ac84");
95
	private static final UUID uuidGraftChimaera = UUID.fromString("6b4063bc-f934-4796-9bf3-0ef3aea5c1cb");
96
	private static final UUID uuidCultivarGroup = UUID.fromString("d763e7d3-e7de-4bb1-9d75-225ca6948659");
97
	private static final UUID uuidCultivar = UUID.fromString("5e98415b-dc6e-440b-95d6-ea33dbb39ad0");
98

    
99
	@BeforeClass
100
	public static void setUp() {
101
		DefaultTermInitializer vocabularyStore = new DefaultTermInitializer();
102
		vocabularyStore.initialize();
103
	}
104

    
105
	@Test
106
	public void testRankStringString() {
107
		Rank rank = new Rank(RankClass.Species, "term", "label", null);
108
		assertEquals("label", rank.getLabel());
109
	}
110
	
111
	@Test
112
	public void testEMPIRE() {
113
		assertEquals(uuidEmpire,  Rank.EMPIRE().getUuid());
114
		assertTrue(Rank.EMPIRE().isSupraGeneric());
115
	}
116

    
117
	@Test
118
	public void testDOMAIN() {
119
		assertEquals(uuidDomain,  Rank.DOMAIN().getUuid());
120
	}
121

    
122
	@Test
123
	public void testSUPERKINGDOM() {
124
		assertEquals(uuidSuperkingdom,  Rank.SUPERKINGDOM().getUuid());
125
	}
126

    
127
	@Test
128
	public void testKINGDOM() {
129
		assertEquals(uuidKingdom,  Rank.KINGDOM().getUuid());
130
	}
131

    
132
	@Test
133
	public void testSUBKINGDOM() {
134
		assertEquals(uuidSubkingdom, Rank.SUBKINGDOM().getUuid());
135
	}
136

    
137
	@Test
138
	public void testINFRAKINGDOM() {
139
		assertEquals(uuidInfrakingdom, Rank.INFRAKINGDOM().getUuid());
140
	}
141

    
142
	@Test
143
	public void testSUPERPHYLUM() {
144
		assertEquals(uuidSuperphylum, Rank.SUPERPHYLUM().getUuid());
145
	}
146

    
147
	@Test
148
	public void testPHYLUM() {
149
		assertEquals(uuidPhylum, Rank.PHYLUM().getUuid());
150
	}
151

    
152
	@Test
153
	public void testSUBPHYLUM() {
154
		assertEquals(uuidSubphylum, Rank.SUBPHYLUM().getUuid());
155
	}
156

    
157
	@Test
158
	public void testINFRAPHYLUM() {
159
		assertEquals(uuidInfraphylum, Rank.INFRAPHYLUM().getUuid());
160
	}
161

    
162
	@Test
163
	public void testSUPERDIVISION() {
164
		assertEquals(uuidSuperdivision, Rank.SUPERDIVISION().getUuid());
165
	}
166

    
167
	@Test
168
	public void testDIVISION() {
169
		assertEquals(uuidDivision, Rank.DIVISION().getUuid());
170
	}
171

    
172
	@Test
173
	public void testSUBDIVISION() {
174
		assertEquals(uuidSubdivision, Rank.SUBDIVISION().getUuid());
175
	}
176

    
177
	@Test
178
	public void testINFRADIVISION() {
179
		assertEquals(uuidInfradivision, Rank.INFRADIVISION().getUuid());
180
	}
181

    
182
	@Test
183
	public void testSUPERCLASS() {
184
		assertEquals(uuidSuperclass, Rank.SUPERCLASS().getUuid());
185
	}
186

    
187
	@Test
188
	public void testCLASS() {
189
		assertEquals(uuidClass, Rank.CLASS().getUuid());
190
	}
191

    
192
	@Test
193
	public void testSUBCLASS() {
194
		assertEquals(uuidSubclass, Rank.SUBCLASS().getUuid());
195
	}
196

    
197
	@Test
198
	public void testINFRACLASS() {
199
		assertEquals(uuidInfraclass, Rank.INFRACLASS().getUuid());
200
	}
201

    
202
	@Test
203
	public void testSUPERORDER() {
204
		assertEquals(uuidSuperorder, Rank.SUPERORDER().getUuid());
205
	}
206

    
207
	@Test
208
	public void testORDER() {
209
		assertEquals(uuidOrder, Rank.ORDER().getUuid());
210
	}
211

    
212
	@Test
213
	public void testSUBORDER() {
214
		assertEquals(uuidSuborder, Rank.SUBORDER().getUuid());
215
	}
216

    
217
	@Test
218
	public void testINFRAORDER() {
219
		assertEquals(uuidInfraorder, Rank.INFRAORDER().getUuid());
220
	}
221

    
222
	@Test
223
	public void testSUPERFAMILY() {
224
		assertEquals(uuidSuperfamily, Rank.SUPERFAMILY().getUuid());
225
	}
226

    
227
	@Test
228
	public void testFAMILY() {
229
		assertEquals(uuidFamily,  Rank.FAMILY().getUuid());
230
	}
231

    
232
	@Test
233
	public void testSUBFAMILY() {
234
		assertEquals(uuidSubfamily, Rank.SUBFAMILY().getUuid());
235
	}
236

    
237
	@Test
238
	public void testINFRAFAMILY() {
239
		assertEquals(uuidInfrafamily, Rank.INFRAFAMILY().getUuid());
240
	}
241

    
242
	@Test
243
	public void testSUPERTRIBE() {
244
		assertEquals(uuidSupertribe, Rank.SUPERTRIBE().getUuid());
245
	}
246

    
247
	@Test
248
	public void testTRIBE() {
249
		assertEquals(uuidTribe,  Rank.TRIBE().getUuid());
250
	}
251

    
252
	@Test
253
	public void testSUBTRIBE() {
254
		assertEquals(uuidSubtribe, Rank.SUBTRIBE().getUuid());
255
	}
256

    
257
	@Test
258
	public void testINFRATRIBE() {
259
		assertEquals(uuidInfratribe, Rank.INFRATRIBE().getUuid());
260
	}
261

    
262
	@Test
263
	public void testSUPRAGENERICTAXON() {
264
		assertEquals(uuidSupragenericTaxon, Rank.SUPRAGENERICTAXON().getUuid());
265
	}
266

    
267
	@Test
268
	public void testGENUS() {
269
		assertEquals(uuidGenus,  Rank.GENUS().getUuid());	}
270

    
271
	@Test
272
	public void testSUBGENUS() {
273
		assertEquals(uuidSubgenus, Rank.SUBGENUS().getUuid());
274
	}
275

    
276
	@Test
277
	public void testINFRAGENUS() {
278
		assertEquals(uuidInfragenus, Rank.INFRAGENUS().getUuid());
279
	}
280

    
281
	@Test
282
	public void testSECTION_BOTANY() {
283
		assertEquals(uuidSectionBotany, Rank.SECTION_BOTANY().getUuid());
284
	}
285

    
286
	@Test
287
	public void testSUBSECTION() {
288
		assertEquals(uuidSubsectionBotany, Rank.SUBSECTION_BOTANY().getUuid());
289
	}
290

    
291
	@Test
292
	public void testSECTION_ZOOLOGY() {
293
		assertEquals(uuidSectionZoology, Rank.SECTION_ZOOLOGY().getUuid());
294
	}
295

    
296
	@Test
297
	public void testSUBSECTION_ZOOLOGY() {
298
		assertEquals(uuidSubsectionZoology, Rank.SUBSECTION_ZOOLOGY().getUuid());
299
	}
300
	
301
	@Test
302
	public void testSERIES() {
303
		assertEquals(uuidSeries, Rank.SERIES().getUuid());
304
	}
305

    
306
	@Test
307
	public void testSUBSERIES() {
308
		assertEquals(uuidSubseries, Rank.SUBSERIES().getUuid());
309
	}
310

    
311
	@Test
312
	public void testSPECIESAGGREGATE() {
313
		assertEquals(uuidSpeciesAggregate,  Rank.SPECIESAGGREGATE().getUuid());
314
	}
315

    
316
	@Test
317
	public void testINFRAGENERICTAXON() {
318
		assertEquals(uuidInfragenericTaxon,  Rank.INFRAGENERICTAXON().getUuid());	
319
	}
320

    
321
	@Test
322
	public void testSPECIES() {
323
		assertEquals(uuidSpecies,  Rank.SPECIES().getUuid());	
324
	}
325

    
326
	@Test
327
	public void testSUBSPECIFICAGGREGATE() {
328
		assertEquals(uuidSubspecificAggregate, Rank.SUBSPECIFICAGGREGATE().getUuid());	
329
	}
330

    
331
	@Test
332
	public void testSUBSPECIES() {
333
		assertEquals(uuidSubspecies,  Rank.SUBSPECIES().getUuid());	
334
	}
335

    
336
	@Test
337
	public void testINFRASPECIES() {
338
		assertEquals(uuidInfraspecies,  Rank.INFRASPECIES().getUuid());	
339
	}
340

    
341
	@Test
342
	public void testVARIETY() {
343
		assertEquals(uuidVariety,  Rank.VARIETY().getUuid());	
344
	}
345

    
346
	@Test
347
	public void testBIOVARIETY() {
348
		assertEquals(uuidBioVariety,  Rank.BIOVARIETY().getUuid());
349
	}
350

    
351
	@Test
352
	public void testPATHOVARIETY() {
353
		assertEquals(uuidPathoVariety,  Rank.PATHOVARIETY().getUuid());	
354
	}
355

    
356
	@Test
357
	public void testSUBVARIETY() {
358
		assertEquals(uuidSubvariety, Rank.SUBVARIETY().getUuid());	
359
	}
360

    
361
	@Test
362
	public void testSUBSUBVARIETY() {
363
		assertEquals(uuidSubsubvariety,  Rank.SUBSUBVARIETY().getUuid());	
364
	}
365

    
366
	@Test
367
	public void testPROLES() {
368
		assertEquals(uuidProles,  Rank.PROLES().getUuid());	
369
	}
370
	
371
	@Test
372
	public void testRACE() {
373
		assertEquals(uuidRace,  Rank.RACE().getUuid());	
374
	}
375
	
376
	@Test
377
	public void testSUBLUSUS() {
378
		assertEquals(uuidSublusus,  Rank.SUBLUSUS().getUuid());	
379
	}
380
	
381
	@Test
382
	public void testCONVAR() {
383
		assertEquals(uuidConvar,  Rank.CONVAR().getUuid());	
384
	}
385

    
386
	@Test
387
	public void testFORM() {
388
		assertEquals(uuidForm,  Rank.FORM().getUuid());	
389
	}
390

    
391
	@Test
392
	public void testSPECIALFORM() {
393
		assertEquals(uuidSpecialForm,  Rank.SPECIALFORM().getUuid());	
394
	}
395

    
396
	@Test
397
	public void testSUBFORM() {
398
		assertEquals(uuidSubform,  Rank.SUBFORM().getUuid());	
399
	}
400

    
401
	@Test
402
	public void testSUBSUBFORM() {
403
		assertEquals(uuidSubsubform, Rank.SUBSUBFORM().getUuid());	
404
	}
405

    
406
	@Test
407
	public void testINFRASPECIFICTAXON() {
408
		assertEquals(uuidInfraspecificTaxon, Rank.INFRASPECIFICTAXON().getUuid());	
409
	}
410

    
411
	@Test
412
	public void testCANDIDATE() {
413
		assertEquals(uuidCandidate,  Rank.CANDIDATE().getUuid());	
414
	}
415

    
416
	@Test
417
	public void testDENOMINATIONCLASS() {
418
		assertEquals(uuidDenominationClass, Rank.DENOMINATIONCLASS().getUuid());
419
	}
420

    
421
	@Test
422
	public void testGREX() {
423
		assertEquals(uuidGrex,  Rank.GREX().getUuid());
424
	}
425

    
426
	@Test
427
	public void testGRAFTCHIMAERA() {
428
		assertEquals(uuidGraftChimaera, Rank.GRAFTCHIMAERA().getUuid());
429
	}
430

    
431
	@Test
432
	public void testCULTIVARGROUP() {
433
		assertEquals(uuidCultivarGroup,  Rank.CULTIVARGROUP().getUuid());	}
434

    
435
	@Test
436
	public void testCULTIVAR() {
437
		assertEquals(uuidCultivar, Rank.CULTIVAR().getUuid());	}
438

    
439
	
440
	@Test
441
	public void testIsSupraGeneric() {
442
		assertTrue(Rank.KINGDOM().isSupraGeneric());
443
		assertTrue(Rank.FAMILY().isSupraGeneric());
444
		assertTrue(Rank.ORDER().isSupraGeneric());
445
		assertTrue(Rank.TRIBE().isSupraGeneric());
446
		assertTrue(Rank.SUPRAGENERICTAXON().isSupraGeneric());
447
		assertFalse(Rank.GENUS().isSupraGeneric());
448
		assertFalse(Rank.SPECIES().isSupraGeneric());
449
		assertFalse(Rank.CULTIVAR().isSupraGeneric());
450
	}
451

    
452
	@Test
453
	public void testIsGenus() {
454
		assertFalse(Rank.KINGDOM().isGenus());
455
		assertFalse(Rank.FAMILY().isGenus());
456
		assertFalse(Rank.ORDER().isGenus());
457
		assertFalse(Rank.TRIBE().isGenus());
458
		assertFalse(Rank.SUPRAGENERICTAXON().isGenus());
459
		assertTrue(Rank.GENUS().isGenus());
460
		assertFalse(Rank.SPECIES().isGenus());
461
		assertFalse(Rank.CULTIVAR().isGenus());
462
	}
463

    
464
	@Test
465
	public void testIsInfraGeneric() {
466
		assertFalse(Rank.KINGDOM().isInfraGeneric());
467
		assertFalse(Rank.FAMILY().isInfraGeneric());
468
		assertFalse(Rank.ORDER().isInfraGeneric());
469
		assertFalse(Rank.TRIBE().isInfraGeneric());
470
		assertFalse(Rank.SUPRAGENERICTAXON().isInfraGeneric());
471
		assertFalse(Rank.GENUS().isInfraGeneric());
472
		assertTrue(Rank.SUBGENUS().isInfraGeneric());
473
		assertTrue(Rank.INFRAGENUS().isInfraGeneric());
474
		assertTrue(Rank.INFRAGENERICTAXON().isInfraGeneric());
475
		assertTrue(Rank.SPECIESAGGREGATE().isInfraGeneric());
476
		assertFalse(Rank.SPECIES().isInfraGeneric());
477
		assertFalse(Rank.SUBSPECIES().isInfraGeneric());
478
		assertFalse(Rank.CULTIVAR().isInfraGeneric());
479
	}
480

    
481
	@Test
482
	public void testIsSpecies() {
483
		assertFalse(Rank.KINGDOM().isSpecies());
484
		assertFalse(Rank.FAMILY().isSpecies());
485
		assertFalse(Rank.ORDER().isSpecies());
486
		assertFalse(Rank.TRIBE().isSpecies());
487
		assertFalse(Rank.SUPRAGENERICTAXON().isSpecies());
488
		assertFalse(Rank.GENUS().isSpecies());
489
		assertFalse(Rank.SUBGENUS().isSpecies());
490
		assertFalse(Rank.INFRAGENUS().isSpecies());
491
		assertFalse(Rank.INFRAGENERICTAXON().isSpecies());
492
		assertFalse(Rank.SPECIESAGGREGATE().isSpecies());
493
		assertTrue(Rank.SPECIES().isSpecies());
494
		assertFalse(Rank.SUBSPECIES().isSpecies());
495
		assertFalse(Rank.CULTIVAR().isSpecies());
496
	}
497

    
498
	@Test
499
	public void testIsInfraSpecific() {
500
		assertFalse(Rank.KINGDOM().isInfraSpecific());
501
		assertFalse(Rank.FAMILY().isInfraSpecific());
502
		assertFalse(Rank.ORDER().isInfraSpecific());
503
		assertFalse(Rank.TRIBE().isInfraSpecific());
504
		assertFalse(Rank.SUPRAGENERICTAXON().isInfraSpecific());
505
		assertFalse(Rank.GENUS().isInfraSpecific());
506
		assertFalse(Rank.SUBGENUS().isInfraSpecific());
507
		assertFalse(Rank.INFRAGENUS().isInfraSpecific());
508
		assertFalse(Rank.INFRAGENERICTAXON().isInfraSpecific());
509
		assertFalse(Rank.SPECIESAGGREGATE().isInfraSpecific());
510
		assertFalse(Rank.SPECIES().isInfraSpecific());
511
		assertTrue(Rank.SUBSPECIFICAGGREGATE().isInfraSpecific());
512
		assertTrue(Rank.SUBSPECIES().isInfraSpecific());
513
		assertTrue(Rank.SUBSPECIES().isInfraSpecific());
514
		assertTrue(Rank.SUBSPECIES().isInfraSpecific());
515
		assertTrue(Rank.SUBSPECIES().isInfraSpecific());
516
		assertTrue(Rank.CULTIVAR().isInfraSpecific());
517
	}
518

    
519
	@Test
520
	public void testGetRankByNameOrAbbreviation() {
521
		NomenclaturalCode bot = NomenclaturalCode.ICNAFP;
522
		NomenclaturalCode zoo = NomenclaturalCode.ICZN;
523
		try {
524
			assertEquals(Rank.VARIETY(), Rank.getRankByIdInVoc("var."));
525
			assertEquals(Rank.GENUS(), Rank.getRankByName("genus"));
526
			
527
			assertEquals(Rank.SECTION_BOTANY(), Rank.getRankByIdInVoc("sect."));
528
			assertEquals(Rank.SECTION_BOTANY(), Rank.getRankByIdInVoc("sect.", false));
529
			assertEquals(Rank.SECTION_BOTANY(), Rank.getRankByIdInVoc("sect.", bot));
530
			assertEquals(Rank.SECTION_ZOOLOGY(), Rank.getRankByIdInVoc("sect.", zoo));
531
			assertEquals(Rank.SECTION_BOTANY(), Rank.getRankByIdInVoc("sect.", bot, false));
532
			assertEquals(Rank.SECTION_ZOOLOGY(), Rank.getRankByIdInVoc("sect.", zoo, false));
533
			
534
			assertEquals(Rank.SECTION_BOTANY(), Rank.getRankByName("Sectio"));
535
			assertEquals(Rank.SECTION_BOTANY(), Rank.getRankByName("Sectio", false));
536
			assertEquals(Rank.SECTION_BOTANY(), Rank.getRankByName("Sectio", bot));
537
			assertEquals(Rank.SECTION_ZOOLOGY(), Rank.getRankByName("Sectio", zoo));
538
			assertEquals(Rank.SECTION_BOTANY(), Rank.getRankByName("Sectio", bot, false));
539
			assertEquals(Rank.SECTION_ZOOLOGY(), Rank.getRankByName("Sectio", zoo, false));
540
			
541
			assertEquals(Rank.SUBSECTION_BOTANY(), Rank.getRankByNameOrIdInVoc("Subsectio"));
542
			assertEquals(Rank.SUBSECTION_BOTANY(), Rank.getRankByNameOrIdInVoc("subsect."));
543
			assertEquals(Rank.SUBSECTION_BOTANY(), Rank.getRankByNameOrIdInVoc("Subsectio", false));
544
			assertEquals(Rank.SUBSECTION_BOTANY(), Rank.getRankByNameOrIdInVoc("subsect.", false));
545
			assertEquals(Rank.SUBSECTION_BOTANY(), Rank.getRankByNameOrIdInVoc("Subsectio", bot));
546
			assertEquals(Rank.SUBSECTION_ZOOLOGY(), Rank.getRankByNameOrIdInVoc("subsect.", zoo));
547
			assertEquals(Rank.SUBSECTION_BOTANY(), Rank.getRankByNameOrIdInVoc("Subsectio", bot, false));
548
			assertEquals(Rank.SUBSECTION_ZOOLOGY(), Rank.getRankByNameOrIdInVoc("subsect.", zoo, false));
549
						
550
		} catch (UnknownCdmTypeException e) {
551
			fail();
552
		}
553
		logger.warn("Not yet fully implemented");
554
	}
555

    
556
	@Test
557
	public void testGetRankByAbbreviation() {
558
		try {
559
			assertEquals(Rank.SPECIES(), Rank.getRankByIdInVoc("sp."));
560
		} catch (UnknownCdmTypeException e) {
561
			fail();
562
		}
563
		logger.warn("Not yet fully implemented");
564
	}
565

    
566
	@Test
567
	public void testGetRankByName() {
568
		try {
569
			assertEquals(Rank.SPECIES(), Rank.getRankByName("species"));
570
			// TODO: Cleanup Rank label names and rank to name mapping
571
			//assertEquals(Rank.SUBFAMILY(), Rank.getRankByName("subfamily"));
572
		} catch (UnknownCdmTypeException e) {
573
			fail();
574
		}
575
		logger.warn("Not yet fully implemented");
576
	}
577

    
578
	@Test
579
	public void testGetAbbreviation() {
580
		assertEquals("sp.", Rank.SPECIES().getAbbreviation());
581
		logger.warn("Not yet fully implemented");
582
	}
583

    
584
}
(9-9/15)