summaryrefslogtreecommitdiff
path: root/tests/cxx/parser/validation/sequence
diff options
context:
space:
mode:
Diffstat (limited to 'tests/cxx/parser/validation/sequence')
-rw-r--r--tests/cxx/parser/validation/sequence/driver.cxx139
-rw-r--r--tests/cxx/parser/validation/sequence/makefile92
-rw-r--r--tests/cxx/parser/validation/sequence/test-000.std56
-rw-r--r--tests/cxx/parser/validation/sequence/test-000.xml46
-rw-r--r--tests/cxx/parser/validation/sequence/test-001.std4
-rw-r--r--tests/cxx/parser/validation/sequence/test-001.xml10
-rw-r--r--tests/cxx/parser/validation/sequence/test-002.std20
-rw-r--r--tests/cxx/parser/validation/sequence/test-002.xml27
-rw-r--r--tests/cxx/parser/validation/sequence/test-003.std5
-rw-r--r--tests/cxx/parser/validation/sequence/test-003.xml17
-rw-r--r--tests/cxx/parser/validation/sequence/test-004.std4
-rw-r--r--tests/cxx/parser/validation/sequence/test-004.xml14
-rw-r--r--tests/cxx/parser/validation/sequence/test-005.std6
-rw-r--r--tests/cxx/parser/validation/sequence/test-005.xml15
-rw-r--r--tests/cxx/parser/validation/sequence/test-006.std13
-rw-r--r--tests/cxx/parser/validation/sequence/test-006.xml17
-rw-r--r--tests/cxx/parser/validation/sequence/test.xsd28
17 files changed, 0 insertions, 513 deletions
diff --git a/tests/cxx/parser/validation/sequence/driver.cxx b/tests/cxx/parser/validation/sequence/driver.cxx
deleted file mode 100644
index 61652b3..0000000
--- a/tests/cxx/parser/validation/sequence/driver.cxx
+++ /dev/null
@@ -1,139 +0,0 @@
-// file : tests/cxx/parser/validation/sequence/driver.cxx
-// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-
-// Test the sequence compositor validation.
-//
-
-#include <string>
-#include <fstream>
-#include <iostream>
-
-#include "test-pskel.hxx"
-
-using namespace std;
-using namespace test;
-using xml_schema::ro_string;
-
-struct sequence_pimpl: sequence_pskel
-{
- virtual void
- pre ()
- {
- cout << "{" << endl;
- }
-
- virtual void
- a (string const& v)
- {
- cout << " a = " << v << endl;
- }
-
- virtual void
- b (string const& v)
- {
- cout << " b = " << v << endl;
- }
-
- virtual void
- c (string const& v)
- {
- cout << " c = " << v << endl;
- }
-
- virtual void
- d (string const& v)
- {
- cout << " d = " << v << endl;
- }
-
- virtual void
- e (string const& v)
- {
- cout << " e = " << v << endl;
- }
-
- virtual void
- f (string const& v)
- {
- cout << " f = " << v << endl;
- }
-
- virtual void
- _start_any_element (ro_string const& ns,
- ro_string const& name,
- ro_string const*)
- {
- cout << " any: " << ns << "#" << name << endl
- << " {" << endl;
- }
-
- virtual void
- _any_characters (ro_string const& v)
- {
- cout << " chars = " << v << endl;
- }
-
- virtual void
- _end_any_element (ro_string const&, ro_string const&)
- {
- cout << " }" << endl;
- }
-
- virtual void
- post_sequence ()
- {
- cout << "}" << endl
- << endl;
- }
-};
-
-struct type_pimpl: type_pskel
-{
-};
-
-int
-main (int argc, char* argv[])
-{
- if (argc != 2)
- {
- cerr << "usage: " << argv[0] << " test.xml" << endl;
- return 1;
- }
-
- try
- {
- xml_schema::string_pimpl string_p;
- sequence_pimpl sequence_p;
- type_pimpl type_p;
-
- sequence_p.parsers (string_p, string_p, string_p,
- string_p, string_p, string_p);
- type_p.parsers (sequence_p);
-
- xml_schema::document doc_p (type_p, "test", "root");
-
- try
- {
- ifstream ifs (argv[1]);
- type_p.pre ();
- doc_p.parse (ifs, argv[1], "", xml_schema::flags::dont_validate);
- type_p.post_type ();
- }
- catch (xml_schema::exception const& e)
- {
- cout << " " << e << endl
- << "}" << endl
- << endl;
- }
- }
- catch (xml_schema::exception const& e)
- {
- cerr << e << endl;
- return 1;
- }
- catch (ios_base::failure const&)
- {
- cerr << "io failure" << endl;
- return 1;
- }
-}
diff --git a/tests/cxx/parser/validation/sequence/makefile b/tests/cxx/parser/validation/sequence/makefile
deleted file mode 100644
index f0a7b14..0000000
--- a/tests/cxx/parser/validation/sequence/makefile
+++ /dev/null
@@ -1,92 +0,0 @@
-# file : tests/cxx/parser/validation/sequence/makefile
-# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-
-include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
-
-xsd := test.xsd
-cxx := driver.cxx
-
-tests := 000 001 002 003 004 005 006
-
-obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=-pskel.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=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
-gen := $(addprefix $(out_base)/,$(genf))
-
-$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options += --generate-validation
-$(gen): $(out_root)/xsd/xsd
-
-$(call include-dep,$(dep),$(obj),$(gen))
-
-
-# Convenience alias for default target.
-#
-$(out_base)/: $(driver)
-
-
-# Test.
-#
-test_targets := $(addprefix $(out_base)/.test-,$(tests))
-
-$(test): $(test_targets)
-$(test_targets): driver := $(driver)
-
-.PHONY: $(out_base)/.test-%
-$(out_base)/.test-%: $(driver) $(src_base)/test.xsd $(src_base)/test-%.xml $(src_base)/test-%.std
- $(call message,test $(out_base)/$*,$(driver) $(src_base)/test-$*.xml | diff -u $(src_base)/test-$*.std -)
-
-
-# Clean.
-#
-$(clean): $(driver).o.clean \
- $(addsuffix .cxx.clean,$(obj)) \
- $(addsuffix .cxx.clean,$(dep)) \
- $(addprefix $(out_base)/,$(xsd:.xsd=-pskel.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/parser/xsd-cxx.make)
-endif
-
-
-# Dependencies.
-#
-$(call import,$(src_root)/xsd/makefile)
diff --git a/tests/cxx/parser/validation/sequence/test-000.std b/tests/cxx/parser/validation/sequence/test-000.std
deleted file mode 100644
index 8a44762..0000000
--- a/tests/cxx/parser/validation/sequence/test-000.std
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- c = c
- d = d
- any: test#any
- {
- chars = aaa
- any: #a
- {
- chars = bbb
- }
- chars = ccc
- }
- f = f
- e = e
-}
-
-{
- a = a
- b = b
- c = c
- d = d
- d = d
- d = d
- any: other#any
- {
- chars = any
- }
- f = f
- e = e
- e = e
-}
-
-{
- a = a
- b = b
- c = c
- d = d
- d = d
- d = d
- any: other#any
- {
- chars = any
- }
- f = f
- e = e
- e = e
- c = c
- d = d
- any: test#any
- {
- chars = any
- }
- f = f
- e = e
-}
-
diff --git a/tests/cxx/parser/validation/sequence/test-000.xml b/tests/cxx/parser/validation/sequence/test-000.xml
deleted file mode 100644
index 9bcbd7e..0000000
--- a/tests/cxx/parser/validation/sequence/test-000.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<t:root xmlns:t="test"
- xmlns:o="other"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="test test.xsd">
-
- <sequence>
- <c>c</c>
- <d>d</d>
- <t:any>aaa<a>bbb</a>ccc</t:any>
- <f>f</f>
- <e>e</e>
- </sequence>
-
- <sequence>
- <a>a</a>
- <b>b</b>
- <c>c</c>
- <d>d</d>
- <d>d</d>
- <d>d</d>
- <o:any>any</o:any>
- <f>f</f>
- <e>e</e>
- <e>e</e>
- </sequence>
-
- <sequence>
- <a>a</a>
- <b>b</b>
- <c>c</c>
- <d>d</d>
- <d>d</d>
- <d>d</d>
- <o:any>any</o:any>
- <f>f</f>
- <e>e</e>
- <e>e</e>
-
- <c>c</c>
- <d>d</d>
- <t:any>any</t:any>
- <f>f</f>
- <e>e</e>
- </sequence>
-
-</t:root>
diff --git a/tests/cxx/parser/validation/sequence/test-001.std b/tests/cxx/parser/validation/sequence/test-001.std
deleted file mode 100644
index 20dea34..0000000
--- a/tests/cxx/parser/validation/sequence/test-001.std
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- :8:14 error: expected element 'a'
-}
-
diff --git a/tests/cxx/parser/validation/sequence/test-001.xml b/tests/cxx/parser/validation/sequence/test-001.xml
deleted file mode 100644
index 67d33ce..0000000
--- a/tests/cxx/parser/validation/sequence/test-001.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<t:root xmlns:t="test"
- xmlns:o="other"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="test test.xsd">
-
- <!-- fail minOccurs="1" -->
- <sequence>
- </sequence>
-
-</t:root>
diff --git a/tests/cxx/parser/validation/sequence/test-002.std b/tests/cxx/parser/validation/sequence/test-002.std
deleted file mode 100644
index 61343e7..0000000
--- a/tests/cxx/parser/validation/sequence/test-002.std
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- c = c
- d = d
- any: test#any
- {
- chars = any
- }
- f = f
- e = e
- c = c
- d = d
- any: test#any
- {
- chars = any
- }
- f = f
- e = e
- :20:8 error: unexpected element 'c'
-}
-
diff --git a/tests/cxx/parser/validation/sequence/test-002.xml b/tests/cxx/parser/validation/sequence/test-002.xml
deleted file mode 100644
index be25fcf..0000000
--- a/tests/cxx/parser/validation/sequence/test-002.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<t:root xmlns:t="test"
- xmlns:o="other"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="test test.xsd">
-
- <!-- fail maxOccurs="2" -->
- <sequence>
- <c>c</c>
- <d>d</d>
- <t:any>any</t:any>
- <f>f</f>
- <e>e</e>
-
- <c>c</c>
- <d>d</d>
- <t:any>any</t:any>
- <f>f</f>
- <e>e</e>
-
- <c>c</c>
- <d>d</d>
- <t:any>any</t:any>
- <f>f</f>
- <e>e</e>
- </sequence>
-
-</t:root>
diff --git a/tests/cxx/parser/validation/sequence/test-003.std b/tests/cxx/parser/validation/sequence/test-003.std
deleted file mode 100644
index c4e1e46..0000000
--- a/tests/cxx/parser/validation/sequence/test-003.std
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- a = a
- :9:8 error: expected element 'b' instead of 'a'
-}
-
diff --git a/tests/cxx/parser/validation/sequence/test-003.xml b/tests/cxx/parser/validation/sequence/test-003.xml
deleted file mode 100644
index af7d21d..0000000
--- a/tests/cxx/parser/validation/sequence/test-003.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<t:root xmlns:t="test"
- xmlns:o="other"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="test test.xsd">
-
- <!-- fail a maxOccurs="1" -->
- <sequence>
- <a>a</a>
- <a>a</a>
- <c>c</c>
- <d>d</d>
- <t:any>any</t:any>
- <f>f</f>
- <e>e</e>
- </sequence>
-
-</t:root>
diff --git a/tests/cxx/parser/validation/sequence/test-004.std b/tests/cxx/parser/validation/sequence/test-004.std
deleted file mode 100644
index f4c1d4d..0000000
--- a/tests/cxx/parser/validation/sequence/test-004.std
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- :8:8 error: expected element 'a' instead of 'd'
-}
-
diff --git a/tests/cxx/parser/validation/sequence/test-004.xml b/tests/cxx/parser/validation/sequence/test-004.xml
deleted file mode 100644
index a58b6d4..0000000
--- a/tests/cxx/parser/validation/sequence/test-004.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<t:root xmlns:t="test"
- xmlns:o="other"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="test test.xsd">
-
- <!-- fail c minOccurs="1" -->
- <sequence>
- <d>d</d>
- <t:any>any</t:any>
- <f>f</f>
- <e>e</e>
- </sequence>
-
-</t:root>
diff --git a/tests/cxx/parser/validation/sequence/test-005.std b/tests/cxx/parser/validation/sequence/test-005.std
deleted file mode 100644
index 9fa7904..0000000
--- a/tests/cxx/parser/validation/sequence/test-005.std
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- c = c
- d = d
- :10:13 error: expected element '##targetNamespace#*' instead of 'other1#any'
-}
-
diff --git a/tests/cxx/parser/validation/sequence/test-005.xml b/tests/cxx/parser/validation/sequence/test-005.xml
deleted file mode 100644
index e3dd03d..0000000
--- a/tests/cxx/parser/validation/sequence/test-005.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<t:root xmlns:t="test"
- xmlns:o1="other1"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="test test.xsd">
-
- <!-- fail any namespace="##targetNamespace other" -->
- <sequence>
- <c>c</c>
- <d>d</d>
- <o1:any>any</o1:any>
- <f>f</f>
- <e>e</e>
- </sequence>
-
-</t:root>
diff --git a/tests/cxx/parser/validation/sequence/test-006.std b/tests/cxx/parser/validation/sequence/test-006.std
deleted file mode 100644
index eb79f47..0000000
--- a/tests/cxx/parser/validation/sequence/test-006.std
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- c = c
- d = d
- any: test#any
- {
- chars = any
- }
- f = f
- e = e
- e = e
- :14:8 error: unexpected element 'e'
-}
-
diff --git a/tests/cxx/parser/validation/sequence/test-006.xml b/tests/cxx/parser/validation/sequence/test-006.xml
deleted file mode 100644
index e1ecd69..0000000
--- a/tests/cxx/parser/validation/sequence/test-006.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<t:root xmlns:t="test"
- xmlns:o="other"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="test test.xsd">
-
- <!-- fail e maxOccurs="2" -->
- <sequence>
- <c>c</c>
- <d>d</d>
- <t:any>any</t:any>
- <f>f</f>
- <e>e</e>
- <e>e</e>
- <e>e</e>
- </sequence>
-
-</t:root>
diff --git a/tests/cxx/parser/validation/sequence/test.xsd b/tests/cxx/parser/validation/sequence/test.xsd
deleted file mode 100644
index 8753f54..0000000
--- a/tests/cxx/parser/validation/sequence/test.xsd
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0"?>
-<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:t="test" targetNamespace="test">
-
- <complexType name="sequence">
- <sequence minOccurs="1" maxOccurs="2">
- <element name="a" type="string" minOccurs="0"/>
- <sequence>
- <element name="b" type="string" minOccurs="0"/>
- <element name="c" type="string"/>
- </sequence>
- <element name="d" type="string" maxOccurs="unbounded"/>
- <sequence>
- <any namespace="##targetNamespace other"/>
- <element name="f" type="string"/>
- </sequence>
- <element name="e" type="string" maxOccurs="2"/>
- </sequence>
- </complexType>
-
- <complexType name="type">
- <sequence>
- <element name="sequence" type="t:sequence" maxOccurs="unbounded"/>
- </sequence>
- </complexType>
-
- <element name="root" type="t:type"/>
-
-</schema>