1 | package clarin.cmdi.componentregistry.editor.model { |
---|
2 | import clarin.cmdi.componentregistry.editor.ValueSchemeItem; |
---|
3 | |
---|
4 | import flexunit.framework.TestCase; |
---|
5 | import flexunit.framework.TestSuite; |
---|
6 | |
---|
7 | import mx.collections.ArrayCollection; |
---|
8 | |
---|
9 | public class CMDComponentElementTest extends TestCase { |
---|
10 | public function CMDComponentElementTest() { |
---|
11 | super(); |
---|
12 | } |
---|
13 | |
---|
14 | public static function suite():TestSuite { |
---|
15 | return new TestSuite(CMDComponentElementTest); |
---|
16 | } |
---|
17 | |
---|
18 | public function testToXml():void { |
---|
19 | var result:CMDComponentElement = new CMDComponentElement(); |
---|
20 | result.name = "aap"; |
---|
21 | result.valueSchemeSimple = "string"; |
---|
22 | result.documentation = "Docu"; |
---|
23 | result.displayPriority = "1"; |
---|
24 | result.multilingual = "false"; |
---|
25 | var att:CMDAttribute = new CMDAttribute(); |
---|
26 | att.name = "test"; |
---|
27 | att.valueSchemeSimple = "string"; |
---|
28 | result.attributeList.addItem(att); |
---|
29 | var expected:XML = <CMD_Element name="aap" Documentation="Docu" DisplayPriority="1" ValueScheme="string" CardinalityMin="1" CardinalityMax="1" Multilingual="false"> |
---|
30 | <AttributeList> |
---|
31 | <Attribute> |
---|
32 | <Name>test</Name> |
---|
33 | <Type>string</Type> |
---|
34 | </Attribute> |
---|
35 | </AttributeList> |
---|
36 | </CMD_Element>; |
---|
37 | assertEquals(expected.toXMLString(), result.toXml().toXMLString()); |
---|
38 | } |
---|
39 | |
---|
40 | public function testToXmlDisplayPriorityZeroMeansDoNotSetIt():void { |
---|
41 | var result:CMDComponentElement = new CMDComponentElement(); |
---|
42 | result.name = "aap"; |
---|
43 | result.valueSchemeSimple = "string"; |
---|
44 | result.documentation = "Docu"; |
---|
45 | result.displayPriority = "0"; |
---|
46 | var att:CMDAttribute = new CMDAttribute(); |
---|
47 | att.name = "test"; |
---|
48 | att.valueSchemeSimple = "string"; |
---|
49 | result.attributeList.addItem(att); |
---|
50 | var expected:XML = <CMD_Element name="aap" Documentation="Docu" ValueScheme="string" CardinalityMin="1" CardinalityMax="1"> |
---|
51 | <AttributeList> |
---|
52 | <Attribute> |
---|
53 | <Name>test</Name> |
---|
54 | <Type>string</Type> |
---|
55 | </Attribute> |
---|
56 | </AttributeList> |
---|
57 | </CMD_Element>; |
---|
58 | assertEquals(expected.toXMLString(), result.toXml().toXMLString()); |
---|
59 | } |
---|
60 | |
---|
61 | public function testToXmlValueScheme():void { |
---|
62 | var result:CMDComponentElement = new CMDComponentElement(); |
---|
63 | result.name = "Sex"; |
---|
64 | result.conceptLink = "http://www.isocat.org/datcat/DC-2560"; |
---|
65 | result.valueSchemeEnumeration = new ArrayCollection(); |
---|
66 | result.valueSchemeEnumeration.addItem(new ValueSchemeItem("Male", "", "")); |
---|
67 | result.valueSchemeEnumeration.addItem(new ValueSchemeItem("Female", "", "")); |
---|
68 | result.valueSchemeEnumeration.addItem(new ValueSchemeItem("Unknown", "test", "test2")); |
---|
69 | var expected:XML = <CMD_Element name="Sex" ConceptLink="http://www.isocat.org/datcat/DC-2560" CardinalityMin="1" CardinalityMax="1"> |
---|
70 | <ValueScheme> |
---|
71 | <enumeration> |
---|
72 | <item AppInfo="" ConceptLink="">Male</item> |
---|
73 | <item AppInfo="" ConceptLink="">Female</item> |
---|
74 | <item AppInfo="test" ConceptLink="test2">Unknown</item> |
---|
75 | </enumeration> |
---|
76 | </ValueScheme> |
---|
77 | </CMD_Element>; |
---|
78 | |
---|
79 | assertEquals(expected.toXMLString(), result.toXml().toXMLString()); |
---|
80 | } |
---|
81 | |
---|
82 | public function testToXmlValueSchemePattern():void { |
---|
83 | var result:CMDComponentElement = new CMDComponentElement(); |
---|
84 | result.name = "Test"; |
---|
85 | result.cardinalityMax = "5" |
---|
86 | result.valueSchemePattern = "[a-z]"; |
---|
87 | |
---|
88 | var expected:XML = <CMD_Element name="Test" CardinalityMin="1" CardinalityMax="5"> |
---|
89 | <ValueScheme> |
---|
90 | <pattern>[a-z]</pattern> |
---|
91 | </ValueScheme> |
---|
92 | </CMD_Element>; |
---|
93 | |
---|
94 | assertEquals(expected.toXMLString(), result.toXml().toXMLString()); |
---|
95 | } |
---|
96 | |
---|
97 | } |
---|
98 | } |
---|