/[schmitzm]/trunk/src_junit/skrueger/i8n/TranslationTest.java
ViewVC logotype

Annotation of /trunk/src_junit/skrueger/i8n/TranslationTest.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1107 - (hide annotations)
Thu Oct 14 10:39:07 2010 UTC (14 years, 4 months ago) by alfonx
File MIME type: text/plain
File size: 3178 byte(s)
tests fixed
1 alfonx 1097 package skrueger.i8n;
2    
3     import static org.junit.Assert.assertEquals;
4     import static org.junit.Assert.assertFalse;
5     import static org.junit.Assert.assertTrue;
6    
7     import java.awt.event.ActionEvent;
8     import java.awt.event.ActionListener;
9     import java.beans.PropertyChangeEvent;
10     import java.beans.PropertyChangeListener;
11     import java.util.concurrent.atomic.AtomicBoolean;
12    
13     import org.junit.After;
14     import org.junit.Before;
15     import org.junit.Test;
16    
17     public class TranslationTest {
18    
19     @Before
20     public void setUp() throws Exception {
21     }
22    
23     @After
24     public void tearDown() throws Exception {
25     }
26    
27     @Test
28     public void testCopyToAndEquals() {
29     Translation t = new Translation();
30     Translation t2 = new Translation();
31     t.put("de", "berg");
32     t.put("en", "mountain");
33     t.copyTo(t2);
34     assertEquals(t2.keySet(), t.keySet());
35     assertEquals(t2.toOneLine(), t.toOneLine());
36     assertEquals(t2, t);
37    
38     assertEquals(t.copyTo(null), t);
39     }
40    
41     @Test
42     public void testCopyAndClone() {
43     Translation t = new Translation();
44     t.put("de", "berg");
45     t.put("en", "mountain");
46     Translation t2 = t.copy();
47    
48     assertEquals(t2, t);
49    
50     Translation t3 = t2.clone();
51     assertEquals(t3, t);
52     }
53    
54     @Test
55     public void testActiveLangChanges() {
56     Translation t = new Translation();
57     final AtomicBoolean calledAl = new AtomicBoolean(false);
58     final AtomicBoolean calledL = new AtomicBoolean(false);
59     final AtomicBoolean calledC = new AtomicBoolean(false);
60    
61 alfonx 1107 PropertyChangeListener alListener = new PropertyChangeListener() {
62 alfonx 1097
63     @Override
64     public void propertyChange(PropertyChangeEvent evt) {
65     calledAl.set(true);
66     }
67 alfonx 1107 };
68     Translation.addActiveLangChangeListener(alListener);
69 alfonx 1097
70 alfonx 1107 PropertyChangeListener localListener = new PropertyChangeListener() {
71 alfonx 1097
72     @Override
73     public void propertyChange(PropertyChangeEvent evt) {
74     calledL.set(true);
75     }
76 alfonx 1107 };
77     Translation.addLocaleChangeListener(localListener);
78 alfonx 1097
79 alfonx 1107 ActionListener anyChangeListener = new ActionListener() {
80 alfonx 1097
81     @Override
82     public void actionPerformed(ActionEvent e) {
83     calledC.set(true);
84     }
85 alfonx 1107 };
86     t.addTranslationChangeListener(anyChangeListener);
87 alfonx 1097
88     // Change the content
89     t.put("de", "change");
90     assertFalse(calledAl.get());
91     assertFalse(calledL.get());
92     assertTrue(calledC.get());
93    
94     // Change active language by default
95     calledAl.set(false);
96     calledL.set(false);
97     calledC.set(false);
98 alfonx 1107 Translation.setActiveLang("de");
99 alfonx 1097 Translation.setActiveLang("en");
100 alfonx 1107
101 alfonx 1097 assertTrue(calledAl.get());
102     assertTrue(calledL.get());
103     assertFalse(calledC.get());
104    
105     calledAl.set(false);
106     calledL.set(false);
107     Translation.setActiveLang("ar", false);
108     assertTrue(calledAl.get());
109     assertFalse(calledL.get());
110     assertFalse(calledC.get());
111    
112     calledAl.set(false);
113     Translation.setActiveLang("ar", false);
114     assertFalse(
115     "if the same language is set again, it should not trigger events",
116     calledAl.get());
117     assertFalse(calledC.get());
118     }
119    
120     @Test
121     public void testToString() {
122     Translation t = new Translation();
123     t.put("de", "de");
124     t.put("en", "en");
125     t.put("fr", "fr");
126     t.put("ru", "ru");
127    
128     Translation.setActiveLang("de");
129     assertEquals("de", t.toString());
130     Translation.setActiveLang("ru");
131     assertEquals("ru", t.toString());
132     }
133     }

Properties

Name Value
svn:eol-style native
svn:keywords Id URL
svn:mime-type text/plain

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26