/*************************************************** * * cismet GmbH, Saarbruecken, Germany * * ... and it just works. * ****************************************************/ package Sirius.server.localserver.attribute; import org.junit.After; import org.junit.AfterClass; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; import java.util.Properties; import static org.junit.Assert.*; /** * DOCUMENT ME! * * @author martin.scholl@cismet.de * @version $Revision$, $Date$ */ public class ClassAttributeTest { //~ Constructors ----------------------------------------------------------- /** * Creates a new ClassAttributeTest object. */ public ClassAttributeTest() { } //~ Methods ---------------------------------------------------------------- /** * DOCUMENT ME! * * @throws Exception DOCUMENT ME! */ @BeforeClass public static void setUpClass() throws Exception { final Properties p = new Properties(); p.put("log4j.appender.Remote", "org.apache.log4j.net.SocketAppender"); p.put("log4j.appender.Remote.remoteHost", "localhost"); p.put("log4j.appender.Remote.port", "4445"); p.put("log4j.appender.Remote.locationInfo", "true"); p.put("log4j.rootLogger", "ALL,Remote"); org.apache.log4j.PropertyConfigurator.configure(p); } /** * DOCUMENT ME! * * @throws Exception DOCUMENT ME! */ @AfterClass public static void tearDownClass() throws Exception { } /** * DOCUMENT ME! */ @Before public void setUp() { } /** * DOCUMENT ME! */ @After public void tearDown() { } /** * DOCUMENT ME! * * @return DOCUMENT ME! */ private String getCurrentMethodName() { return new Throwable().getStackTrace()[1].getMethodName(); } /** * DOCUMENT ME! */ @Test public void testGetOptions() { System.out.println("TEST " + getCurrentMethodName()); final ClassAttribute attr = new ClassAttribute(null, 0, null, 0, null); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertTrue("options not empty", attr.getOptions().isEmpty()); attr.setValue("keyA"); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly one option present", 1, attr.getOptions().size()); assertEquals("invalid option kv pair", "", attr.getOptions().get("keyA")); attr.setValue("keyA, keyB, keyC"); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly three options present", 3, attr.getOptions().size()); assertEquals("invalid option kv pair", "", attr.getOptions().get("keyA")); assertEquals("invalid option kv pair", "", attr.getOptions().get("keyB")); assertEquals("invalid option kv pair", "", attr.getOptions().get("keyC")); attr.setValue("keyA=valueA"); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly one option present", 1, attr.getOptions().size()); assertEquals("invalid option kv pair", "valueA", attr.getOptions().get("keyA")); attr.setValue("keyA="); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly one option present", 1, attr.getOptions().size()); assertEquals("invalid option kv pair", "", attr.getOptions().get("keyA")); attr.setValue("keyA= "); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly one option present", 1, attr.getOptions().size()); assertEquals("invalid option kv pair", "", attr.getOptions().get("keyA")); attr.setValue("keyA =valueA"); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly one option present", 1, attr.getOptions().size()); assertEquals("invalid option kv pair", "valueA", attr.getOptions().get("keyA")); attr.setValue("keyA= valueA"); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly one option present", 1, attr.getOptions().size()); assertEquals("invalid option kv pair", "valueA", attr.getOptions().get("keyA")); attr.setValue("keyA = valueA"); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly one option present", 1, attr.getOptions().size()); assertEquals("invalid option kv pair", "valueA", attr.getOptions().get("keyA")); attr.setValue(" keyA = valueA "); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly one option present", 1, attr.getOptions().size()); assertEquals("invalid option kv pair", "valueA", attr.getOptions().get("keyA")); attr.setValue("keyA =valueA "); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly one option present", 1, attr.getOptions().size()); assertEquals("invalid option kv pair", "valueA", attr.getOptions().get("keyA")); attr.setValue("keyA == "); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly one option present", 1, attr.getOptions().size()); assertEquals("invalid option kv pair", "", attr.getOptions().get("keyA")); attr.setValue("keyA = = "); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly one option present", 1, attr.getOptions().size()); assertEquals("invalid option kv pair", "=", attr.getOptions().get("keyA")); attr.setValue("keyA = ===valueA"); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly one option present", 1, attr.getOptions().size()); assertEquals("invalid option kv pair", "===valueA", attr.getOptions().get("keyA")); attr.setValue("keyA =valueA ===valueA"); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly one option present", 1, attr.getOptions().size()); assertEquals("invalid option kv pair", "valueA ===valueA", attr.getOptions().get("keyA")); attr.setValue(" keyA , keyB=valueB"); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly two options present", 2, attr.getOptions().size()); assertEquals("invalid option kv pair", "", attr.getOptions().get("keyA")); assertEquals("invalid option kv pair", "valueB", attr.getOptions().get("keyB")); attr.setValue("keyA , keyB = valueB , keyC"); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly three options present", 3, attr.getOptions().size()); assertEquals("invalid option kv pair", "", attr.getOptions().get("keyA")); assertEquals("invalid option kv pair", "valueB", attr.getOptions().get("keyB")); assertEquals("invalid option kv pair", "", attr.getOptions().get("keyC")); attr.setValue("keyA = valueA, keyB = valueB"); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly two options present", 2, attr.getOptions().size()); assertEquals("invalid option kv pair", "valueA", attr.getOptions().get("keyA")); assertEquals("invalid option kv pair", "valueB", attr.getOptions().get("keyB")); attr.setValue("keyA = valueA , key B , keyC = valueC"); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly three options present", 3, attr.getOptions().size()); assertEquals("invalid option kv pair", "valueA", attr.getOptions().get("keyA")); assertEquals("invalid option kv pair", "", attr.getOptions().get("key B")); assertEquals("invalid option kv pair", "valueC", attr.getOptions().get("keyC")); attr.setValue("keyA = valueA, keyB = valueB, keyC = valueC, keyD = valueD, keyE = valueE"); assertNotNull("class attr option map shall never be null", attr.getOptions()); assertEquals("not exactly five options present", 5, attr.getOptions().size()); assertEquals("invalid option kv pair", "valueA", attr.getOptions().get("keyA")); assertEquals("invalid option kv pair", "valueB", attr.getOptions().get("keyB")); assertEquals("invalid option kv pair", "valueC", attr.getOptions().get("keyC")); assertEquals("invalid option kv pair", "valueD", attr.getOptions().get("keyD")); assertEquals("invalid option kv pair", "valueE", attr.getOptions().get("keyE")); } }