Project

General

Profile

Download (8.3 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.description;
11

    
12
import static org.junit.Assert.*;
13

    
14
import org.apache.log4j.Logger;
15
import org.junit.After;
16
import org.junit.AfterClass;
17
import org.junit.Before;
18
import org.junit.BeforeClass;
19
import org.junit.Test;
20

    
21
import eu.etaxonomy.cdm.model.common.Language;
22
import eu.etaxonomy.cdm.model.common.LanguageString;
23
import eu.etaxonomy.cdm.model.common.MultilanguageText;
24

    
25
/**
26
 * @author a.mueller
27
 * @created 23.04.2008
28
 * @version 1.0
29
 */
30
public class TextDataTest {
31
	private static Logger logger = Logger.getLogger(TextDataTest.class);
32

    
33
	
34
	private static TextData textDataLeer;
35
	private static TextData textData1; 
36
	private static TextFormat format1;
37
	private static LanguageString languageString1;
38
	
39
	
40
	/**
41
	 * @throws java.lang.Exception
42
	 */
43
	@BeforeClass
44
	public static void setUpBeforeClass() throws Exception {
45
	}
46

    
47
	/**
48
	 * @throws java.lang.Exception
49
	 */
50
	@AfterClass
51
	public static void tearDownAfterClass() throws Exception {
52
	}
53

    
54
	/**
55
	 * @throws java.lang.Exception
56
	 */
57
	@Before
58
	public void setUp() throws Exception {
59
		textDataLeer = TextData.NewInstance();
60
		format1 = TextFormat.NewInstance();
61
		textData1 = TextData.NewInstance("testText", Language.DEFAULT(), format1); 
62
		languageString1 = LanguageString.NewInstance("langText", Language.GERMAN());
63
	}
64

    
65
	/**
66
	 * @throws java.lang.Exception
67
	 */
68
	@After
69
	public void tearDown() throws Exception {
70
	}
71

    
72
/* ************************** TESTS **********************************************************/
73
	
74
	/**
75
	 * Test method for {@link eu.etaxonomy.cdm.model.description.TextData#NewInstance()}.
76
	 */
77
	@Test
78
	public void testNewInstance() {
79
		assertNotNull(textDataLeer);
80
		assertNotNull(textDataLeer.getMultilanguageText());
81
		assertEquals(0, textDataLeer.getMultilanguageText().size());
82
		assertEquals(0, textDataLeer.countLanguages());
83
		assertNull(textDataLeer.getFormat());
84
	}
85

    
86
	/**
87
	 * Test method for {@link eu.etaxonomy.cdm.model.description.TextData#NewInstance()}.
88
	 */
89
	@Test
90
	public void testNewInstanceStringLanguageTextFormat() {
91
		assertNotNull(textData1);
92
		assertNotNull(textData1.getMultilanguageText());
93
		assertEquals(1, textData1.getMultilanguageText().size());
94
		assertEquals(1, textData1.countLanguages());
95
		LanguageString languageString = LanguageString.NewInstance("testText", Language.DEFAULT());
96
//		assertEquals("testText", textData1.getMultilanguageText().getText(Language.DEFAULT()));
97
		assertNotNull(textData1.getFormat());
98
		assertSame(format1, textData1.getFormat());
99
	}
100
	
101
	
102
	/**
103
	 * Test method for {@link eu.etaxonomy.cdm.model.description.TextData#TextData()}.
104
	 */
105
	@Test
106
	public void testTextData() {
107
		textDataLeer = new TextData();
108
		assertNotNull(textDataLeer);
109
		assertNotNull(textDataLeer.getMultilanguageText());
110
		assertEquals(0, textDataLeer.getMultilanguageText().size());
111
		assertEquals(0, textDataLeer.countLanguages());
112
		assertNull(textDataLeer.getFormat());
113
	}
114

    
115
	/**
116
	 * Test method for {@link eu.etaxonomy.cdm.model.description.TextData#getTexts()}.
117
	 */
118
	@Test
119
	public void testGetText() {
120
		assertNotNull(textData1.getText(Language.DEFAULT()));
121
		assertNull(textDataLeer.getText(Language.DEFAULT()));
122
	}
123

    
124
	/**
125
	 * Test method for {@link eu.etaxonomy.cdm.model.description.TextData#getMultilanguageText()}.
126
	 */
127
	@Test
128
	public void testGetMultilanguageText() {
129
		assertNotNull(textData1.getMultilanguageText());
130
//		assertEquals("testText", textData1.getMultilanguageText().getText(Language.DEFAULT()));
131
		assertNotNull(textDataLeer.getMultilanguageText());
132
//		assertNull(textDataLeer.getMultilanguageText().getText(Language.DEFAULT()));
133
		assertEquals(0, textDataLeer.getMultilanguageText().size());
134
	}
135
	
136
	/**
137
	 * Test method for {@link eu.etaxonomy.cdm.model.description.TextData#setMultilanguageText()}.
138
	 */
139
	@Test
140
	public void testSetMultilanguageText() {
141
		MultilanguageText multilanguageText = MultilanguageText.NewInstance();
142
		assertFalse(multilanguageText.equals(textData1.getMultilanguageText()));
143
		textData1.setMultilanguageText(multilanguageText);
144
		assertSame(multilanguageText, textData1.getMultilanguageText());
145
		textData1.setMultilanguageText(null);
146
		assertNotNull(textData1.getMultilanguageText());
147
		assertEquals(0, textData1.getMultilanguageText().size());
148
	}
149
	
150
	/**
151
	 * Test method for {@link eu.etaxonomy.cdm.model.description.TextData#addText(java.lang.String, eu.etaxonomy.cdm.model.common.Language)}.
152
	 */
153
	@Test
154
	public void testPutTextStringLanguage() {
155
		textDataLeer.putText("xx", Language.GERMAN());
156
		assertNull(textDataLeer.putText("francais", Language.FRENCH()));
157
		textDataLeer.putText("nothing", null);
158
		textDataLeer.putText(null, Language.CHINESE());
159
		assertNotNull(textDataLeer.getMultilanguageText());
160
		assertEquals(4 , textDataLeer.getMultilanguageText().size());
161
		assertEquals("xx", textDataLeer.putText("deutsch", Language.GERMAN()).getText() );
162
		assertEquals(4 , textDataLeer.getMultilanguageText().size());
163
		assertEquals("deutsch", textDataLeer.getText(Language.GERMAN()));
164
		assertEquals("francais", textDataLeer.getText(Language.FRENCH()));
165
		assertEquals("nothing", textDataLeer.getText(null));
166
		assertEquals(null, textDataLeer.getText(Language.CHINESE()));
167
	}
168

    
169
	/**
170
	 * Test method for {@link eu.etaxonomy.cdm.model.description.TextData#addText(eu.etaxonomy.cdm.model.common.LanguageString)}.
171
	 */
172
	@Test
173
	public void testPutTextLanguageString() {
174
		LanguageString deutsch = LanguageString.NewInstance("xx", Language.GERMAN());
175
		textDataLeer.putText(deutsch);
176
		assertNull(textDataLeer.putText(LanguageString.NewInstance("francais", Language.FRENCH())));
177
		textDataLeer.putText(LanguageString.NewInstance("nothing", null));
178
		textDataLeer.putText(LanguageString.NewInstance(null, Language.CHINESE()));
179
		assertNotNull(textDataLeer.getMultilanguageText());
180
		assertEquals(4 , textDataLeer.getMultilanguageText().size());
181
		assertEquals(deutsch, textDataLeer.putText(LanguageString.NewInstance("deutsch", Language.GERMAN())));
182
		assertEquals(4 , textDataLeer.getMultilanguageText().size());
183

    
184
		assertEquals("deutsch", textDataLeer.getText(Language.GERMAN()));
185
		assertEquals("francais", textDataLeer.getText(Language.FRENCH()));
186
		assertEquals("nothing", textDataLeer.getText(null));
187
		assertEquals(null, textDataLeer.getText(Language.CHINESE()));
188
	}
189

    
190
	/**
191
	 * Test method for {@link eu.etaxonomy.cdm.model.description.TextData#removeText(eu.etaxonomy.cdm.model.common.Language)}.
192
	 */
193
	@Test
194
	public void testRemoveText() {
195
		assertEquals(1, textData1.countLanguages());
196
		assertNull(textData1.removeText(Language.CHINESE()));
197
		assertEquals(1, textData1.countLanguages());
198
		LanguageString deutsch = LanguageString.NewInstance("xx", Language.GERMAN());
199
		textData1.putText(deutsch);
200
		textData1.putText(LanguageString.NewInstance("nothing", null));
201
		assertEquals(3, textData1.countLanguages());
202
		assertEquals(deutsch, textData1.removeText(Language.GERMAN()));
203
		assertEquals(2, textData1.countLanguages());
204
		textData1.removeText(null);
205
		assertEquals(1, textData1.countLanguages());
206
	}
207

    
208
	/**
209
	 * Test method for {@link eu.etaxonomy.cdm.model.description.TextData#getFormat()}.
210
	 * Test method for {@link eu.etaxonomy.cdm.model.description.TextData#setFormat(eu.etaxonomy.cdm.model.description.TextFormat)}.
211
	 */
212
	@Test
213
	public void testGetSetFormat() {
214
		textDataLeer.setFormat(format1);
215
		assertSame(format1, textDataLeer.getFormat());
216
		textDataLeer.setFormat(null);
217
		assertNull(textDataLeer.getFormat());	
218
	}
219
	
220
	/**
221
	 * Test method for {@link eu.etaxonomy.cdm.model.description.TextData#countLanguages()}.
222
	 */
223
	@Test
224
	public void testCountLanguages() {
225
		assertEquals(1, textData1.countLanguages());
226
		textData1.putText(LanguageString.NewInstance("nothing", null));
227
		assertEquals(2, textData1.countLanguages());
228
		textData1.removeText(null);
229
		assertEquals(1, textData1.countLanguages());
230
		textData1.removeText(Language.FRENCH());
231
		assertEquals(1, textData1.countLanguages());
232
		textData1.removeText(Language.DEFAULT());
233
		assertEquals(0, textData1.countLanguages());
234
		
235
	}	
236

    
237

    
238
}
(3-3/3)