1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package gov.nasa.pds.tools.dict;
18
19 import gov.nasa.pds.tools.dict.ObjectDefinition;
20
21 import java.util.ArrayList;
22 import java.util.List;
23
24 import junit.framework.*;
25
26 /***
27 * @author pramirez
28 * @version $Revision$
29 *
30 */
31 public class ObjectDefinitionTest extends TestCase {
32
33 public ObjectDefinitionTest(String name) {
34 super(name);
35 }
36
37 public void testCtor() {
38 ObjectDefinition definition = new ObjectDefinition("TABLE");
39
40 assertEquals("TABLE", definition.getIdentifier());
41 assertEquals("", definition.getDescription());
42 assertEquals("PROPOSED", definition.getStatusType());
43 assertEquals(0, definition.getAliases().size());
44 assertEquals(0, definition.getRequiredElements().size());
45 assertEquals(0, definition.getOptionalElements().size());
46 assertEquals(0, definition.getRequiredObjects().size());
47 assertEquals(0, definition.getOptionalObjects().size());
48 }
49
50 public void testSetters() {
51 ObjectDefinition definition = new ObjectDefinition("TABLE");
52
53 assertEquals("TABLE", definition.getIdentifier());
54 definition.setIdentifier("IMAGE");
55 assertEquals("IMAGE", definition.getIdentifier());
56
57 assertEquals("", definition.getDescription());
58 definition.setDescription("description");
59 assertEquals("description", definition.getDescription());
60
61 assertEquals("PROPOSED", definition.getStatusType());
62 definition.setStatusType("APPROVED");
63 assertEquals("APPROVED", definition.getStatusType());
64
65 assertEquals(0, definition.getAliases().size());
66 List aliases = new ArrayList();
67 aliases.add("XYZ_IMAGE");
68 definition.setAliases(aliases);
69 assertEquals("XYZ_IMAGE", definition.getAliases().get(0));
70
71 assertEquals(0, definition.getRequiredElements().size());
72 List required = new ArrayList();
73 required.add("TARGET_NAME");
74 definition.setRequiredElements(required);
75 assertEquals("TARGET_NAME", definition.getRequiredElements().get(0));
76
77 assertEquals(0, definition.getOptionalElements().size());
78 List optional = new ArrayList();
79 optional.add("MISSION_NAME");
80 definition.setOptionalElements(optional);
81 assertEquals("MISSION_NAME", definition.getOptionalElements().get(0));
82
83 assertEquals(0, definition.getRequiredObjects().size());
84 definition.setRequiredObjects(required);
85 assertEquals("TARGET_NAME", definition.getRequiredObjects().get(0));
86
87 assertEquals(0, definition.getOptionalObjects().size());
88 definition.setOptionalObjects(optional);
89 assertEquals("MISSION_NAME", definition.getOptionalElements().get(0));
90 }
91
92 public void testObjectMethods() {
93 ObjectDefinition definition = new ObjectDefinition("IMAGE");
94
95 assertEquals(0, definition.getAliases().size());
96 definition.addAlias(new Alias("XYZ_IMAGE"));
97 assertEquals("XYZ_IMAGE", definition.getAliases().get(0).toString());
98
99 assertEquals(0, definition.getRequiredElements().size());
100 List required = new ArrayList();
101 required.add("TARGET_NAME");
102 definition.setRequiredElements(required);
103 assertTrue(definition.isElementRequired("TARGET_NAME"));
104 assertTrue(definition.isElementPossible("TARGET_NAME"));
105 assertTrue(!definition.isElementRequired("BLAH"));
106 assertTrue(!definition.isElementPossible("BLAH"));
107
108 assertEquals(0, definition.getOptionalElements().size());
109 List optional = new ArrayList();
110 optional.add("MISSION_NAME");
111 definition.setOptionalElements(optional);
112 assertTrue(definition.isElementOptional("MISSION_NAME"));
113 assertTrue(!definition.isElementRequired("MISSION_NAME"));
114
115 assertEquals(0, definition.getRequiredObjects().size());
116 definition.setRequiredObjects(required);
117 assertTrue(definition.isObjectRequired("TARGET_NAME"));
118 assertTrue(definition.isObjectPossible("TARGET_NAME"));
119 assertTrue(!definition.isObjectRequired("BLAH"));
120 assertTrue(!definition.isObjectPossible("BLAH"));
121
122 assertEquals(0, definition.getOptionalObjects().size());
123 definition.setOptionalObjects(optional);
124 assertTrue(definition.isObjectOptional("MISSION_NAME"));
125 assertTrue(!definition.isObjectRequired("MISSION_NAME"));
126 }
127
128 }