summaryrefslogtreecommitdiff
path: root/tests/cxx/tree/binary/xdr
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2014-07-03 09:57:09 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2014-07-03 09:57:09 +0200
commit1a4099b78717b16f632b0e7e0980a27811221e52 (patch)
tree87a63393fc207082b7418987309581a9a79e49a4 /tests/cxx/tree/binary/xdr
parent06258b8eae3d5af9a1af0206bb5a8e5c80dde455 (diff)
Implement anyType and anySimpleType content representation
anyType as a DOM fragment, similar to wildcards. anySimpleType as a text string.
Diffstat (limited to 'tests/cxx/tree/binary/xdr')
-rw-r--r--tests/cxx/tree/binary/xdr/driver.cxx8
-rw-r--r--tests/cxx/tree/binary/xdr/makefile3
-rw-r--r--tests/cxx/tree/binary/xdr/test.xml4
-rw-r--r--tests/cxx/tree/binary/xdr/test.xsd3
4 files changed, 16 insertions, 2 deletions
diff --git a/tests/cxx/tree/binary/xdr/driver.cxx b/tests/cxx/tree/binary/xdr/driver.cxx
index ddc196d..623a953 100644
--- a/tests/cxx/tree/binary/xdr/driver.cxx
+++ b/tests/cxx/tree/binary/xdr/driver.cxx
@@ -171,6 +171,14 @@ main (int argc, char* argv[])
assert (r->year () == c->year ());
assert (r->year_month () == c->year_month ());
assert (r->time () == c->time ());
+
+ // anySimpleType
+ //
+ assert (!r->any_simple_type_attr ().text_content ().empty ());
+ assert (r->any_simple_type_attr () == c->any_simple_type_attr ());
+
+ assert (!r->any_simple_type ().text_content ().empty ());
+ assert (r->any_simple_type () == c->any_simple_type ());
}
catch (xml_schema::exception const& e)
{
diff --git a/tests/cxx/tree/binary/xdr/makefile b/tests/cxx/tree/binary/xdr/makefile
index 184c5d2..2994134 100644
--- a/tests/cxx/tree/binary/xdr/makefile
+++ b/tests/cxx/tree/binary/xdr/makefile
@@ -32,7 +32,8 @@ genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options += --generate-insertion XDR --generate-extraction XDR
+$(gen): xsd_options += --generate-insertion XDR --generate-extraction XDR \
+--generate-comparison
$(gen): $(out_root)/xsd/xsd
$(call include-dep,$(dep),$(obj),$(gen))
diff --git a/tests/cxx/tree/binary/xdr/test.xml b/tests/cxx/tree/binary/xdr/test.xml
index 928b4cf..5cedd98 100644
--- a/tests/cxx/tree/binary/xdr/test.xml
+++ b/tests/cxx/tree/binary/xdr/test.xml
@@ -1,6 +1,7 @@
<t:root xmlns:t="test"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="test test.xsd">
+ xsi:schemaLocation="test test.xsd"
+ any_simple_type_attr="any simple content">
<list>1 2 3</list>
@@ -87,5 +88,6 @@
<year_month>2001-11+02:00</year_month>
<time>21:32:52+02:00</time>
+ <any_simple_type>any simple content in element</any_simple_type>
</t:root>
diff --git a/tests/cxx/tree/binary/xdr/test.xsd b/tests/cxx/tree/binary/xdr/test.xsd
index e593f64..0629e94 100644
--- a/tests/cxx/tree/binary/xdr/test.xsd
+++ b/tests/cxx/tree/binary/xdr/test.xsd
@@ -112,7 +112,10 @@
<element name="year" type="gYear"/>
<element name="year_month" type="gYearMonth"/>
<element name="time" type="time"/>
+
+ <element name="any_simple_type" type="anySimpleType"/>
</sequence>
+ <attribute name="any_simple_type_attr" type="anySimpleType" use="required"/>
</complexType>
<element name="root" type="t:type"/>