diff options
author | Jörg Frings-Fürst <debian@jff.email> | 2024-03-06 10:24:46 +0100 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff.email> | 2024-03-06 10:24:46 +0100 |
commit | 372a0e99c2f61543d9e14d9933b59d9d1f4cb26e (patch) | |
tree | bbadf39aed0610c8f8f7b41fefff47773b8ac205 /xsd/tests/cxx/tree/binary | |
parent | 23d41842168ac1a1580111b9c5c73500ceee3d57 (diff) | |
parent | 4538829ab86b5a1cd4e845e7eab165029c9d6d46 (diff) |
Merge branch 'feature/upstream' into develop
Diffstat (limited to 'xsd/tests/cxx/tree/binary')
-rw-r--r-- | xsd/tests/cxx/tree/binary/cdr/driver.cxx | 144 | ||||
-rw-r--r-- | xsd/tests/cxx/tree/binary/cdr/makefile | 90 | ||||
-rw-r--r-- | xsd/tests/cxx/tree/binary/cdr/test.xml | 93 | ||||
-rw-r--r-- | xsd/tests/cxx/tree/binary/cdr/test.xsd | 123 | ||||
-rw-r--r-- | xsd/tests/cxx/tree/binary/makefile | 17 | ||||
-rw-r--r-- | xsd/tests/cxx/tree/binary/polymorphic/driver.cxx | 165 | ||||
-rw-r--r-- | xsd/tests/cxx/tree/binary/polymorphic/makefile | 91 | ||||
-rw-r--r-- | xsd/tests/cxx/tree/binary/polymorphic/test.xml | 92 | ||||
-rw-r--r-- | xsd/tests/cxx/tree/binary/polymorphic/test.xsd | 125 | ||||
-rw-r--r-- | xsd/tests/cxx/tree/binary/xdr/driver.cxx | 188 | ||||
-rw-r--r-- | xsd/tests/cxx/tree/binary/xdr/makefile | 86 | ||||
-rw-r--r-- | xsd/tests/cxx/tree/binary/xdr/test.xml | 93 | ||||
-rw-r--r-- | xsd/tests/cxx/tree/binary/xdr/test.xsd | 123 |
13 files changed, 0 insertions, 1430 deletions
diff --git a/xsd/tests/cxx/tree/binary/cdr/driver.cxx b/xsd/tests/cxx/tree/binary/cdr/driver.cxx deleted file mode 100644 index a2d7195..0000000 --- a/xsd/tests/cxx/tree/binary/cdr/driver.cxx +++ /dev/null @@ -1,144 +0,0 @@ -// file : tests/cxx/tree/binary/cdr/driver.cxx -// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test non-polymorphic binary serialization to ACE CDR. -// - -#include <memory> // std::auto_ptr/unique_ptr -#include <cassert> -#include <iostream> - -#include "test.hxx" - -using namespace std; -using namespace test; - -int -main (int argc, char* argv[]) -{ - if (argc != 2) - { - cerr << "usage: " << argv[0] << " test.xml" << endl; - return 1; - } - - try - { - XSD_AUTO_PTR<type> r (root (argv[1])); - - // Save to a CDR stream. - // - ACE_OutputCDR ace_ocdr; - xml_schema::ostream<ACE_OutputCDR> ocdr (ace_ocdr); - ocdr << *r; - - // Load from a CDR stream. - // - ACE_InputCDR ace_icdr (ace_ocdr); - xml_schema::istream<ACE_InputCDR> icdr (ace_icdr); - XSD_AUTO_PTR<type> c (new type (icdr)); - - // Compare the two. - // - assert (r->list () == c->list ()); - assert (r->union_ () == c->union_ ()); - assert (r->enumeration () == c->enumeration ()); - - type::complex_sequence rs (r->complex ()), cs (c->complex ()); - - for (type::complex_iterator ri (rs.begin ()), ci (cs.begin ()); - ri != rs.end () && ci != rs.end (); ++ri, ++ci) - { - assert (ri->a () == ci->a ()); - if (ri->b ()) - assert (ri->b () == ci->b ()); - assert (ri->c () == ci->c ()); - - assert (ri->x () == ci->x ()); - if (ri->y ()) - assert (ri->y () == ci->y ()); - } - - // integers - // - assert (r->byte () == c->byte ()); - assert (r->unsigned_byte () == c->unsigned_byte ()); - assert (r->short_ () == c->short_ ()); - assert (r->unsigned_short () == c->unsigned_short ()); - assert (r->int_ () == c->int_ ()); - assert (r->unsigned_int () == c->unsigned_int ()); - assert (r->long_ () == c->long_ ()); - assert (r->unsigned_long () == c->unsigned_long ()); - assert (r->integer () == c->integer ()); - assert (r->non_positive_integer () == c->non_positive_integer ()); - assert (r->non_negative_integer () == c->non_negative_integer ()); - assert (r->positive_integer () == c->positive_integer ()); - assert (r->negative_integer () == c->negative_integer ()); - - // boolean - // - assert (r->boolean () == c->boolean ()); - - // floats - // - assert (r->float_ () == c->float_ ()); - assert (r->double_ () == c->double_ ()); - assert (r->decimal () == c->decimal ()); - - // strings - // - assert (r->string () == c->string ()); - assert (r->normalized_string () == c->normalized_string ()); - assert (r->token () == c->token ()); - assert (r->name () == c->name ()); - assert (r->name_token () == c->name_token ()); - assert (r->name_tokens () == c->name_tokens ()); - assert (r->ncname () == c->ncname ()); - assert (r->language () == c->language ()); - - // qualified name - // - assert (r->qname () == c->qname ()); - - // ID/IDREF - // - assert (r->id () == c->id ()); - assert (r->id_ref () == c->id_ref ()); - assert (r->id_refs () == c->id_refs ()); - - // URI - // - assert (r->any_uri () == c->any_uri ()); - - // binary - // - assert (r->base64_binary () == c->base64_binary ()); - assert (r->hex_binary () == c->hex_binary ()); - - // date/time - // - assert (r->day () == c->day ()); - assert (r->month () == c->month ()); - assert (r->year () == c->year ()); - assert (r->month_day () == c->month_day ()); - assert (r->year_month () == c->year_month ()); - assert (r->date () == c->date ()); - assert (r->time () == c->time ()); - assert (r->date_time () == c->date_time ()); - assert (r->duration () == c->duration ()); - - // 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) - { - cerr << e << endl; - return 1; - } -} diff --git a/xsd/tests/cxx/tree/binary/cdr/makefile b/xsd/tests/cxx/tree/binary/cdr/makefile deleted file mode 100644 index eb80d35..0000000 --- a/xsd/tests/cxx/tree/binary/cdr/makefile +++ /dev/null @@ -1,90 +0,0 @@ -# file : tests/cxx/tree/binary/cdr/makefile -# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make - -xsd := test.xsd -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=.o)) -dep := $(obj:.o=.o.d) - -driver := $(out_base)/driver -test := $(out_base)/.test -clean := $(out_base)/.clean - - -# Import. -# -$(call import,\ - $(scf_root)/import/libxerces-c/stub.make,\ - l: xerces_c.l,cpp-options: xerces_c.l.cpp-options) - -$(call import,\ - $(scf_root)/import/libace/stub.make,\ - l: ace.l,cpp-options: ace.l.cpp-options) - -# Build. -# -$(driver): $(obj) $(xerces_c.l) $(ace.l) - -$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd -$(obj) $(dep): $(xerces_c.l.cpp-options) $(ace.l.cpp-options) - -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 ACE_OutputCDR \ ---generate-extraction ACE_InputCDR --generate-comparison -$(gen): $(out_root)/xsd/xsd - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) $(src_base)/test.xml - $(call message,test $$1,$$1 $(src_base)/test.xml,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) \ - $(addprefix $(out_base)/,$(xsd:.xsd=.cxx.xsd.clean)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(gen): | $(out_base)/.gitignore -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver $(genf) -$(clean): $(out_base)/.gitignore.clean - -$(call include,$(bld_root)/git/gitignore.make) -endif - -# How to. -# -$(call include,$(bld_root)/cxx/o-e.make) -$(call include,$(bld_root)/cxx/cxx-o.make) -$(call include,$(bld_root)/cxx/cxx-d.make) - -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifdef cxx_standard -$(gen): xsd_options += --std $(cxx_standard) -$(call include,$(scf_root)/xsd/tree/xsd-cxx.make) -endif - - -# Dependencies. -# -$(call import,$(src_root)/xsd/makefile) diff --git a/xsd/tests/cxx/tree/binary/cdr/test.xml b/xsd/tests/cxx/tree/binary/cdr/test.xml deleted file mode 100644 index 5cedd98..0000000 --- a/xsd/tests/cxx/tree/binary/cdr/test.xml +++ /dev/null @@ -1,93 +0,0 @@ -<t:root xmlns:t="test" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="test test.xsd" - any_simple_type_attr="any simple content"> - - <list>1 2 3</list> - - <union>abc</union> - - <enumeration>left</enumeration> - - <complex x="1"> - <a>aaa</a> - </complex> - <complex x="1" y="2"> - <a>aaa</a> - <b>bbb</b> - <c>c</c> - <c>cc</c> - <c>ccc</c> - </complex> - - - <!-- integers --> - <byte>65</byte> - <unsigned_byte>66</unsigned_byte> - <short>-222</short> - <unsigned_short>57005</unsigned_short> - <int>-57005</int> - <unsigned_int>3735928559</unsigned_int> - <long>-3735928559</long> - <unsigned_long>16045690984833335023</unsigned_long> - <integer>-3735928559</integer> - <non_positive_integer>-3735928559</non_positive_integer> - <non_negative_integer>3735928559</non_negative_integer> - <positive_integer>3735928559</positive_integer> - <negative_integer>-3735928559</negative_integer> - - - <!-- boolean --> - <boolean>true</boolean> - - - <!-- floats --> - <float>1234.1234</float> - <double>12345678.12345678</double> - <decimal>1234567812345678.1234567812345678</decimal> - - - <!-- strings --> - <string>string</string> - <normalized_string>normalized string</normalized_string> - <token>one two three</token> - <name>name</name> - <name_token>name-token</name_token> - <name_tokens>name tokens</name_tokens> - <ncname>ncname</ncname> - <language>en-us</language> - - <!-- qualified name --> - <qname>xsi:schemaLocation</qname> - - - <!-- ID/IDREF --> - <id>elements1</id> - <id>elements2</id> - <id_ref>elements1</id_ref> - <id_refs>elements1 elements2</id_refs> - - - <!-- URI --> - <any_uri>http://www.codesynthesis.com</any_uri> - - - <!-- binary --> - <base64_binary>YmFzZTY0IGJpbmFyeQ==</base64_binary> - <hex_binary>6865782052696E617279</hex_binary> - - - <!-- date/time --> - <date>2001-10-26+02:00</date> - <date_time>2001-10-26T21:32:52+02:00</date_time> - <duration>P1Y2M3DT5H20M30S</duration> - <day>---01+02:00</day> - <month>--11+02:00</month> - <month_day>--11-02+02:00</month_day> - <year>2001+02:00</year> - <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/xsd/tests/cxx/tree/binary/cdr/test.xsd b/xsd/tests/cxx/tree/binary/cdr/test.xsd deleted file mode 100644 index 0629e94..0000000 --- a/xsd/tests/cxx/tree/binary/cdr/test.xsd +++ /dev/null @@ -1,123 +0,0 @@ -<?xml version="1.0"?> -<schema xmlns="http://www.w3.org/2001/XMLSchema" - xmlns:t="test" - targetNamespace="test"> - - <simpleType name="list"> - <list itemType="int"/> - </simpleType> - - <simpleType name="union"> - <union memberTypes="int string"/> - </simpleType> - - <simpleType name="enumeration"> - <restriction base="string"> - <enumeration value="top"/> - <enumeration value="left"/> - <enumeration value="bottom"/> - <enumeration value="right"/> - </restriction> - </simpleType> - - <complexType name="base"> - <sequence> - <element name="a" type="string"/> - </sequence> - <attribute name="x" type="int" use="required"/> - </complexType> - - <complexType name="complex"> - <complexContent> - <extension base="t:base"> - <sequence> - <element name="b" type="string" minOccurs="0"/> - <element name="c" type="string" minOccurs="0" maxOccurs="unbounded"/> - </sequence> - <attribute name="y" type="int"/> - </extension> - </complexContent> - </complexType> - - - <complexType name="type"> - <sequence> - <element name="list" type="t:list"/> - <element name="union" type="t:union"/> - <element name="enumeration" type="t:enumeration"/> - <element name="complex" type="t:complex" maxOccurs="unbounded"/> - - <!-- integers --> - <element name="byte" type="byte"/> - <element name="unsigned_byte" type="unsignedByte"/> - <element name="short" type="short"/> - <element name="unsigned_short" type="unsignedShort"/> - <element name="int" type="int"/> - <element name="unsigned_int" type="unsignedInt"/> - <element name="long" type="long"/> - <element name="unsigned_long" type="unsignedLong"/> - <element name="integer" type="integer"/> - <element name="non_positive_integer" type="nonPositiveInteger"/> - <element name="non_negative_integer" type="nonNegativeInteger"/> - <element name="positive_integer" type="positiveInteger"/> - <element name="negative_integer" type="negativeInteger"/> - - - <!-- boolean --> - <element name="boolean" type="boolean"/> - - - <!-- floats --> - <element name="float" type="float"/> - <element name="double" type="double"/> - <element name="decimal" type="decimal"/> - - - <!-- strings --> - <element name="string" type="string"/> - <element name="normalized_string" type="normalizedString"/> - <element name="token" type="token"/> - <element name="name" type="Name"/> - <element name="name_token" type="NMTOKEN"/> - <element name="name_tokens" type="NMTOKENS"/> - <element name="ncname" type="NCName"/> - <element name="language" type="language"/> - - <!-- qualified name --> - <element name="qname" type="QName"/> - - - <!-- ID/IDREF --> - <element name="id" maxOccurs="2" type="ID"/> - <element name="id_ref" type="IDREF"/> - <element name="id_refs" type="IDREFS"/> - - - <!-- URI --> - <element name="any_uri" type="anyURI"/> - - - <!-- binary --> - <element name="base64_binary" type="base64Binary"/> - <element name="hex_binary" type="hexBinary"/> - - - <!-- date/time --> - <element name="date" type="date"/> - <element name="date_time" type="dateTime"/> - <element name="duration" type="duration"/> - <element name="day" type="gDay"/> - <element name="month" type="gMonth"/> - <element name="month_day" type="gMonthDay"/> - <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"/> - -</schema> diff --git a/xsd/tests/cxx/tree/binary/makefile b/xsd/tests/cxx/tree/binary/makefile deleted file mode 100644 index 7ec2f6a..0000000 --- a/xsd/tests/cxx/tree/binary/makefile +++ /dev/null @@ -1,17 +0,0 @@ -# file : tests/cxx/tree/binary/makefile -# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make - -tests := cdr polymorphic xdr - -default := $(out_base)/ -test := $(out_base)/.test -clean := $(out_base)/.clean - -$(default): $(addprefix $(out_base)/,$(addsuffix /,$(tests))) -$(test): $(addprefix $(out_base)/,$(addsuffix /.test,$(tests))) -$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(tests))) - -$(foreach t,$(tests),$(call import,$(src_base)/$t/makefile)) diff --git a/xsd/tests/cxx/tree/binary/polymorphic/driver.cxx b/xsd/tests/cxx/tree/binary/polymorphic/driver.cxx deleted file mode 100644 index 8e7256e..0000000 --- a/xsd/tests/cxx/tree/binary/polymorphic/driver.cxx +++ /dev/null @@ -1,165 +0,0 @@ -// file : tests/cxx/tree/binary/polymorphic/driver.cxx -// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test polymorphic binary serialization. -// - -#include <memory> // std::auto_ptr/unique_ptr -#include <cassert> -#include <iostream> -#include <typeinfo> - -#include <ace/Log_Msg.h> // ACE_HEX_DUMP - -#include "test.hxx" - -using namespace std; -using namespace test; - -int -main (int argc, char* argv[]) -{ - if (argc != 2) - { - cerr << "usage: " << argv[0] << " test.xml" << endl; - return 1; - } - - try - { - XSD_AUTO_PTR<type> r (root (argv[1])); - - // Save to a CDR stream. - // - ACE_OutputCDR ace_ocdr; - xml_schema::ostream<ACE_OutputCDR> ocdr (ace_ocdr); - ocdr << *r; - - /* - // Print the binary representation. - // - cerr << "binary representation size: " << ace_ocdr.total_length () << endl; - - for (const ACE_Message_Block* mb = ace_ocdr.begin (); - mb != 0; - mb = mb->cont ()) - { - ACE_HEX_DUMP ((LM_DEBUG, mb->rd_ptr (), mb->length ())); - } - */ - - // Load from a CDR stream. - // - ACE_InputCDR ace_icdr (ace_ocdr); - xml_schema::istream<ACE_InputCDR> icdr (ace_icdr); - XSD_AUTO_PTR<type> c (new type (icdr)); - - // Compare the two. - // - assert (r->list () == c->list ()); - assert (r->union_ () == c->union_ ()); - assert (r->enumeration () == c->enumeration ()); - - { - complex& rc (dynamic_cast<complex&> (r->base ())); - complex& cc (dynamic_cast<complex&> (c->base ())); - - assert (rc.a () == cc.a ()); - if (rc.b ()) - assert (rc.b () == cc.b ()); - assert (rc.c () == cc.c ()); - - assert (rc.x () == cc.x ()); - if (rc.y ()) - assert (rc.y () == cc.y ()); - } - - { - complex& rc (dynamic_cast<complex&> (r->sbase ())); - complex& cc (dynamic_cast<complex&> (c->sbase ())); - - assert (rc.a () == cc.a ()); - if (rc.b ()) - assert (rc.b () == cc.b ()); - assert (rc.c () == cc.c ()); - - assert (rc.x () == cc.x ()); - if (rc.y ()) - assert (rc.y () == cc.y ()); - } - - // integers - // - assert (r->byte () == c->byte ()); - assert (r->unsigned_byte () == c->unsigned_byte ()); - assert (r->short_ () == c->short_ ()); - assert (r->unsigned_short () == c->unsigned_short ()); - assert (r->int_ () == c->int_ ()); - assert (r->unsigned_int () == c->unsigned_int ()); - assert (r->long_ () == c->long_ ()); - assert (r->unsigned_long () == c->unsigned_long ()); - assert (r->integer () == c->integer ()); - assert (r->non_positive_integer () == c->non_positive_integer ()); - assert (r->non_negative_integer () == c->non_negative_integer ()); - assert (r->positive_integer () == c->positive_integer ()); - assert (r->negative_integer () == c->negative_integer ()); - - // boolean - // - assert (r->boolean () == c->boolean ()); - - // floats - // - assert (r->float_ () == c->float_ ()); - assert (r->double_ () == c->double_ ()); - assert (r->decimal () == c->decimal ()); - - // strings - // - assert (r->string () == c->string ()); - assert (r->normalized_string () == c->normalized_string ()); - assert (r->token () == c->token ()); - assert (r->name () == c->name ()); - assert (r->name_token () == c->name_token ()); - assert (r->name_tokens () == c->name_tokens ()); - assert (r->ncname () == c->ncname ()); - assert (r->language () == c->language ()); - - // qualified name - // - assert (r->qname () == c->qname ()); - - // ID/IDREF - // - assert (r->id () == c->id ()); - assert (r->id_ref () == c->id_ref ()); - assert (r->id_refs () == c->id_refs ()); - - // URI - // - assert (r->any_uri () == c->any_uri ()); - - // binary - // - assert (r->base64_binary () == c->base64_binary ()); - assert (r->hex_binary () == c->hex_binary ()); - - // date/time - // - assert (r->date () == c->date ()); - assert (r->date_time () == c->date_time ()); - assert (r->duration () == c->duration ()); - assert (r->day () == c->day ()); - assert (r->month () == c->month ()); - assert (r->month_day () == c->month_day ()); - assert (r->year () == c->year ()); - assert (r->year_month () == c->year_month ()); - assert (r->time () == c->time ()); - } - catch (xml_schema::exception const& e) - { - cerr << e << endl; - return 1; - } -} diff --git a/xsd/tests/cxx/tree/binary/polymorphic/makefile b/xsd/tests/cxx/tree/binary/polymorphic/makefile deleted file mode 100644 index 05c5186..0000000 --- a/xsd/tests/cxx/tree/binary/polymorphic/makefile +++ /dev/null @@ -1,91 +0,0 @@ -# file : tests/cxx/tree/binary/polymorphic/makefile -# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make - -xsd := test.xsd -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=.o)) -dep := $(obj:.o=.o.d) - -driver := $(out_base)/driver -test := $(out_base)/.test -clean := $(out_base)/.clean - - -# Import. -# -$(call import,\ - $(scf_root)/import/libxerces-c/stub.make,\ - l: xerces_c.l,cpp-options: xerces_c.l.cpp-options) - -$(call import,\ - $(scf_root)/import/libace/stub.make,\ - l: ace.l,cpp-options: ace.l.cpp-options) - -# Build. -# -$(driver): $(obj) $(xerces_c.l) $(ace.l) - -$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd -$(obj) $(dep): $(xerces_c.l.cpp-options) $(ace.l.cpp-options) - -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-polymorphic --root-element-last \ ---generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR \ - --generate-comparison -$(gen): $(out_root)/xsd/xsd - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) $(src_base)/test.xml - $(call message,test $$1,$$1 $(src_base)/test.xml,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) \ - $(addprefix $(out_base)/,$(xsd:.xsd=.cxx.xsd.clean)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(gen): | $(out_base)/.gitignore -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver $(genf) -$(clean): $(out_base)/.gitignore.clean - -$(call include,$(bld_root)/git/gitignore.make) -endif - -# How to. -# -$(call include,$(bld_root)/cxx/o-e.make) -$(call include,$(bld_root)/cxx/cxx-o.make) -$(call include,$(bld_root)/cxx/cxx-d.make) - -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifdef cxx_standard -$(gen): xsd_options += --std $(cxx_standard) -$(call include,$(scf_root)/xsd/tree/xsd-cxx.make) -endif - - -# Dependencies. -# -$(call import,$(src_root)/xsd/makefile) diff --git a/xsd/tests/cxx/tree/binary/polymorphic/test.xml b/xsd/tests/cxx/tree/binary/polymorphic/test.xml deleted file mode 100644 index ad3a403..0000000 --- a/xsd/tests/cxx/tree/binary/polymorphic/test.xml +++ /dev/null @@ -1,92 +0,0 @@ -<t:root xmlns:t="test" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="test test.xsd"> - - <list>1 2 3</list> - - <union>abc</union> - - <enumeration>left</enumeration> - - <base x="1" xsi:type="t:complex"> - <a>aaa</a> - </base> - - <t:scomplex x="1" y="2"> - <a>aaa</a> - <b>bbb</b> - <c>c</c> - <c>cc</c> - <c>ccc</c> - </t:scomplex> - - - <!-- integers --> - <byte>65</byte> - <unsigned_byte>66</unsigned_byte> - <short>-222</short> - <unsigned_short>57005</unsigned_short> - <int>-57005</int> - <unsigned_int>3735928559</unsigned_int> - <long>-3735928559</long> - <unsigned_long>16045690984833335023</unsigned_long> - <integer>-3735928559</integer> - <non_positive_integer>-3735928559</non_positive_integer> - <non_negative_integer>3735928559</non_negative_integer> - <positive_integer>3735928559</positive_integer> - <negative_integer>-3735928559</negative_integer> - - - <!-- boolean --> - <boolean>true</boolean> - - - <!-- floats --> - <float>1234.1234</float> - <double>12345678.12345678</double> - <decimal>1234567812345678.1234567812345678</decimal> - - - <!-- strings --> - <string>string</string> - <normalized_string>normalized string</normalized_string> - <token>one two three</token> - <name>name</name> - <name_token>name-token</name_token> - <name_tokens>name tokens</name_tokens> - <ncname>ncname</ncname> - <language>en-us</language> - - <!-- qualified name --> - <qname>xsi:schemaLocation</qname> - - - <!-- ID/IDREF --> - <id>elements1</id> - <id>elements2</id> - <id_ref>elements1</id_ref> - <id_refs>elements1 elements2</id_refs> - - - <!-- URI --> - <any_uri>http://www.codesynthesis.com</any_uri> - - - <!-- binary --> - <base64_binary>YmFzZTY0IGJpbmFyeQ==</base64_binary> - <hex_binary>6865782052696E617279</hex_binary> - - - <!-- date/time --> - <date>2001-10-26+02:00</date> - <date_time>2001-10-26T21:32:52+02:00</date_time> - <duration>P1Y2M3DT5H20M30S</duration> - <day>---01+02:00</day> - <month>--11+02:00</month> - <month_day>--11-02+02:00</month_day> - <year>2001+02:00</year> - <year_month>2001-11+02:00</year_month> - <time>21:32:52+02:00</time> - - -</t:root> diff --git a/xsd/tests/cxx/tree/binary/polymorphic/test.xsd b/xsd/tests/cxx/tree/binary/polymorphic/test.xsd deleted file mode 100644 index 8c214e5..0000000 --- a/xsd/tests/cxx/tree/binary/polymorphic/test.xsd +++ /dev/null @@ -1,125 +0,0 @@ -<?xml version="1.0"?> -<schema xmlns="http://www.w3.org/2001/XMLSchema" - xmlns:t="test" - targetNamespace="test"> - - <simpleType name="list"> - <list itemType="int"/> - </simpleType> - - <simpleType name="union"> - <union memberTypes="int string"/> - </simpleType> - - <simpleType name="enumeration"> - <restriction base="string"> - <enumeration value="top"/> - <enumeration value="left"/> - <enumeration value="bottom"/> - <enumeration value="right"/> - </restriction> - </simpleType> - - <complexType name="base"> - <sequence> - <element name="a" type="string"/> - </sequence> - <attribute name="x" type="int" use="required"/> - </complexType> - - <element name="sbase" type="t:base"/> - - <complexType name="complex"> - <complexContent> - <extension base="t:base"> - <sequence> - <element name="b" type="string" minOccurs="0"/> - <element name="c" type="string" minOccurs="0" maxOccurs="unbounded"/> - </sequence> - <attribute name="y" type="int"/> - </extension> - </complexContent> - </complexType> - - <element name="scomplex" type="t:complex" substitutionGroup="t:sbase"/> - - <complexType name="type"> - <sequence> - <element name="list" type="t:list"/> - <element name="union" type="t:union"/> - <element name="enumeration" type="t:enumeration"/> - - <element name="base" type="t:base"/> - <element ref="t:sbase"/> - - <!-- integers --> - <element name="byte" type="byte"/> - <element name="unsigned_byte" type="unsignedByte"/> - <element name="short" type="short"/> - <element name="unsigned_short" type="unsignedShort"/> - <element name="int" type="int"/> - <element name="unsigned_int" type="unsignedInt"/> - <element name="long" type="long"/> - <element name="unsigned_long" type="unsignedLong"/> - <element name="integer" type="integer"/> - <element name="non_positive_integer" type="nonPositiveInteger"/> - <element name="non_negative_integer" type="nonNegativeInteger"/> - <element name="positive_integer" type="positiveInteger"/> - <element name="negative_integer" type="negativeInteger"/> - - - <!-- boolean --> - <element name="boolean" type="boolean"/> - - - <!-- floats --> - <element name="float" type="float"/> - <element name="double" type="double"/> - <element name="decimal" type="decimal"/> - - - <!-- strings --> - <element name="string" type="string"/> - <element name="normalized_string" type="normalizedString"/> - <element name="token" type="token"/> - <element name="name" type="Name"/> - <element name="name_token" type="NMTOKEN"/> - <element name="name_tokens" type="NMTOKENS"/> - <element name="ncname" type="NCName"/> - <element name="language" type="language"/> - - <!-- qualified name --> - <element name="qname" type="QName"/> - - - <!-- ID/IDREF --> - <element name="id" maxOccurs="2" type="ID"/> - <element name="id_ref" type="IDREF"/> - <element name="id_refs" type="IDREFS"/> - - - <!-- URI --> - <element name="any_uri" type="anyURI"/> - - - <!-- binary --> - <element name="base64_binary" type="base64Binary"/> - <element name="hex_binary" type="hexBinary"/> - - - <!-- date/time --> - <element name="date" type="date"/> - <element name="date_time" type="dateTime"/> - <element name="duration" type="duration"/> - <element name="day" type="gDay"/> - <element name="month" type="gMonth"/> - <element name="month_day" type="gMonthDay"/> - <element name="year" type="gYear"/> - <element name="year_month" type="gYearMonth"/> - <element name="time" type="time"/> - </sequence> - </complexType> - - <element name="root" type="t:type"/> - -</schema> diff --git a/xsd/tests/cxx/tree/binary/xdr/driver.cxx b/xsd/tests/cxx/tree/binary/xdr/driver.cxx deleted file mode 100644 index 623a953..0000000 --- a/xsd/tests/cxx/tree/binary/xdr/driver.cxx +++ /dev/null @@ -1,188 +0,0 @@ -// file : tests/cxx/tree/binary/xdr/driver.cxx -// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test non-polymorphic binary serialization to XDR. -// - -#include <memory> // std::auto_ptr/unique_ptr -#include <cstring> // std::memcpy -#include <cassert> -#include <iostream> - -#include "test.hxx" - -using namespace std; -using namespace test; - -extern "C" int -overflow (char* p, char* buf, int in) -{ - xml_schema::buffer* dst (reinterpret_cast<xml_schema::buffer*> (p)); - - size_t n (static_cast<size_t> (in)), size (dst->size ()); - dst->size (size + n); - memcpy (dst->data () + size, buf, n); - - return static_cast<int> (n); -} - -struct underflow_info -{ - xml_schema::buffer* buf; - std::size_t pos; -}; - -extern "C" int -underflow (char* p, char* buf, int in) -{ - underflow_info* ui (reinterpret_cast<underflow_info*> (p)); - - size_t n (static_cast<size_t> (in)), size (ui->buf->size () - ui->pos); - n = size > n ? n : size; - - memcpy (buf, ui->buf->data () + ui->pos, n); - ui->pos += n; - - return static_cast<int> (n); -} - -int -main (int argc, char* argv[]) -{ - if (argc != 2) - { - cerr << "usage: " << argv[0] << " test.xml" << endl; - return 1; - } - - try - { - XSD_AUTO_PTR<type> r (root (argv[1])); - - // Save to an XDR stream. - // - XDR xdr; - xml_schema::buffer buf; - xdrrec_create (&xdr, 0, 0, reinterpret_cast<char*> (&buf), 0, &overflow); - xdr.x_op = XDR_ENCODE; - xsd::cxx::tree::ostream<XDR> oxdr (xdr); - oxdr << *r; - xdrrec_endofrecord (&xdr, true); // flush the data - xdr_destroy (&xdr); - - // Load from an XDR stream. - // - underflow_info ui; - ui.buf = &buf; - ui.pos = 0; - xdrrec_create (&xdr, 0, 0, reinterpret_cast<char*> (&ui), &underflow, 0); - xdr.x_op = XDR_DECODE; - xdrrec_skiprecord (&xdr); - xsd::cxx::tree::istream<XDR> ixdr (xdr); - XSD_AUTO_PTR<type> c (new type (ixdr)); - xdr_destroy (&xdr); - - // Compare the two. - // - assert (r->list () == c->list ()); - assert (r->union_ () == c->union_ ()); - assert (r->enumeration () == c->enumeration ()); - - type::complex_sequence rs (r->complex ()), cs (c->complex ()); - - for (type::complex_iterator ri (rs.begin ()), ci (cs.begin ()); - ri != rs.end () && ci != rs.end (); ++ri, ++ci) - { - assert (ri->a () == ci->a ()); - if (ri->b ()) - assert (ri->b () == ci->b ()); - assert (ri->c () == ci->c ()); - - assert (ri->x () == ci->x ()); - if (ri->y ()) - assert (ri->y () == ci->y ()); - } - - // integers - // - assert (r->byte () == c->byte ()); - assert (r->unsigned_byte () == c->unsigned_byte ()); - assert (r->short_ () == c->short_ ()); - assert (r->unsigned_short () == c->unsigned_short ()); - assert (r->int_ () == c->int_ ()); - assert (r->unsigned_int () == c->unsigned_int ()); - assert (r->long_ () == c->long_ ()); - assert (r->unsigned_long () == c->unsigned_long ()); - assert (r->integer () == c->integer ()); - assert (r->non_positive_integer () == c->non_positive_integer ()); - assert (r->non_negative_integer () == c->non_negative_integer ()); - assert (r->positive_integer () == c->positive_integer ()); - assert (r->negative_integer () == c->negative_integer ()); - - // boolean - // - assert (r->boolean () == c->boolean ()); - - // floats - // - assert (r->float_ () == c->float_ ()); - assert (r->double_ () == c->double_ ()); - assert (r->decimal () == c->decimal ()); - - // strings - // - assert (r->string () == c->string ()); - assert (r->normalized_string () == c->normalized_string ()); - assert (r->token () == c->token ()); - assert (r->name () == c->name ()); - assert (r->name_token () == c->name_token ()); - assert (r->name_tokens () == c->name_tokens ()); - assert (r->ncname () == c->ncname ()); - assert (r->language () == c->language ()); - - // qualified name - // - assert (r->qname () == c->qname ()); - - // ID/IDREF - // - assert (r->id () == c->id ()); - assert (r->id_ref () == c->id_ref ()); - assert (r->id_refs () == c->id_refs ()); - - // URI - // - assert (r->any_uri () == c->any_uri ()); - - // binary - // - assert (r->base64_binary () == c->base64_binary ()); - assert (r->hex_binary () == c->hex_binary ()); - - // date/time - // - assert (r->date () == c->date ()); - assert (r->date_time () == c->date_time ()); - assert (r->duration () == c->duration ()); - assert (r->day () == c->day ()); - assert (r->month () == c->month ()); - assert (r->month_day () == c->month_day ()); - 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) - { - cerr << e << endl; - return 1; - } -} diff --git a/xsd/tests/cxx/tree/binary/xdr/makefile b/xsd/tests/cxx/tree/binary/xdr/makefile deleted file mode 100644 index 2994134..0000000 --- a/xsd/tests/cxx/tree/binary/xdr/makefile +++ /dev/null @@ -1,86 +0,0 @@ -# file : tests/cxx/tree/binary/xdr/makefile -# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make - -xsd := test.xsd -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=.o)) -dep := $(obj:.o=.o.d) - -driver := $(out_base)/driver -test := $(out_base)/.test -clean := $(out_base)/.clean - - -# Import. -# -$(call import,\ - $(scf_root)/import/libxerces-c/stub.make,\ - l: xerces_c.l,cpp-options: xerces_c.l.cpp-options) - -# Build. -# -$(driver): $(obj) $(xerces_c.l) - -$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd -$(obj) $(dep): $(xerces_c.l.cpp-options) - -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 \ ---generate-comparison -$(gen): $(out_root)/xsd/xsd - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) $(src_base)/test.xml - $(call message,test $$1,$$1 $(src_base)/test.xml,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) \ - $(addprefix $(out_base)/,$(xsd:.xsd=.cxx.xsd.clean)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(gen): | $(out_base)/.gitignore -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver $(genf) -$(clean): $(out_base)/.gitignore.clean - -$(call include,$(bld_root)/git/gitignore.make) -endif - -# How to. -# -$(call include,$(bld_root)/cxx/o-e.make) -$(call include,$(bld_root)/cxx/cxx-o.make) -$(call include,$(bld_root)/cxx/cxx-d.make) - -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifdef cxx_standard -$(gen): xsd_options += --std $(cxx_standard) -$(call include,$(scf_root)/xsd/tree/xsd-cxx.make) -endif - - -# Dependencies. -# -$(call import,$(src_root)/xsd/makefile) diff --git a/xsd/tests/cxx/tree/binary/xdr/test.xml b/xsd/tests/cxx/tree/binary/xdr/test.xml deleted file mode 100644 index 5cedd98..0000000 --- a/xsd/tests/cxx/tree/binary/xdr/test.xml +++ /dev/null @@ -1,93 +0,0 @@ -<t:root xmlns:t="test" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="test test.xsd" - any_simple_type_attr="any simple content"> - - <list>1 2 3</list> - - <union>abc</union> - - <enumeration>left</enumeration> - - <complex x="1"> - <a>aaa</a> - </complex> - <complex x="1" y="2"> - <a>aaa</a> - <b>bbb</b> - <c>c</c> - <c>cc</c> - <c>ccc</c> - </complex> - - - <!-- integers --> - <byte>65</byte> - <unsigned_byte>66</unsigned_byte> - <short>-222</short> - <unsigned_short>57005</unsigned_short> - <int>-57005</int> - <unsigned_int>3735928559</unsigned_int> - <long>-3735928559</long> - <unsigned_long>16045690984833335023</unsigned_long> - <integer>-3735928559</integer> - <non_positive_integer>-3735928559</non_positive_integer> - <non_negative_integer>3735928559</non_negative_integer> - <positive_integer>3735928559</positive_integer> - <negative_integer>-3735928559</negative_integer> - - - <!-- boolean --> - <boolean>true</boolean> - - - <!-- floats --> - <float>1234.1234</float> - <double>12345678.12345678</double> - <decimal>1234567812345678.1234567812345678</decimal> - - - <!-- strings --> - <string>string</string> - <normalized_string>normalized string</normalized_string> - <token>one two three</token> - <name>name</name> - <name_token>name-token</name_token> - <name_tokens>name tokens</name_tokens> - <ncname>ncname</ncname> - <language>en-us</language> - - <!-- qualified name --> - <qname>xsi:schemaLocation</qname> - - - <!-- ID/IDREF --> - <id>elements1</id> - <id>elements2</id> - <id_ref>elements1</id_ref> - <id_refs>elements1 elements2</id_refs> - - - <!-- URI --> - <any_uri>http://www.codesynthesis.com</any_uri> - - - <!-- binary --> - <base64_binary>YmFzZTY0IGJpbmFyeQ==</base64_binary> - <hex_binary>6865782052696E617279</hex_binary> - - - <!-- date/time --> - <date>2001-10-26+02:00</date> - <date_time>2001-10-26T21:32:52+02:00</date_time> - <duration>P1Y2M3DT5H20M30S</duration> - <day>---01+02:00</day> - <month>--11+02:00</month> - <month_day>--11-02+02:00</month_day> - <year>2001+02:00</year> - <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/xsd/tests/cxx/tree/binary/xdr/test.xsd b/xsd/tests/cxx/tree/binary/xdr/test.xsd deleted file mode 100644 index 0629e94..0000000 --- a/xsd/tests/cxx/tree/binary/xdr/test.xsd +++ /dev/null @@ -1,123 +0,0 @@ -<?xml version="1.0"?> -<schema xmlns="http://www.w3.org/2001/XMLSchema" - xmlns:t="test" - targetNamespace="test"> - - <simpleType name="list"> - <list itemType="int"/> - </simpleType> - - <simpleType name="union"> - <union memberTypes="int string"/> - </simpleType> - - <simpleType name="enumeration"> - <restriction base="string"> - <enumeration value="top"/> - <enumeration value="left"/> - <enumeration value="bottom"/> - <enumeration value="right"/> - </restriction> - </simpleType> - - <complexType name="base"> - <sequence> - <element name="a" type="string"/> - </sequence> - <attribute name="x" type="int" use="required"/> - </complexType> - - <complexType name="complex"> - <complexContent> - <extension base="t:base"> - <sequence> - <element name="b" type="string" minOccurs="0"/> - <element name="c" type="string" minOccurs="0" maxOccurs="unbounded"/> - </sequence> - <attribute name="y" type="int"/> - </extension> - </complexContent> - </complexType> - - - <complexType name="type"> - <sequence> - <element name="list" type="t:list"/> - <element name="union" type="t:union"/> - <element name="enumeration" type="t:enumeration"/> - <element name="complex" type="t:complex" maxOccurs="unbounded"/> - - <!-- integers --> - <element name="byte" type="byte"/> - <element name="unsigned_byte" type="unsignedByte"/> - <element name="short" type="short"/> - <element name="unsigned_short" type="unsignedShort"/> - <element name="int" type="int"/> - <element name="unsigned_int" type="unsignedInt"/> - <element name="long" type="long"/> - <element name="unsigned_long" type="unsignedLong"/> - <element name="integer" type="integer"/> - <element name="non_positive_integer" type="nonPositiveInteger"/> - <element name="non_negative_integer" type="nonNegativeInteger"/> - <element name="positive_integer" type="positiveInteger"/> - <element name="negative_integer" type="negativeInteger"/> - - - <!-- boolean --> - <element name="boolean" type="boolean"/> - - - <!-- floats --> - <element name="float" type="float"/> - <element name="double" type="double"/> - <element name="decimal" type="decimal"/> - - - <!-- strings --> - <element name="string" type="string"/> - <element name="normalized_string" type="normalizedString"/> - <element name="token" type="token"/> - <element name="name" type="Name"/> - <element name="name_token" type="NMTOKEN"/> - <element name="name_tokens" type="NMTOKENS"/> - <element name="ncname" type="NCName"/> - <element name="language" type="language"/> - - <!-- qualified name --> - <element name="qname" type="QName"/> - - - <!-- ID/IDREF --> - <element name="id" maxOccurs="2" type="ID"/> - <element name="id_ref" type="IDREF"/> - <element name="id_refs" type="IDREFS"/> - - - <!-- URI --> - <element name="any_uri" type="anyURI"/> - - - <!-- binary --> - <element name="base64_binary" type="base64Binary"/> - <element name="hex_binary" type="hexBinary"/> - - - <!-- date/time --> - <element name="date" type="date"/> - <element name="date_time" type="dateTime"/> - <element name="duration" type="duration"/> - <element name="day" type="gDay"/> - <element name="month" type="gMonth"/> - <element name="month_day" type="gMonthDay"/> - <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"/> - -</schema> |