KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > sf > clirr > core > MessageTest


1 package net.sf.clirr.core;
2
3 import java.util.Locale JavaDoc;
4 import junit.framework.TestCase;
5 import net.sf.clirr.core.MessageManager;
6 import net.sf.clirr.core.MessageTranslator;
7
8 /**
9  * Tests for the Message and MessageManager classes.
10  * <p>
11  * It is assumed here that the other unit tests have forced every Check
12  * class to be loaded into memory, hence all the static Message objects
13  * have been created and registered with the MessageManager.
14  */

15 public class MessageTest extends TestCase
16 {
17     /**
18      * This test verifies that none of the check classes has used
19      * a message-id which is already in use elsewhere.
20      * <p>
21      * It is assumed that instantiating the Checker class causes every
22      * check class to be loaded, which in turn causes every Message
23      * object (which are expected to be static members of checks) to be created.
24      */

25     public void testUnique()
26     {
27         Checker checker = CheckerFactory.createChecker();
28         MessageManager.getInstance().checkUnique();
29     }
30
31     /**
32      * This test verifies that the default resource bundle contains an
33      * entry for every known message.
34      * <p>
35      * Unfortunately, it is not possible to check whether, for example,
36      * the "de" locale has a complete set of translations. This is because
37      * the ResourceBundle implementation simply returns a string from an
38      * inherited "parent" resource bundle if the key is not found in a
39      * locale-specific bundle, and there is no way of telling which
40      * bundle the message was retrieved from.
41      */

42     public void testComplete()
43     {
44         Checker checker = CheckerFactory.createChecker();
45         java.util.Collection JavaDoc messages = MessageManager.getInstance().getMessages();
46
47         // there are at least 10 messages in the system
48
assertTrue(messages.size() > 10);
49
50         // check the english locale
51
MessageTranslator translator = new MessageTranslator();
52         translator.setLocale(Locale.ENGLISH);
53         translator.checkComplete(messages);
54     }
55 }
56
Popular Tags