From 5e527213a2430bb3018e5eebd909aef294edf9b5 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Fri, 18 Dec 2020 18:48:46 +0300 Subject: Switch to build2 --- .../parser/validation/built-in/any-type/driver.cxx | 154 -- .../parser/validation/built-in/any-type/makefile | 92 -- .../validation/built-in/any-type/test-000.std | 99 -- .../validation/built-in/any-type/test-000.xml | 41 - .../parser/validation/built-in/any-type/test.xsd | 31 - .../parser/validation/built-in/binary/driver.cxx | 153 -- .../cxx/parser/validation/built-in/binary/makefile | 70 - .../parser/validation/built-in/boolean/driver.cxx | 145 -- .../parser/validation/built-in/boolean/makefile | 70 - .../cxx/parser/validation/built-in/byte/driver.cxx | 256 ---- tests/cxx/parser/validation/built-in/byte/makefile | 70 - .../validation/built-in/date-time/driver.cxx | 1533 -------------------- .../parser/validation/built-in/date-time/makefile | 70 - .../parser/validation/built-in/float/driver.cxx | 285 ---- .../cxx/parser/validation/built-in/float/makefile | 70 - .../cxx/parser/validation/built-in/int/driver.cxx | 116 -- tests/cxx/parser/validation/built-in/int/makefile | 70 - .../parser/validation/built-in/integer/driver.cxx | 303 ---- .../parser/validation/built-in/integer/makefile | 70 - .../cxx/parser/validation/built-in/long/driver.cxx | 116 -- tests/cxx/parser/validation/built-in/long/makefile | 70 - tests/cxx/parser/validation/built-in/makefile | 17 - .../parser/validation/built-in/qname/driver.cxx | 105 -- .../cxx/parser/validation/built-in/qname/makefile | 70 - .../parser/validation/built-in/short/driver.cxx | 116 -- .../cxx/parser/validation/built-in/short/makefile | 70 - .../parser/validation/built-in/string/driver.cxx | 512 ------- .../cxx/parser/validation/built-in/string/makefile | 70 - .../cxx/parser/validation/built-in/uri/driver.cxx | 53 - tests/cxx/parser/validation/built-in/uri/makefile | 70 - 30 files changed, 4967 deletions(-) delete mode 100644 tests/cxx/parser/validation/built-in/any-type/driver.cxx delete mode 100644 tests/cxx/parser/validation/built-in/any-type/makefile delete mode 100644 tests/cxx/parser/validation/built-in/any-type/test-000.std delete mode 100644 tests/cxx/parser/validation/built-in/any-type/test-000.xml delete mode 100644 tests/cxx/parser/validation/built-in/any-type/test.xsd delete mode 100644 tests/cxx/parser/validation/built-in/binary/driver.cxx delete mode 100644 tests/cxx/parser/validation/built-in/binary/makefile delete mode 100644 tests/cxx/parser/validation/built-in/boolean/driver.cxx delete mode 100644 tests/cxx/parser/validation/built-in/boolean/makefile delete mode 100644 tests/cxx/parser/validation/built-in/byte/driver.cxx delete mode 100644 tests/cxx/parser/validation/built-in/byte/makefile delete mode 100644 tests/cxx/parser/validation/built-in/date-time/driver.cxx delete mode 100644 tests/cxx/parser/validation/built-in/date-time/makefile delete mode 100644 tests/cxx/parser/validation/built-in/float/driver.cxx delete mode 100644 tests/cxx/parser/validation/built-in/float/makefile delete mode 100644 tests/cxx/parser/validation/built-in/int/driver.cxx delete mode 100644 tests/cxx/parser/validation/built-in/int/makefile delete mode 100644 tests/cxx/parser/validation/built-in/integer/driver.cxx delete mode 100644 tests/cxx/parser/validation/built-in/integer/makefile delete mode 100644 tests/cxx/parser/validation/built-in/long/driver.cxx delete mode 100644 tests/cxx/parser/validation/built-in/long/makefile delete mode 100644 tests/cxx/parser/validation/built-in/makefile delete mode 100644 tests/cxx/parser/validation/built-in/qname/driver.cxx delete mode 100644 tests/cxx/parser/validation/built-in/qname/makefile delete mode 100644 tests/cxx/parser/validation/built-in/short/driver.cxx delete mode 100644 tests/cxx/parser/validation/built-in/short/makefile delete mode 100644 tests/cxx/parser/validation/built-in/string/driver.cxx delete mode 100644 tests/cxx/parser/validation/built-in/string/makefile delete mode 100644 tests/cxx/parser/validation/built-in/uri/driver.cxx delete mode 100644 tests/cxx/parser/validation/built-in/uri/makefile (limited to 'tests/cxx/parser/validation/built-in') diff --git a/tests/cxx/parser/validation/built-in/any-type/driver.cxx b/tests/cxx/parser/validation/built-in/any-type/driver.cxx deleted file mode 100644 index fd91247..0000000 --- a/tests/cxx/parser/validation/built-in/any-type/driver.cxx +++ /dev/null @@ -1,154 +0,0 @@ -// file : tests/cxx/parser/validation/built-in/any-type/driver.cxx -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test the anyType and anySimpleType validation. -// - -#include -#include -#include - -#include "test-pskel.hxx" - -using namespace std; -using namespace test; -using xml_schema::ro_string; - -struct any_type_pimpl: xml_schema::any_type_pimpl -{ - virtual void - pre () - { - cout << "{" << endl; - } - - virtual void - _start_any_element (ro_string const&, - ro_string const& n, - ro_string const*) - { - cout << " start any element '" << n << "'" << endl; - } - - virtual void - _end_any_element (ro_string const&, ro_string const& n) - { - cout << " end any element '" << n << "'" << endl; - } - - virtual void - _any_attribute (ro_string const&, - ro_string const& n, - ro_string const& v) - { - cout << " any attribute " << n << " = '" << v << "'" << endl; - } - - virtual void - _any_characters (ro_string const& s) - { - cout << " any text: '" << s << "'" << endl; - } - - virtual void - post_any_type () - { - cout << "}" << endl - << endl; - } -}; - -struct any_simple_type_pimpl: xml_schema::any_simple_type_pimpl -{ - virtual void - pre () - { - cout << "{" << endl; - } - - virtual void - _any_characters (ro_string const& s) - { - cout << " any text: '" << s << "'" << endl; - } - - virtual void - post_any_simple_type () - { - cout << "}" << endl - << endl; - } -}; - -struct any_extension_pimpl: virtual any_extension_pskel, - any_type_pimpl - -{ - virtual void - x (const string& v) - { - cout << " x = " << v << endl; - } -}; - -struct any_simple_extension_pimpl: virtual any_simple_extension_pskel, - any_simple_type_pimpl -{ - virtual void - x (const string& v) - { - cout << " x = " << v << 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; - - any_type_pimpl any_type_p; - any_simple_type_pimpl any_simple_type_p; - - any_extension_pimpl any_extension_p; - any_simple_extension_pimpl any_simple_extension_p; - - type_pimpl type_p; - - any_extension_p.parsers (string_p); - any_simple_extension_p.parsers (string_p); - - type_p.parsers (any_type_p, - any_extension_p, - any_simple_extension_p, - any_simple_type_p); - - xml_schema::document doc_p (type_p, "test", "root"); - - 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) - { - cerr << e << endl; - return 1; - } - catch (ios_base::failure const&) - { - cerr << "io failure" << endl; - return 1; - } -} diff --git a/tests/cxx/parser/validation/built-in/any-type/makefile b/tests/cxx/parser/validation/built-in/any-type/makefile deleted file mode 100644 index dfbb183..0000000 --- a/tests/cxx/parser/validation/built-in/any-type/makefile +++ /dev/null @@ -1,92 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/any-type/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 - -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/built-in/any-type/test-000.std b/tests/cxx/parser/validation/built-in/any-type/test-000.std deleted file mode 100644 index 84d7b3a..0000000 --- a/tests/cxx/parser/validation/built-in/any-type/test-000.std +++ /dev/null @@ -1,99 +0,0 @@ -{ - any text: '123abc' -} - -{ - any text: ' - ' - start any element 'any' - end any element 'any' - any text: ' - ' -} - -{ - any text: ' - ' - start any element 'any' - any attribute x = 'xxx' - any text: 'aaa' - start any element 'a' - any text: 'bbb' - end any element 'a' - any text: 'ccc' - end any element 'any' - any text: ' - ' -} - -{ - any attribute x = 'x' - any text: ' - ' - start any element 'a' - any text: 'a' - end any element 'a' - any text: ' - ' - start any element 'any' - any attribute x = 'xxx' - any text: 'aaa' - start any element 'a' - any text: 'bbb' - end any element 'a' - any text: 'ccc' - end any element 'any' - any text: ' - ' -} - -{ - any text: ' - ' - start any element 'any' - end any element 'any' - any text: ' - ' -} - -{ - any text: ' - ' - start any element 'any' - any attribute x = 'xxx' - any text: 'aaa' - start any element 'a' - any text: 'bbb' - end any element 'a' - any text: 'ccc' - end any element 'any' - any text: ' - ' -} - -{ - x = x - any text: ' - ' - start any element 'a' - any text: 'a' - end any element 'a' - any text: ' - ' - start any element 'any' - any attribute x = 'xxx' - any text: 'aaa' - start any element 'a' - any text: 'bbb' - end any element 'a' - any text: 'ccc' - end any element 'any' - any text: ' - ' -} - -{ - x = x - any text: 'abc123' -} - diff --git a/tests/cxx/parser/validation/built-in/any-type/test-000.xml b/tests/cxx/parser/validation/built-in/any-type/test-000.xml deleted file mode 100644 index 7875b7e..0000000 --- a/tests/cxx/parser/validation/built-in/any-type/test-000.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - aaabbbccc - - - - a - aaabbbccc - - - - - - - - - - aaabbbccc - - - - a - aaabbbccc - - - - - abc123 - - diff --git a/tests/cxx/parser/validation/built-in/any-type/test.xsd b/tests/cxx/parser/validation/built-in/any-type/test.xsd deleted file mode 100644 index 86a4e13..0000000 --- a/tests/cxx/parser/validation/built-in/any-type/test.xsd +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/cxx/parser/validation/built-in/binary/driver.cxx b/tests/cxx/parser/validation/built-in/binary/driver.cxx deleted file mode 100644 index 86575f4..0000000 --- a/tests/cxx/parser/validation/built-in/binary/driver.cxx +++ /dev/null @@ -1,153 +0,0 @@ -// file : tests/cxx/parser/validation/built-in/binary/driver.cxx -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test the built-in base64Binary and hexBinary types validation. -// -#include - -#include -#include - -using namespace xsd::cxx::parser::validating; - -template -bool -test_post_fail (T& p) -{ - try - { - p._post (); - } - catch (invalid_value const&) - { - return true; - } - - return false; -} - -int -main () -{ - typedef xsd::cxx::parser::buffer buffer; - - // Good. - // - - // hexBinary - // - { - hex_binary_pimpl p; - p.pre (); - p._pre (); - p._characters (" \t\n "); - p._characters (" "); - p._post (); - assert (*p.post_hex_binary () == buffer ()); - } - - { - hex_binary_pimpl p; - p.pre (); - p._pre (); - p._characters (" \t\n313"); - p._characters ("23334356162636a6b "); - p._post (); - assert (*p.post_hex_binary () == buffer ("12345abcjk", 10)); - } - - // base64Binary - // - { - base64_binary_pimpl p; - p.pre (); - p._pre (); - p._characters (" \t\n "); - p._characters ("MTIzND "); - p._characters ("VhYmNqaw = = "); - p._post (); - assert (*p.post_base64_binary () == buffer ("12345abcjk", 10)); - } - - { - base64_binary_pimpl p; - p.pre (); - p._pre (); - p._characters ("YQ=="); - p._post (); - assert (*p.post_base64_binary () == buffer ("a", 1)); - } - - { - base64_binary_pimpl p; - p.pre (); - p._pre (); - p._characters ("YWI="); - p._post (); - assert (*p.post_base64_binary () == buffer ("ab", 2)); - } - - { - base64_binary_pimpl p; - p.pre (); - p._pre (); - p._characters ("YWJj"); - p._post (); - assert (*p.post_base64_binary () == buffer ("abc", 3)); - } - - // Bad - // - - // hexBinary - // - { - hex_binary_pimpl p; - p.pre (); - p._pre (); - p._characters ("313"); - assert (test_post_fail (p)); - } - - { - hex_binary_pimpl p; - p.pre (); - p._pre (); - p._characters ("313233343X6162636a6b"); - assert (test_post_fail (p)); - } - - // base64Binary - // - { - base64_binary_pimpl p; - p.pre (); - p._pre (); - // p._characters (""); - assert (test_post_fail (p)); - } - - { - base64_binary_pimpl p; - p.pre (); - p._pre (); - p._characters ("YQ"); - assert (test_post_fail (p)); - } - - { - base64_binary_pimpl p; - p.pre (); - p._pre (); - p._characters ("=="); - assert (test_post_fail (p)); - } - - { - base64_binary_pimpl p; - p.pre (); - p._pre (); - p._characters ("MTIzNDVhYmNqaw=A"); - assert (test_post_fail (p)); - } -} diff --git a/tests/cxx/parser/validation/built-in/binary/makefile b/tests/cxx/parser/validation/built-in/binary/makefile deleted file mode 100644 index f0c5ae6..0000000 --- a/tests/cxx/parser/validation/built-in/binary/makefile +++ /dev/null @@ -1,70 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/binary/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make - -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.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) - -# Define XSD_CXX11 since we include libxsd headers directly. -# -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifeq ($(cxx_standard),c++11) -$(obj) $(dep): cpp_options += -DXSD_CXX11 -endif - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) - $(call message,test $$1,$$1,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver -$(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) diff --git a/tests/cxx/parser/validation/built-in/boolean/driver.cxx b/tests/cxx/parser/validation/built-in/boolean/driver.cxx deleted file mode 100644 index 6a21cb7..0000000 --- a/tests/cxx/parser/validation/built-in/boolean/driver.cxx +++ /dev/null @@ -1,145 +0,0 @@ -// file : tests/cxx/parser/validation/built-in/boolean/driver.cxx -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test the built-in boolean type validation. -// -#include - -#include -#include - -using namespace xsd::cxx::parser::validating; - -bool -test_post_fail (boolean_pimpl& p) -{ - try - { - p._post (); - } - catch (invalid_value const&) - { - return true; - } - - return false; -} - -int -main () -{ - // Good. - // - { - boolean_pimpl p; - p.pre (); - p._pre (); - p._characters ("true"); - p._post (); - assert (p.post_boolean ()); - } - - { - boolean_pimpl p; - p.pre (); - p._pre (); - p._characters ("1"); - p._post (); - assert (p.post_boolean ()); - } - - { - boolean_pimpl p; - p.pre (); - p._pre (); - p._characters ("false"); - p._post (); - assert (!p.post_boolean ()); - } - - { - boolean_pimpl p; - p.pre (); - p._pre (); - p._characters ("0"); - p._post (); - assert (!p.post_boolean ()); - } - - - { - boolean_pimpl p; - p.pre (); - p._pre (); - p._characters (" true "); - p._post (); - assert (p.post_boolean ()); - } - - { - boolean_pimpl p; - p.pre (); - p._pre (); - p._characters (" "); - p._characters (" \n "); - p._characters (" fa"); - p._characters ("l"); - p._characters ("se "); - p._characters (" \n "); - p._characters (" "); - p._post (); - assert (!p.post_boolean ()); - } - - // Bad - // - { - boolean_pimpl p; - p.pre (); - p._pre (); - //p._characters (""); - assert (test_post_fail (p)); - } - - { - boolean_pimpl p; - p.pre (); - p._pre (); - p._characters (""); - assert (test_post_fail (p)); - } - - { - boolean_pimpl p; - p.pre (); - p._pre (); - p._characters (" "); - assert (test_post_fail (p)); - } - - { - boolean_pimpl p; - p.pre (); - p._pre (); - p._characters (" "); - assert (test_post_fail (p)); - } - - { - boolean_pimpl p; - p.pre (); - p._pre (); - p._characters ("fal"); - p._characters ("s "); - p._characters ("e"); - assert (test_post_fail (p)); - } - - { - boolean_pimpl p; - p.pre (); - p._pre (); - p._characters ("01"); - assert (test_post_fail (p)); - } -} diff --git a/tests/cxx/parser/validation/built-in/boolean/makefile b/tests/cxx/parser/validation/built-in/boolean/makefile deleted file mode 100644 index 52f4e88..0000000 --- a/tests/cxx/parser/validation/built-in/boolean/makefile +++ /dev/null @@ -1,70 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/boolean/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make - -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.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) - -# Define XSD_CXX11 since we include libxsd headers directly. -# -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifeq ($(cxx_standard),c++11) -$(obj) $(dep): cpp_options += -DXSD_CXX11 -endif - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) - $(call message,test $$1,$$1,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver -$(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) diff --git a/tests/cxx/parser/validation/built-in/byte/driver.cxx b/tests/cxx/parser/validation/built-in/byte/driver.cxx deleted file mode 100644 index c0e2b99..0000000 --- a/tests/cxx/parser/validation/built-in/byte/driver.cxx +++ /dev/null @@ -1,256 +0,0 @@ -// file : tests/cxx/parser/validation/built-in/byte/driver.cxx -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test the built-in byte and unsigned byte types validation. -// -#include - -#include -#include - -using namespace xsd::cxx::parser::validating; - -template -bool -test_post_fail (T& p) -{ - try - { - p._post (); - } - catch (invalid_value const&) - { - return true; - } - - return false; -} - -int -main () -{ - // Good. - // - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("123"); - p._post (); - assert (p.post_byte () == 123); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("\t +123 \n "); - p._post (); - assert (p.post_byte () == 123); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("-123"); - p._post (); - assert (p.post_byte () == -123); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("+123"); - p._post (); - assert (p.post_byte () == 123); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("0000000000000000123"); - p._post (); - assert (p.post_byte () == 123); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("+0000000000000000123"); - p._post (); - assert (p.post_byte () == 123); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("-0000000000000000123"); - p._post (); - assert (p.post_byte () == -123); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("\t \n"); - p._characters (" -"); - p._characters ("00000"); - p._characters ("001"); - p._characters ("23 \n\t"); - p._post (); - assert (p.post_byte () == -123); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("-128"); - p._post (); - assert (p.post_byte () == -128); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("127"); - p._post (); - assert (p.post_byte () == 127); - } - - { - unsigned_byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("+123"); - p._post (); - assert (p.post_unsigned_byte () == 123); - } - - { - unsigned_byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("0"); - p._post (); - assert (p.post_unsigned_byte () == 0); - } - - { - unsigned_byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("255"); - p._post (); - assert (p.post_unsigned_byte () == 255); - } - - // Bad - // - { - byte_pimpl p; - p.pre (); - p._pre (); - // p._characters (""); - assert (test_post_fail (p)); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters (""); - assert (test_post_fail (p)); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters (" \n \t "); - assert (test_post_fail (p)); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("+"); - assert (test_post_fail (p)); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("-"); - assert (test_post_fail (p)); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("++01"); - assert (test_post_fail (p)); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("--01"); - assert (test_post_fail (p)); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("-01"); - p._characters (" "); - p._characters ("23 "); - assert (test_post_fail (p)); - } - - { - unsigned_byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("-123"); - assert (test_post_fail (p)); - } - - // Ranges - // - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("-129"); - assert (test_post_fail (p)); - } - - { - byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("128"); - assert (test_post_fail (p)); - } - - { - unsigned_byte_pimpl p; - p.pre (); - p._pre (); - p._characters ("256"); - assert (test_post_fail (p)); - } -} diff --git a/tests/cxx/parser/validation/built-in/byte/makefile b/tests/cxx/parser/validation/built-in/byte/makefile deleted file mode 100644 index afc8174..0000000 --- a/tests/cxx/parser/validation/built-in/byte/makefile +++ /dev/null @@ -1,70 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/byte/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make - -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.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) - -# Define XSD_CXX11 since we include libxsd headers directly. -# -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifeq ($(cxx_standard),c++11) -$(obj) $(dep): cpp_options += -DXSD_CXX11 -endif - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) - $(call message,test $$1,$$1,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver -$(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) diff --git a/tests/cxx/parser/validation/built-in/date-time/driver.cxx b/tests/cxx/parser/validation/built-in/date-time/driver.cxx deleted file mode 100644 index 8aa3943..0000000 --- a/tests/cxx/parser/validation/built-in/date-time/driver.cxx +++ /dev/null @@ -1,1533 +0,0 @@ -// file : tests/cxx/parser/validation/built-in/date-time/driver.cxx -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test the built-in date and time types validation. -// -#include - -#include -#include - -using namespace xsd::cxx::parser::validating; - -template -bool -test_post_fail (T& p) -{ - try - { - p._post (); - } - catch (invalid_value const&) - { - return true; - } - - return false; -} - -int -main () -{ - typedef xsd::cxx::parser::gday gday; - typedef xsd::cxx::parser::gmonth gmonth; - typedef xsd::cxx::parser::gyear gyear; - typedef xsd::cxx::parser::gmonth_day gmonth_day; - typedef xsd::cxx::parser::gyear_month gyear_month; - typedef xsd::cxx::parser::date date; - typedef xsd::cxx::parser::time time; - typedef xsd::cxx::parser::date_time date_time; - typedef xsd::cxx::parser::duration duration; - - // Good. - // - - // gday & time zone parsing - // - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters (" \t\n "); - p._characters ("---1"); - p._characters ("2+12:00"); - p._post (); - assert (p.post_gday () == gday (12, 12, 00)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---01"); - p._post (); - assert (p.post_gday () == gday (1)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---31"); - p._post (); - assert (p.post_gday () == gday (31)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---15Z"); - p._post (); - assert (p.post_gday () == gday (15, 0, 0)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---15-14:00"); - p._post (); - assert (p.post_gday () == gday (15, -14, 0)); - } - - // gmonth - // - { - gmonth_pimpl p; - p.pre (); - p._pre (); - p._characters (" \t\n "); - p._characters ("--1"); - p._characters ("0+12:00"); - p._post (); - assert (p.post_gmonth () == gmonth (10, 12, 0)); - } - - { - gmonth_pimpl p; - p.pre (); - p._pre (); - p._characters ("--01"); - p._post (); - assert (p.post_gmonth () == gmonth (1)); - } - - { - gmonth_pimpl p; - p.pre (); - p._pre (); - p._characters ("--12Z"); - p._post (); - assert (p.post_gmonth () == gmonth (12, 0, 0)); - } - - // gyear - // - { - gyear_pimpl p; - p.pre (); - p._pre (); - p._characters (" \t\n "); - p._characters ("20"); - p._characters ("07+12:00"); - p._post (); - assert (p.post_gyear () == gyear (2007, 12, 00)); - } - - { - gyear_pimpl p; - p.pre (); - p._pre (); - p._characters ("0001"); - p._post (); - assert (p.post_gyear () == gyear (1)); - } - - { - gyear_pimpl p; - p.pre (); - p._pre (); - p._characters ("-20000Z"); - p._post (); - assert (p.post_gyear () == gyear (-20000, 0, 0)); - } - - // gmonth_day - // - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - p._characters (" \t\n "); - p._characters ("--1"); - p._characters ("0-28+12:00 "); - p._post (); - assert (p.post_gmonth_day () == gmonth_day (10, 28, 12, 00)); - } - - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - p._characters ("--12-31"); - p._post (); - assert (p.post_gmonth_day () == gmonth_day (12, 31)); - } - - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - p._characters ("--01-01Z"); - p._post (); - assert (p.post_gmonth_day () == gmonth_day (1, 1, 0, 0)); - } - - // gyear_month - // - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters (" \t\n "); - p._characters ("200"); - p._characters ("7-12+12:00 "); - p._post (); - assert (p.post_gyear_month () == gyear_month (2007, 12, 12, 00)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("-2007-10"); - p._post (); - assert (p.post_gyear_month () == gyear_month (-2007, 10)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("20007-10Z"); - p._post (); - assert (p.post_gyear_month () == gyear_month (20007, 10, 0, 0)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("-20007-01"); - p._post (); - assert (p.post_gyear_month () == gyear_month (-20007, 1)); - } - - // date - // - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters (" \t\n "); - p._characters ("200"); - p._characters ("7-12-26+12:00 "); - p._post (); - assert (p.post_date () == date (2007, 12, 26, 12, 0)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("-2007-10-15"); - p._post (); - assert (p.post_date () == date (-2007, 10, 15)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("20007-12-31Z"); - p._post (); - assert (p.post_date () == date (20007, 12, 31, 0, 0)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("-20007-01-01"); - p._post (); - assert (p.post_date () == date (-20007, 1, 1)); - } - - // time - // - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters (" \t\n "); - p._characters ("12:"); - p._characters ("46:23.456+12:00 "); - p._post (); - assert (p.post_time () == time (12, 46, 23.456, 12, 0)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("12:13:14"); - p._post (); - assert (p.post_time () == time (12, 13, 14.0)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("12:13:14Z"); - p._post (); - assert (p.post_time () == time (12, 13, 14.0, 0, 0)); - } - - // date_time - // - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters (" \t\n "); - p._characters ("200"); - p._characters ("7-12-26T12:13:14.123+12:00 "); - p._post (); - assert (p.post_date_time () == - date_time (2007, 12, 26, 12, 13, 14.123, 12, 0)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("-2007-10-15T12:13:14"); - p._post (); - assert (p.post_date_time () == date_time (-2007, 10, 15, 12, 13, 14.0)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("20007-12-31T12:13:14Z"); - p._post (); - assert (p.post_date_time () == - date_time (20007, 12, 31, 12, 13, 14.0, 0, 0)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("-20007-01-01T12:13:14"); - p._post (); - assert (p.post_date_time () == date_time (-20007, 1, 1, 12, 13, 14.0)); - } - - // duration - // - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters (" \t\n "); - p._characters ("-P200"); - p._characters ("7Y13M32DT25H61M61.123S "); - p._post (); - assert (p.post_duration () == - duration (true, 2007, 13, 32, 25, 61, 61.123)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("P1Y"); - p._post (); - assert (p.post_duration () == duration (false, 1, 0, 0, 0, 0, 0.0)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("P1M"); - p._post (); - assert (p.post_duration () == duration (false, 0, 1, 0, 0, 0, 0.0)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("P1D"); - p._post (); - assert (p.post_duration () == duration (false, 0, 0, 1, 0, 0, 0.0)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("PT1H"); - p._post (); - assert (p.post_duration () == duration (false, 0, 0, 0, 1, 0, 0.0)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("PT1M"); - p._post (); - assert (p.post_duration () == duration (false, 0, 0, 0, 0, 1, 0.0)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("PT1.1S"); - p._post (); - assert (p.post_duration () == duration (false, 0, 0, 0, 0, 0, 1.1)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("P1YT1S"); - p._post (); - assert (p.post_duration () == duration (false, 1, 0, 0, 0, 0, 1.0)); - } - - // Bad - // - - // gday & time zone parsing - // - { - gday_pimpl p; - p.pre (); - p._pre (); - // p._characters (""); - assert (test_post_fail (p)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("--12"); - assert (test_post_fail (p)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---1"); - assert (test_post_fail (p)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---00"); - assert (test_post_fail (p)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---32"); - assert (test_post_fail (p)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---2X"); - assert (test_post_fail (p)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---12asd"); - assert (test_post_fail (p)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---12X"); - assert (test_post_fail (p)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---1212:00"); - assert (test_post_fail (p)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---12+2:00"); - assert (test_post_fail (p)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---12+1200"); - assert (test_post_fail (p)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---12+15:00"); - assert (test_post_fail (p)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---12+12:60"); - assert (test_post_fail (p)); - } - - { - gday_pimpl p; - p.pre (); - p._pre (); - p._characters ("---12+14:01"); - assert (test_post_fail (p)); - } - - // gmonth - // - { - gmonth_pimpl p; - p.pre (); - p._pre (); - // p._characters (""); - assert (test_post_fail (p)); - } - - { - gmonth_pimpl p; - p.pre (); - p._pre (); - p._characters ("-12"); - assert (test_post_fail (p)); - } - - { - gmonth_pimpl p; - p.pre (); - p._pre (); - p._characters ("--00"); - assert (test_post_fail (p)); - } - - { - gmonth_pimpl p; - p.pre (); - p._pre (); - p._characters ("--13"); - assert (test_post_fail (p)); - } - - { - gmonth_pimpl p; - p.pre (); - p._pre (); - p._characters ("--1X"); - assert (test_post_fail (p)); - } - - { - gmonth_pimpl p; - p.pre (); - p._pre (); - p._characters ("--11+12:3o"); - assert (test_post_fail (p)); - } - - // gyear - // - { - gyear_pimpl p; - p.pre (); - p._pre (); - // p._characters (""); - assert (test_post_fail (p)); - } - - { - gyear_pimpl p; - p.pre (); - p._pre (); - p._characters ("207"); - assert (test_post_fail (p)); - } - - { - gyear_pimpl p; - p.pre (); - p._pre (); - p._characters ("-207"); - assert (test_post_fail (p)); - } - - { - gyear_pimpl p; - p.pre (); - p._pre (); - p._characters ("-0000"); - assert (test_post_fail (p)); - } - - { - gyear_pimpl p; - p.pre (); - p._pre (); - p._characters ("20X7"); - assert (test_post_fail (p)); - } - - { - gyear_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007+12:3o"); - assert (test_post_fail (p)); - } - - // gmonth_day - // - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - // p._characters (""); - assert (test_post_fail (p)); - } - - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - p._characters ("-12-12"); - assert (test_post_fail (p)); - } - - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - p._characters ("--1212"); - assert (test_post_fail (p)); - } - - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - p._characters ("--12?12"); - assert (test_post_fail (p)); - } - - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - p._characters ("--00-12"); - assert (test_post_fail (p)); - } - - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - p._characters ("--12-00"); - assert (test_post_fail (p)); - } - - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - p._characters ("--13-23"); - assert (test_post_fail (p)); - } - - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - p._characters ("--12-32"); - assert (test_post_fail (p)); - } - - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - p._characters ("--1X-12"); - assert (test_post_fail (p)); - } - - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - p._characters ("--12-2X"); - assert (test_post_fail (p)); - } - - { - gmonth_day_pimpl p; - p.pre (); - p._pre (); - p._characters ("--11-11+12:3o"); - assert (test_post_fail (p)); - } - - // gyear_month - // - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - // p._characters (""); - assert (test_post_fail (p)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("207-01"); - assert (test_post_fail (p)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("-207-01"); - assert (test_post_fail (p)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("0000-01"); - assert (test_post_fail (p)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("20X7-01"); - assert (test_post_fail (p)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007"); - assert (test_post_fail (p)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007?12"); - assert (test_post_fail (p)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-0"); - assert (test_post_fail (p)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-00"); - assert (test_post_fail (p)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-13"); - assert (test_post_fail (p)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-1X"); - assert (test_post_fail (p)); - } - - { - gyear_month_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01+12:3o"); - assert (test_post_fail (p)); - } - - // date - // - { - date_pimpl p; - p.pre (); - p._pre (); - // p._characters (""); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("207-01-01"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("-207-01-01"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("0000-01-01"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("20X7-01-01"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007?01-01"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-0-01"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-00-01"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-13-01"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-1X-01"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10?12"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10-"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10-0"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10-00"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10-32"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10-2X"); - assert (test_post_fail (p)); - } - - { - date_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01+12:3o"); - assert (test_post_fail (p)); - } - - // time - // - { - time_pimpl p; - p.pre (); - p._pre (); - // p._characters (""); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("1:01:01"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2X:01:01"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23?01:01"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23:0:01"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23:60:01"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23:4X:01"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23:10"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23:10?12"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23:10:"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23:10:0"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23:10:01."); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23:10:60"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23:10:2X"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("24:01:00"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("24:00:01"); - assert (test_post_fail (p)); - } - - { - time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23:01:01+12:3o"); - assert (test_post_fail (p)); - } - - // date_time - // - { - date_time_pimpl p; - p.pre (); - p._pre (); - // p._characters (""); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("207-01-01T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("-207-01-01T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("0000-01-01T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("20X7-01-01T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007?01-01T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-0-01T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-00-01T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-13-01T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-1X-01T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10?12T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10-T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10-0T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10-00T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10-32T12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-10-2XT12:13:14"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T1:01:01"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T2X:01:01"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T23"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T23?01:01"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T23:0:01"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T23:60:01"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T23:4X:01"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T23:10"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T23:10?12"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T23:10:"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T23:10:0"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T23:10:01."); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T23:10:60"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T23:10:2X"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T24:01:00"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T24:00:01"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("23:01:01+12:3o"); - assert (test_post_fail (p)); - } - - { - date_time_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007-01-01T12:13:14+12:3o"); - assert (test_post_fail (p)); - } - - // duration - // - { - duration_pimpl p; - p.pre (); - p._pre (); - // p._characters (""); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("2007Y"); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("-2007Y"); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("P-2007Y"); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("P-1M"); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("P-1D"); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("PT-1H"); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("PT-1M"); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("PT-1.1S"); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("P1H1M1S"); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("P1M1Y"); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("PT1S1H"); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("PT1H1Y"); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("P1Ygarbage"); - assert (test_post_fail (p)); - } - - { - duration_pimpl p; - p.pre (); - p._pre (); - p._characters ("P1YT"); - assert (test_post_fail (p)); - } -} diff --git a/tests/cxx/parser/validation/built-in/date-time/makefile b/tests/cxx/parser/validation/built-in/date-time/makefile deleted file mode 100644 index 42d60e8..0000000 --- a/tests/cxx/parser/validation/built-in/date-time/makefile +++ /dev/null @@ -1,70 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/date-time/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make - -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.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) - -# Define XSD_CXX11 since we include libxsd headers directly. -# -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifeq ($(cxx_standard),c++11) -$(obj) $(dep): cpp_options += -DXSD_CXX11 -endif - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) - $(call message,test $$1,$$1,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver -$(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) diff --git a/tests/cxx/parser/validation/built-in/float/driver.cxx b/tests/cxx/parser/validation/built-in/float/driver.cxx deleted file mode 100644 index 7563aa7..0000000 --- a/tests/cxx/parser/validation/built-in/float/driver.cxx +++ /dev/null @@ -1,285 +0,0 @@ -// file : tests/cxx/parser/validation/built-in/float/driver.cxx -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test the built-in float, double, and decimal types validation. -// -#include -#include - -#include -#include - -using namespace xsd::cxx::parser::validating; - -template -bool -test_post_fail (T& p) -{ - try - { - p._post (); - } - catch (invalid_value const&) - { - return true; - } - - return false; -} - -int -main () -{ - // Good. - // - - // float - // - { - float_pimpl p; - p.pre (); - p._pre (); - p._characters (" 0000123.456 "); - p._post (); - assert (p.post_float () == 123.456F); - } - - { - float_pimpl p; - p.pre (); - p._pre (); - p._characters ("-12.345E2"); - p._post (); - assert (p.post_float () == -12.345E2F); - } - - { - float_pimpl p; - p.pre (); - p._pre (); - p._characters ("0"); - p._post (); - assert (p.post_float () == 0.0F); - } - - { - float_pimpl p; - p.pre (); - p._pre (); - p._characters ("-0"); - p._post (); - assert (p.post_float () == -0.0F); - } - - { - float_pimpl p; - p.pre (); - p._pre (); - p._characters ("INF"); - p._post (); - assert (isinf (p.post_float ())); - } - - { - float_pimpl p; - p.pre (); - p._pre (); - p._characters ("-INF"); - p._post (); - assert (isinf (p.post_float ())); - } - - { - float_pimpl p; - p.pre (); - p._pre (); - p._characters ("NaN"); - p._post (); - assert (isnan (p.post_float ())); - } - - // double - // - { - double_pimpl p; - p.pre (); - p._pre (); - p._characters (" 0000123.456789 "); - p._post (); - assert (p.post_double () == 123.456789); - } - - { - double_pimpl p; - p.pre (); - p._pre (); - p._characters ("-12.3456789E2"); - p._post (); - assert (p.post_double () == -12.3456789E2); - } - - { - double_pimpl p; - p.pre (); - p._pre (); - p._characters ("0"); - p._post (); - assert (p.post_double () == 0.0); - } - - { - double_pimpl p; - p.pre (); - p._pre (); - p._characters ("-0"); - p._post (); - assert (p.post_double () == -0.0); - } - - { - double_pimpl p; - p.pre (); - p._pre (); - p._characters ("INF"); - p._post (); - assert (isinf (p.post_double ())); - } - - { - double_pimpl p; - p.pre (); - p._pre (); - p._characters ("-INF"); - p._post (); - assert (isinf (p.post_double ())); - } - - { - double_pimpl p; - p.pre (); - p._pre (); - p._characters ("NaN"); - p._post (); - assert (isnan (p.post_double ())); - } - - // decimal - // - { - decimal_pimpl p; - p.pre (); - p._pre (); - p._characters (" 0000123.456789 "); - p._post (); - assert (p.post_decimal () == 123.456789); - } - - { - decimal_pimpl p; - p.pre (); - p._pre (); - p._characters ("-123.45678912345"); - p._post (); - assert (p.post_decimal () == -123.45678912345); - } - - { - decimal_pimpl p; - p.pre (); - p._pre (); - p._characters ("0"); - p._post (); - assert (p.post_decimal () == 0.0); - } - - { - decimal_pimpl p; - p.pre (); - p._pre (); - p._characters ("-0"); - p._post (); - assert (p.post_decimal () == -0.0); - } - - - // Bad - // - - // float - // - { - float_pimpl p; - p.pre (); - p._pre (); - p._characters ("+INF"); - assert (test_post_fail (p)); - } - - { - float_pimpl p; - p.pre (); - p._pre (); - p._characters ("1.45 E2"); - assert (test_post_fail (p)); - } - - // double - // - { - double_pimpl p; - p.pre (); - p._pre (); - p._characters ("+INF"); - assert (test_post_fail (p)); - } - - { - double_pimpl p; - p.pre (); - p._pre (); - p._characters ("1.45 E2"); - assert (test_post_fail (p)); - } - - // decimal - // - { - decimal_pimpl p; - p.pre (); - p._pre (); - p._characters ("INF"); - assert (test_post_fail (p)); - } - - { - decimal_pimpl p; - p.pre (); - p._pre (); - p._characters ("+INF"); - assert (test_post_fail (p)); - } - - { - decimal_pimpl p; - p.pre (); - p._pre (); - p._characters ("-INF"); - assert (test_post_fail (p)); - } - - { - decimal_pimpl p; - p.pre (); - p._pre (); - p._characters ("NaN"); - assert (test_post_fail (p)); - } - - { - decimal_pimpl p; - p.pre (); - p._pre (); - p._characters ("1.45 2"); - assert (test_post_fail (p)); - } -} diff --git a/tests/cxx/parser/validation/built-in/float/makefile b/tests/cxx/parser/validation/built-in/float/makefile deleted file mode 100644 index 68fac22..0000000 --- a/tests/cxx/parser/validation/built-in/float/makefile +++ /dev/null @@ -1,70 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/float/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make - -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.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) - -# Define XSD_CXX11 since we include libxsd headers directly. -# -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifeq ($(cxx_standard),c++11) -$(obj) $(dep): cpp_options += -DXSD_CXX11 -endif - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) - $(call message,test $$1,$$1,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver -$(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) diff --git a/tests/cxx/parser/validation/built-in/int/driver.cxx b/tests/cxx/parser/validation/built-in/int/driver.cxx deleted file mode 100644 index 18e83ca..0000000 --- a/tests/cxx/parser/validation/built-in/int/driver.cxx +++ /dev/null @@ -1,116 +0,0 @@ -// file : tests/cxx/parser/validation/built-in/int/driver.cxx -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test the built-in int and unsigned int types validation. -// -#include - -#include -#include - -using namespace xsd::cxx::parser::validating; - -template -bool -test_post_fail (T& p) -{ - try - { - p._post (); - } - catch (invalid_value const&) - { - return true; - } - - return false; -} - -int -main () -{ - // Good. - // - { - int_pimpl p; - p.pre (); - p._pre (); - p._characters ("-2147483648"); - p._post (); - assert (p.post_int () == -2147483648); - } - - { - int_pimpl p; - p.pre (); - p._pre (); - p._characters ("0"); - p._post (); - assert (p.post_int () == 0); - } - - { - int_pimpl p; - p.pre (); - p._pre (); - p._characters ("2147483647"); - p._post (); - assert (p.post_int () == 2147483647); - } - - { - unsigned_int_pimpl p; - p.pre (); - p._pre (); - p._characters ("0"); - p._post (); - assert (p.post_unsigned_int () == 0); - } - - { - unsigned_int_pimpl p; - p.pre (); - p._pre (); - p._characters ("4294967295"); - p._post (); - assert (p.post_unsigned_int () == 4294967295); - } - - // Bad - // - - { - unsigned_int_pimpl p; - p.pre (); - p._pre (); - p._characters ("-123"); - assert (test_post_fail (p)); - } - - - // Ranges - // - { - int_pimpl p; - p.pre (); - p._pre (); - p._characters ("-2147483649"); - assert (test_post_fail (p)); - } - - { - int_pimpl p; - p.pre (); - p._pre (); - p._characters ("2147483648"); - assert (test_post_fail (p)); - } - - { - unsigned_int_pimpl p; - p.pre (); - p._pre (); - p._characters ("4294967296"); - assert (test_post_fail (p)); - } -} diff --git a/tests/cxx/parser/validation/built-in/int/makefile b/tests/cxx/parser/validation/built-in/int/makefile deleted file mode 100644 index 7a13105..0000000 --- a/tests/cxx/parser/validation/built-in/int/makefile +++ /dev/null @@ -1,70 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/int/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make - -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.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) - -# Define XSD_CXX11 since we include libxsd headers directly. -# -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifeq ($(cxx_standard),c++11) -$(obj) $(dep): cpp_options += -DXSD_CXX11 -endif - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) - $(call message,test $$1,$$1,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver -$(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) diff --git a/tests/cxx/parser/validation/built-in/integer/driver.cxx b/tests/cxx/parser/validation/built-in/integer/driver.cxx deleted file mode 100644 index 7eeb708..0000000 --- a/tests/cxx/parser/validation/built-in/integer/driver.cxx +++ /dev/null @@ -1,303 +0,0 @@ -// file : tests/cxx/parser/validation/built-in/int/driver.cxx -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test the built-in integer & friends types validation. -// -#include - -#include -#include -#include - -#include -#include - -using namespace std; -using namespace xsd::cxx::parser::validating; - -template -bool -test_post_fail (T& p) -{ - try - { - p._post (); - } - catch (invalid_value const&) - { - return true; - } - - return false; -} - -int -main () -{ - // Good. - // - - std::string min; - std::string max; - std::string umax; - - { - ostringstream ostr; - ostr << LLONG_MIN; - min = ostr.str (); - } - - { - ostringstream ostr; - ostr << LLONG_MAX; - max = ostr.str (); - } - - { - ostringstream ostr; - ostr << ULLONG_MAX; - umax = ostr.str (); - } - - // integer - // - { - integer_pimpl p; - p.pre (); - p._pre (); - p._characters (min.c_str ()); - p._post (); - assert (p.post_integer () == LLONG_MIN); - } - - { - integer_pimpl p; - p.pre (); - p._pre (); - p._characters ("0"); - p._post (); - assert (p.post_integer () == 0); - } - - { - integer_pimpl p; - p.pre (); - p._pre (); - p._characters (max.c_str ()); - p._post (); - assert (p.post_integer () == LLONG_MAX); - } - - // negative_integer - // - { - negative_integer_pimpl p; - p.pre (); - p._pre (); - p._characters (min.c_str ()); - p._post (); - assert (p.post_negative_integer () == LLONG_MIN); - } - - { - negative_integer_pimpl p; - p.pre (); - p._pre (); - p._characters ("-1"); - p._post (); - assert (p.post_negative_integer () == -1); - } - - // non_positive_integer - // - { - non_positive_integer_pimpl p; - p.pre (); - p._pre (); - p._characters (min.c_str ()); - p._post (); - assert (p.post_non_positive_integer () == LLONG_MIN); - } - - { - non_positive_integer_pimpl p; - p.pre (); - p._pre (); - p._characters ("+0"); - p._post (); - assert (p.post_non_positive_integer () == 0); - } - - // positive_integer - // - { - positive_integer_pimpl p; - p.pre (); - p._pre (); - p._characters ("1"); - p._post (); - assert (p.post_positive_integer () == 1); - } - - { - positive_integer_pimpl p; - p.pre (); - p._pre (); - p._characters (umax.c_str ()); - p._post (); - assert (p.post_positive_integer () == ULLONG_MAX); - } - - // non_negative_integer - // - /* - { - non_negative_integer_pimpl p; - p.pre (); - p._pre (); - p._characters ("-0"); - p._post (); - assert (p.post_non_negative_integer () == 0); - } - */ - - { - non_negative_integer_pimpl p; - p.pre (); - p._pre (); - p._characters ("0"); - p._post (); - assert (p.post_non_negative_integer () == 0); - } - - { - non_negative_integer_pimpl p; - p.pre (); - p._pre (); - p._characters (umax.c_str ()); - p._post (); - assert (p.post_non_negative_integer () == ULLONG_MAX); - } - - - // Bad - // - - std::string past_min (min); - std::string past_max (max); - std::string past_umax (umax); - - assert (*past_min.rbegin () != '9'); - assert (*past_max.rbegin () != '9'); - assert (*past_umax.rbegin () != '9'); - - (*past_min.rbegin ())++; - (*past_max.rbegin ())++; - (*past_umax.rbegin ())++; - - // integer - // - { - integer_pimpl p; - p.pre (); - p._pre (); - p._characters (past_min.c_str ()); - assert (test_post_fail (p)); - } - - { - integer_pimpl p; - p.pre (); - p._pre (); - p._characters (past_max.c_str ()); - assert (test_post_fail (p)); - } - - // negative_integer - // - { - negative_integer_pimpl p; - p.pre (); - p._pre (); - p._characters (past_min.c_str ()); - assert (test_post_fail (p)); - } - - { - negative_integer_pimpl p; - p.pre (); - p._pre (); - p._characters ("-0"); - assert (test_post_fail (p)); - } - - { - negative_integer_pimpl p; - p.pre (); - p._pre (); - p._characters ("1"); - assert (test_post_fail (p)); - } - - // non_positive_integer - // - { - non_positive_integer_pimpl p; - p.pre (); - p._pre (); - p._characters (past_min.c_str ()); - assert (test_post_fail (p)); - } - - { - non_positive_integer_pimpl p; - p.pre (); - p._pre (); - p._characters ("1"); - assert (test_post_fail (p)); - } - - // positive_integer - // - { - positive_integer_pimpl p; - p.pre (); - p._pre (); - p._characters ("-1"); - assert (test_post_fail (p)); - } - - { - positive_integer_pimpl p; - p.pre (); - p._pre (); - p._characters ("+0"); - assert (test_post_fail (p)); - } - - { - positive_integer_pimpl p; - p.pre (); - p._pre (); - p._characters (past_umax.c_str ()); - assert (test_post_fail (p)); - } - - // non_negative_integer - // - { - non_negative_integer_pimpl p; - p.pre (); - p._pre (); - p._characters ("-1"); - assert (test_post_fail (p)); - } - - { - non_negative_integer_pimpl p; - p.pre (); - p._pre (); - p._characters (past_umax.c_str ()); - assert (test_post_fail (p)); - } -} diff --git a/tests/cxx/parser/validation/built-in/integer/makefile b/tests/cxx/parser/validation/built-in/integer/makefile deleted file mode 100644 index 66a7dd6..0000000 --- a/tests/cxx/parser/validation/built-in/integer/makefile +++ /dev/null @@ -1,70 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/integer/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make - -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.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) - -# Define XSD_CXX11 since we include libxsd headers directly. -# -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifeq ($(cxx_standard),c++11) -$(obj) $(dep): cpp_options += -DXSD_CXX11 -endif - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) - $(call message,test $$1,$$1,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver -$(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) diff --git a/tests/cxx/parser/validation/built-in/long/driver.cxx b/tests/cxx/parser/validation/built-in/long/driver.cxx deleted file mode 100644 index a44ae70..0000000 --- a/tests/cxx/parser/validation/built-in/long/driver.cxx +++ /dev/null @@ -1,116 +0,0 @@ -// file : tests/cxx/parser/validation/built-in/long/driver.cxx -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test the built-in long and unsigned long types validation. -// -#include - -#include -#include - -using namespace xsd::cxx::parser::validating; - -template -bool -test_post_fail (T& p) -{ - try - { - p._post (); - } - catch (invalid_value const&) - { - return true; - } - - return false; -} - -int -main () -{ - // Good. - // - { - long_pimpl p; - p.pre (); - p._pre (); - p._characters ("-9223372036854775808"); - p._post (); - assert (p.post_long () == (-9223372036854775807LL - 1)); - } - - { - long_pimpl p; - p.pre (); - p._pre (); - p._characters ("0"); - p._post (); - assert (p.post_long () == 0); - } - - { - long_pimpl p; - p.pre (); - p._pre (); - p._characters ("9223372036854775807"); - p._post (); - assert (p.post_long () == 9223372036854775807LL); - } - - { - unsigned_long_pimpl p; - p.pre (); - p._pre (); - p._characters ("0"); - p._post (); - assert (p.post_unsigned_long () == 0); - } - - { - unsigned_long_pimpl p; - p.pre (); - p._pre (); - p._characters ("18446744073709551615"); - p._post (); - assert (p.post_unsigned_long () == 18446744073709551615ULL); - } - - // Bad - // - - { - unsigned_long_pimpl p; - p.pre (); - p._pre (); - p._characters ("-123"); - assert (test_post_fail (p)); - } - - - // Ranges - // - { - long_pimpl p; - p.pre (); - p._pre (); - p._characters ("-9223372036854775809"); - assert (test_post_fail (p)); - } - - { - long_pimpl p; - p.pre (); - p._pre (); - p._characters ("9223372036854775808"); - assert (test_post_fail (p)); - } - - { - unsigned_long_pimpl p; - p.pre (); - p._pre (); - p._characters ("18446744073709551616"); - assert (test_post_fail (p)); - } -} diff --git a/tests/cxx/parser/validation/built-in/long/makefile b/tests/cxx/parser/validation/built-in/long/makefile deleted file mode 100644 index 5854363..0000000 --- a/tests/cxx/parser/validation/built-in/long/makefile +++ /dev/null @@ -1,70 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/long/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make - -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.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) - -# Define XSD_CXX11 since we include libxsd headers directly. -# -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifeq ($(cxx_standard),c++11) -$(obj) $(dep): cpp_options += -DXSD_CXX11 -endif - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) - $(call message,test $$1,$$1,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver -$(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) diff --git a/tests/cxx/parser/validation/built-in/makefile b/tests/cxx/parser/validation/built-in/makefile deleted file mode 100644 index 79eab4f..0000000 --- a/tests/cxx/parser/validation/built-in/makefile +++ /dev/null @@ -1,17 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make - -tests := any-type binary boolean byte date-time float int integer long \ -qname short string uri - -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/tests/cxx/parser/validation/built-in/qname/driver.cxx b/tests/cxx/parser/validation/built-in/qname/driver.cxx deleted file mode 100644 index 6da6f2f..0000000 --- a/tests/cxx/parser/validation/built-in/qname/driver.cxx +++ /dev/null @@ -1,105 +0,0 @@ -// file : tests/cxx/parser/validation/built-in/qname/driver.cxx -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test the built-in QName type validation. -// -#include - -#include -#include - -using namespace xsd::cxx::parser::validating; - -bool -test_post_fail (qname_pimpl& p) -{ - try - { - p._post (); - } - catch (invalid_value const&) - { - return true; - } - - return false; -} - -int -main () -{ - typedef xsd::cxx::parser::qname qname; - - // Good. - // - { - qname_pimpl p; - p.pre (); - p._pre (); - p._characters (" xsi"); - p._characters (":"); - p._characters ("schemaLocation"); - p._post (); - assert (p.post_qname () == qname ("xsi", "schemaLocation")); - } - - { - qname_pimpl p; - p.pre (); - p._pre (); - p._characters ("schemaLocation"); - p._post (); - assert (p.post_qname () == qname ("schemaLocation")); - } - - - // Bad - // - { - qname_pimpl p; - p.pre (); - p._pre (); - //p._characters (""); - assert (test_post_fail (p)); - } - - { - qname_pimpl p; - p.pre (); - p._pre (); - p._characters (":"); - assert (test_post_fail (p)); - } - - { - qname_pimpl p; - p.pre (); - p._pre (); - p._characters ("xsi:"); - assert (test_post_fail (p)); - } - - { - qname_pimpl p; - p.pre (); - p._pre (); - p._characters (":schemaLocation"); - assert (test_post_fail (p)); - } - - { - qname_pimpl p; - p.pre (); - p._pre (); - p._characters ("x?i:schemaLocation"); - assert (test_post_fail (p)); - } - - { - qname_pimpl p; - p.pre (); - p._pre (); - p._characters ("xsi:schema Location"); - assert (test_post_fail (p)); - } -} diff --git a/tests/cxx/parser/validation/built-in/qname/makefile b/tests/cxx/parser/validation/built-in/qname/makefile deleted file mode 100644 index c442812..0000000 --- a/tests/cxx/parser/validation/built-in/qname/makefile +++ /dev/null @@ -1,70 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/qname/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make - -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.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) - -# Define XSD_CXX11 since we include libxsd headers directly. -# -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifeq ($(cxx_standard),c++11) -$(obj) $(dep): cpp_options += -DXSD_CXX11 -endif - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) - $(call message,test $$1,$$1,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver -$(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) diff --git a/tests/cxx/parser/validation/built-in/short/driver.cxx b/tests/cxx/parser/validation/built-in/short/driver.cxx deleted file mode 100644 index 42009a1..0000000 --- a/tests/cxx/parser/validation/built-in/short/driver.cxx +++ /dev/null @@ -1,116 +0,0 @@ -// file : tests/cxx/parser/validation/built-in/short/driver.cxx -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test the built-in short and unsigned short types validation. -// -#include - -#include -#include - -using namespace xsd::cxx::parser::validating; - -template -bool -test_post_fail (T& p) -{ - try - { - p._post (); - } - catch (invalid_value const&) - { - return true; - } - - return false; -} - -int -main () -{ - // Good. - // - { - short_pimpl p; - p.pre (); - p._pre (); - p._characters ("-32768"); - p._post (); - assert (p.post_short () == -32768); - } - - { - short_pimpl p; - p.pre (); - p._pre (); - p._characters ("0"); - p._post (); - assert (p.post_short () == 0); - } - - { - short_pimpl p; - p.pre (); - p._pre (); - p._characters ("32767"); - p._post (); - assert (p.post_short () == 32767); - } - - { - unsigned_short_pimpl p; - p.pre (); - p._pre (); - p._characters ("0"); - p._post (); - assert (p.post_unsigned_short () == 0); - } - - { - unsigned_short_pimpl p; - p.pre (); - p._pre (); - p._characters ("65535"); - p._post (); - assert (p.post_unsigned_short () == 65535); - } - - // Bad - // - - { - unsigned_short_pimpl p; - p.pre (); - p._pre (); - p._characters ("-1234"); - assert (test_post_fail (p)); - } - - - // Ranges - // - { - short_pimpl p; - p.pre (); - p._pre (); - p._characters ("-32769"); - assert (test_post_fail (p)); - } - - { - short_pimpl p; - p.pre (); - p._pre (); - p._characters ("32768"); - assert (test_post_fail (p)); - } - - { - unsigned_short_pimpl p; - p.pre (); - p._pre (); - p._characters ("65536"); - assert (test_post_fail (p)); - } -} diff --git a/tests/cxx/parser/validation/built-in/short/makefile b/tests/cxx/parser/validation/built-in/short/makefile deleted file mode 100644 index 05f8e2c..0000000 --- a/tests/cxx/parser/validation/built-in/short/makefile +++ /dev/null @@ -1,70 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/short/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make - -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.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) - -# Define XSD_CXX11 since we include libxsd headers directly. -# -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifeq ($(cxx_standard),c++11) -$(obj) $(dep): cpp_options += -DXSD_CXX11 -endif - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) - $(call message,test $$1,$$1,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver -$(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) diff --git a/tests/cxx/parser/validation/built-in/string/driver.cxx b/tests/cxx/parser/validation/built-in/string/driver.cxx deleted file mode 100644 index b5da70d..0000000 --- a/tests/cxx/parser/validation/built-in/string/driver.cxx +++ /dev/null @@ -1,512 +0,0 @@ -// file : tests/cxx/parser/validation/built-in/string/driver.cxx -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test the built-in string & friends types validation. -// -#include -#include - -#include -#include - -using namespace xsd::cxx::parser::validating; - -template -bool -test_post_fail (T& p) -{ - try - { - p._post_impl (); // List implementation needs this to be post_impl. - } - catch (invalid_value const&) - { - return true; - } - - return false; -} - -int -main () -{ - typedef xsd::cxx::parser::string_sequence strings; - - // Good. - // - - // string - // - { - string_pimpl p; - p.pre (); - p._pre (); - p._characters (" \n\t"); - p._characters (" aaa "); - p._characters ("bbb"); - p._characters (" "); - p._post (); - assert (p.post_string () == " \n\t aaa bbb "); - } - - // normalized_string - // - { - normalized_string_pimpl p; - p.pre (); - p._pre (); - p._characters (" \n\t"); - p._characters (" aaa \n\t "); - p._characters (" bbb"); - p._characters (" "); - p._post (); - assert (p.post_normalized_string () == " aaa bbb "); - } - - // token - // - { - token_pimpl p; - p.pre (); - p._pre (); - p._characters (" \n\t"); - p._characters (" aaa \n\t "); - p._characters (" bbb \n\t"); - p._characters (" "); - p._post (); - assert (p.post_token () == "aaa bbb"); - } - - // name - // - { - name_pimpl p; - p.pre (); - p._pre (); - p._characters (" \n\t"); - p._characters (" a:b-c_d123 "); - p._characters (" "); - p._post (); - assert (p.post_name () == "a:b-c_d123"); - } - - { - name_pimpl p; - p.pre (); - p._pre (); - p._characters (" \n\t"); - p._characters (" _12 "); - p._characters (" "); - p._post (); - assert (p.post_name () == "_12"); - } - - { - name_pimpl p; - p.pre (); - p._pre (); - p._characters (" \n\t"); - p._characters (" :12 "); - p._characters (" "); - p._post (); - assert (p.post_name () == ":12"); - } - - // nmtoken - // - { - nmtoken_pimpl p; - p.pre (); - p._pre (); - p._characters (" \n\t"); - p._characters (" 123a:b-c_d123 "); - p._characters (" \n\t"); - p._characters (" "); - p._post (); - assert (p.post_nmtoken () == "123a:b-c_d123"); - } - - // nmtokens - // - { - strings s; - s.push_back ("123"); - s.push_back ("abc"); - - nmtokens_pimpl p; - p.pre (); - p._pre (); - p._characters (" \n\t"); - p._characters (" 123 "); - p._characters (" \n\t abc "); - p._characters (" "); - p._post (); - assert (p.post_nmtokens () == s); - } - - // ncname - // - { - ncname_pimpl p; - p.pre (); - p._pre (); - p._characters (" \n\t"); - p._characters (" a.b-c_d123 "); - p._characters (" "); - p._post (); - assert (p.post_ncname () == "a.b-c_d123"); - } - - // id - // - { - id_pimpl p; - p.pre (); - p._pre (); - p._characters (" \n\t"); - p._characters (" a.b-c_d123 "); - p._characters (" "); - p._post (); - assert (p.post_id () == "a.b-c_d123"); - } - - // idref - // - { - idref_pimpl p; - p.pre (); - p._pre (); - p._characters (" \n\t"); - p._characters (" a.b-c_d123 "); - p._characters (" "); - p._post (); - assert (p.post_idref () == "a.b-c_d123"); - } - - // idrefs - // - { - strings s; - s.push_back ("a123"); - s.push_back ("abc"); - - idrefs_pimpl p; - p.pre (); - p._pre (); - p._characters (" \n\t"); - p._characters (" a123 "); - p._characters (" \n\t abc "); - p._characters (" "); - p._post (); - assert (p.post_idrefs () == s); - } - - // language - // - { - language_pimpl p; - p.pre (); - p._pre (); - p._characters (" x "); - p._post (); - assert (p.post_language () == "x"); - } - - { - language_pimpl p; - p.pre (); - p._pre (); - p._characters (" en "); - p._post (); - assert (p.post_language () == "en"); - } - - { - language_pimpl p; - p.pre (); - p._pre (); - p._characters (" en"); - p._characters ("-us "); - p._post (); - assert (p.post_language () == "en-us"); - } - - { - language_pimpl p; - p.pre (); - p._pre (); - p._characters ("one-two-three-four44-seven77-eight888"); - p._post (); - assert (p.post_language () == "one-two-three-four44-seven77-eight888"); - } - - - // Bad - // - - // name - // - { - name_pimpl p; - p.pre (); - p._pre (); - p._characters (""); - assert (test_post_fail (p)); - } - - { - name_pimpl p; - p.pre (); - p._pre (); - p._characters (".a"); - assert (test_post_fail (p)); - } - - { - name_pimpl p; - p.pre (); - p._pre (); - p._characters ("-a"); - assert (test_post_fail (p)); - } - - { - name_pimpl p; - p.pre (); - p._pre (); - p._characters ("1a"); - assert (test_post_fail (p)); - } - - { - name_pimpl p; - p.pre (); - p._pre (); - p._characters ("a,b"); - assert (test_post_fail (p)); - } - - { - name_pimpl p; - p.pre (); - p._pre (); - p._characters ("a b"); - assert (test_post_fail (p)); - } - - { - name_pimpl p; - p.pre (); - p._pre (); - p._characters ("a p; - p.pre (); - p._pre (); - p._characters (""); - assert (test_post_fail (p)); - } - - { - nmtoken_pimpl p; - p.pre (); - p._pre (); - p._characters ("a,b"); - assert (test_post_fail (p)); - } - - { - nmtoken_pimpl p; - p.pre (); - p._pre (); - p._characters ("a b"); - assert (test_post_fail (p)); - } - - { - nmtoken_pimpl p; - p.pre (); - p._pre (); - p._characters ("a p; - p.pre (); - p._pre (); - p._characters (" "); - p._characters (" \t\n "); - assert (test_post_fail (p)); - } - - { - nmtokens_pimpl p; - p.pre (); - p._pre (); - p._characters ("ab a,b"); - assert (test_post_fail (p)); - } - - // ncname - // - { - ncname_pimpl p; - p.pre (); - p._pre (); - p._characters (""); - assert (test_post_fail (p)); - } - - { - ncname_pimpl p; - p.pre (); - p._pre (); - p._characters (".a"); - assert (test_post_fail (p)); - } - - { - ncname_pimpl p; - p.pre (); - p._pre (); - p._characters ("-a"); - assert (test_post_fail (p)); - } - - { - ncname_pimpl p; - p.pre (); - p._pre (); - p._characters (":a"); - assert (test_post_fail (p)); - } - - { - ncname_pimpl p; - p.pre (); - p._pre (); - p._characters ("1a"); - assert (test_post_fail (p)); - } - - { - ncname_pimpl p; - p.pre (); - p._pre (); - p._characters ("1:a"); - assert (test_post_fail (p)); - } - - { - ncname_pimpl p; - p.pre (); - p._pre (); - p._characters ("a,b"); - assert (test_post_fail (p)); - } - - { - ncname_pimpl p; - p.pre (); - p._pre (); - p._characters ("a b"); - assert (test_post_fail (p)); - } - - { - ncname_pimpl p; - p.pre (); - p._pre (); - p._characters ("a p; - p.pre (); - p._pre (); - p._characters ("a b"); - assert (test_post_fail (p)); - } - - // idref - // - { - idref_pimpl p; - p.pre (); - p._pre (); - p._characters ("a b"); - assert (test_post_fail (p)); - } - - // idrefs - // - { - idrefs_pimpl p; - p.pre (); - p._pre (); - p._characters (" "); - p._characters (" \t\n "); - assert (test_post_fail (p)); - } - - { - idrefs_pimpl p; - p.pre (); - p._pre (); - p._characters ("ab a p; - p.pre (); - p._pre (); - p._characters (" "); - assert (test_post_fail (p)); - } - - { - language_pimpl p; - p.pre (); - p._pre (); - p._characters ("en-"); - assert (test_post_fail (p)); - } - - { - language_pimpl p; - p.pre (); - p._pre (); - p._characters ("a1"); - assert (test_post_fail (p)); - } - - { - language_pimpl p; - p.pre (); - p._pre (); - p._characters ("en+us"); - assert (test_post_fail (p)); - } - - { - language_pimpl p; - p.pre (); - p._pre (); - p._characters ("en-nine99999"); - assert (test_post_fail (p)); - } -} diff --git a/tests/cxx/parser/validation/built-in/string/makefile b/tests/cxx/parser/validation/built-in/string/makefile deleted file mode 100644 index bcdae7e..0000000 --- a/tests/cxx/parser/validation/built-in/string/makefile +++ /dev/null @@ -1,70 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/string/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make - -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.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) - -# Define XSD_CXX11 since we include libxsd headers directly. -# -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifeq ($(cxx_standard),c++11) -$(obj) $(dep): cpp_options += -DXSD_CXX11 -endif - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) - $(call message,test $$1,$$1,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver -$(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) diff --git a/tests/cxx/parser/validation/built-in/uri/driver.cxx b/tests/cxx/parser/validation/built-in/uri/driver.cxx deleted file mode 100644 index 9e487e6..0000000 --- a/tests/cxx/parser/validation/built-in/uri/driver.cxx +++ /dev/null @@ -1,53 +0,0 @@ -// file : tests/cxx/parser/validation/built-in/uri/driver.cxx -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -// Test the built-in anyURI type validation. -// -#include - -#include -#include - -using namespace xsd::cxx::parser::validating; - -int -main () -{ - // Good. - // - { - uri_pimpl p; - p.pre (); - p._pre (); - p._characters (" "); - p._post (); - assert (p.post_uri () == ""); - } - - { - uri_pimpl p; - p.pre (); - p._pre (); - p._characters ("relative"); - p._post (); - assert (p.post_uri () == "relative"); - } - - { - uri_pimpl p; - p.pre (); - p._pre (); - p._characters ("#id"); - p._post (); - assert (p.post_uri () == "#id"); - } - - { - uri_pimpl p; - p.pre (); - p._pre (); - p._characters ("http://www.example.com/foo#bar"); - p._post (); - assert (p.post_uri () == "http://www.example.com/foo#bar"); - } -} diff --git a/tests/cxx/parser/validation/built-in/uri/makefile b/tests/cxx/parser/validation/built-in/uri/makefile deleted file mode 100644 index ae7e8bd..0000000 --- a/tests/cxx/parser/validation/built-in/uri/makefile +++ /dev/null @@ -1,70 +0,0 @@ -# file : tests/cxx/parser/validation/built-in/uri/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make - -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.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) - -# Define XSD_CXX11 since we include libxsd headers directly. -# -$(call include,$(bld_root)/cxx/standard.make) # cxx_standard -ifeq ($(cxx_standard),c++11) -$(obj) $(dep): cpp_options += -DXSD_CXX11 -endif - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Test. -# -$(test): driver := $(driver) -$(test): $(driver) - $(call message,test $$1,$$1,$(driver)) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver -$(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) -- cgit v1.1