xref: /aosp_15_r20/external/pdfium/testing/resources/javascript/xfa_specific/xfa_items.in (revision 3ac0a46f773bac49fa9476ec2b1cf3f8da5ec3a4)
1{{header}}
2{{include ../../xfa_catalog_1_0.fragment}}
3{{include ../../xfa_object_2_0.fragment}}
4{{include ../../xfa_preamble_3_0.fragment}}
5{{include ../../xfa_config_4_0.fragment}}
6{{object 5 0}} <<
7  {{streamlen}}
8>>
9stream
10<template xmlns="http://www.xfa.org/schema/xfa-template/2.6/">
11  <subform name="form1">
12    <pageSet>
13      <pageArea id="Page1" name="Page1">
14        <contentArea h="10.5in" w="8in" x="0.25in" y="0.25in"/>
15        <medium long="11in" short="8.5in" stock="letter"/>
16      </pageArea>
17    </pageSet>
18    <field h="9.0001mm" name="field1" w="47.625mm" x="6.35mm" y="92.075mm">
19      <ui>
20        <choiceList/>
21      </ui>
22      <items nonesuch="3">
23        <arc name="arc1"></arc>
24        <boolean name="bool0">0</boolean>
25        <boolean name="bool1">1</boolean>
26        <boolean name="boolbad">bad</boolean>
27        <boolean name="booltruenottrue">true</boolean>
28        <date name="date0"></date>
29        <date name="date1">2020-02-02</date>
30        <date name="date2">2039-12-01</date>
31        <date name="datebad">bad</date>
32        <dateTime name="datetime0"></dateTime>
33        <dateTime name="datetime1">2020-02-02T12:34:56</dateTime>
34        <dateTime name="datetime2">2039-12-01T12:34:56</dateTime>
35        <dateTime name="datetimebad">bad</dateTime>
36        <decimal name="decimal0"></decimal>
37        <decimal name="decimal1">42.0000000000000000001</decimal>
38        <decimal name="decimalbad">bad</decimal>
39        <exData name="ex0"></exData>
40        <exData name="ex1"><![CDATA[YZYZYZYZYZYZYZYZYZYZYZYZYZYZ]]></exData>
41        <float name="float0">-12.34</float>
42        <float name="float1">-12.34</float>
43        <float name="floatbad">bad</float>
44        <image name="image0">ABABABABABABABABA</image>
45        <image name="image1"><![CDATA[ABABABABABABABABA]]></image>
46        <integer name="int0"></integer>
47        <integer name="int1">1234</integer>
48        <integer name="intbad">bad</integer>
49        <line name="line0"></line>
50        <rectangle name="rect0"></rectangle>
51        <text name="text0"></text>
52        <text name="text1">Ahoy !!!</text>
53        <time name="time0"></time>
54        <time name="time1">12:34:56</time>
55        <goop name="goop0">Nonsense nodes not allowed here</goop>
56      </items>
57    </field>
58    <event activity="docReady">
59      <script contentType="application/x-javascript"><![CDATA[
60        {{include ../expect.js}}
61        {{include dump_tree.js}}
62
63        itemlist = xfa.resolveNode("form1.field1.#items");
64        dumpTree(itemlist);
65
66        arc1 = itemlist.resolveNode("arc1");
67
68        bool0 = itemlist.resolveNode("bool0");
69        expect("bool0.value", false);
70        bool0.value = 1;
71        expect("bool0.value", true);
72
73        bool1 = itemlist.resolveNode("bool1");
74        expect("bool1.value", true);
75        bool1.value = 0;
76        expect("bool1.value", false);
77
78        boolbad = itemlist.resolveNode("boolbad");
79        expect("boolbad.value", false);
80
81        booltruenottrue = itemlist.resolveNode("booltruenottrue");
82        expect("booltruenottrue.value", false);
83
84        // TODO(tsepez): confirm if this is correct.
85        booltruenottrue.value = true;
86        expect("booltruenottrue.value", false);
87
88        booltruenottrue.value = "zerp";
89        expect("booltruenottrue.value", false);
90        booltruenottrue.value = "1";
91        expect("booltruenottrue.value", true);
92        booltruenottrue.value = "10";
93        expect("booltruenottrue.value", true);
94        booltruenottrue.value = "1zerp";
95        expect("booltruenottrue.value", true);
96
97        // Date is just a node, and allows any text within.
98        date0 = itemlist.resolveNode("date0");
99        expect("date0.value", null);
100
101        date1 = itemlist.resolveNode("date1");
102        expect("date1.value", "2020-02-02");
103
104        date2 = itemlist.resolveNode("date2");
105        expect("date2.value", "2039-12-01");
106
107        datebad = itemlist.resolveNode("datebad");
108        expect("datebad.value", "bad");
109
110        // These are pretty much just nodes, and allow any text within.
111        // Just check that they parsed and that we can retrieve them.
112        datetime0 = itemlist.resolveNode("datetime0");
113        expect("datetime0", "[object XFAObject]");
114
115        datetime1 = itemlist.resolveNode("datetime1");
116        expect("datetime1", "[object XFAObject]");
117
118        datetime2 = itemlist.resolveNode("datetime2");
119        expect("datetime2", "[object XFAObject]");
120
121        datetimebad = itemlist.resolveNode("datetimebad");
122        expect("datetimebad", "[object XFAObject]");
123
124        decimal0 = itemlist.resolveNode("decimal0");
125        expect("decimal0", "[object XFAObject]");
126
127        decimal1 = itemlist.resolveNode("decimal1");
128        expect("decimal1", "[object XFAObject]");
129
130        decimalbad = itemlist.resolveNode("decimalbad");
131        expect("decimalbad", "[object XFAObject]");
132
133        ex0 = itemlist.resolveNode("ex0");
134        expect("ex0", "[object XFAObject]");
135
136        ex1 = itemlist.resolveNode("ex1");
137        expect("ex1", "[object XFAObject]");
138
139        float0 = itemlist.resolveNode("float0");
140        expect("float0", "[object XFAObject]");
141
142        float1 = itemlist.resolveNode("float1");
143        expect("float1", "[object XFAObject]");
144
145        floatbad = itemlist.resolveNode("floatbad");
146        expect("floatbad", "[object XFAObject]");
147
148        image0 = itemlist.resolveNode("image0");
149        expect("image0", "[object XFAObject]");
150
151        image1 = itemlist.resolveNode("image1");
152        expect("image1", "[object XFAObject]");
153
154        int0 = itemlist.resolveNode("int0");
155        expect("int0", "[object XFAObject]");
156
157        int1 = itemlist.resolveNode("int1");
158        expect("int1", "[object XFAObject]");
159
160        intbad = itemlist.resolveNode("intbad");
161        expect("intbad", "[object XFAObject]");
162
163        line0 = itemlist.resolveNode("line0");
164        expect("line0", "[object XFAObject]");
165
166        rect0 = itemlist.resolveNode("rect0");
167        expect("rect0", "[object XFAObject]");
168
169        text0 = itemlist.resolveNode("text0");
170        expect("text0", "[object XFAObject]");
171
172        text1 = itemlist.resolveNode("text1");
173        expect("text1", "[object XFAObject]");
174
175        time0 = itemlist.resolveNode("time0");
176        expect("time0", "[object XFAObject]");
177
178        time1 = itemlist.resolveNode("time1");
179        expect("time1", "[object XFAObject]");
180
181        // The parser is picky and won't let fake nodes in here.
182        goop0 = itemlist.resolveNode("goop0");
183        expect("goop0", null);
184      ]]></script>
185    </event>
186  </subform>
187</template>
188endstream
189endobj
190{{include ../../xfa_locale_6_0.fragment}}
191{{include ../../xfa_postamble_7_0.fragment}}
192{{include ../../xfa_pages_8_0.fragment}}
193{{xref}}
194{{trailer}}
195{{startxref}}
196%%EOF
197