Arseny Kapoulkine
e33e1083ad
tests: Fix WinCE compilation
...
git-svn-id: https://pugixml.googlecode.com/svn/trunk@991 99668b35-9821-0410-8761-19e4c4f06640
2014-02-26 22:37:40 +00:00
Arseny Kapoulkine
5a4cedbe91
tests: Add tests for parse_trim_pcdata.
...
git-svn-id: https://pugixml.googlecode.com/svn/trunk@988 99668b35-9821-0410-8761-19e4c4f06640
2014-02-25 03:41:57 +00:00
Arseny Kapoulkine
cbd8131d09
Fix clang build.
...
git-svn-id: https://pugixml.googlecode.com/svn/trunk@986 99668b35-9821-0410-8761-19e4c4f06640
2014-02-23 19:38:24 +00:00
Arseny Kapoulkine
934bddcfa6
Fix gap collapsing during PCDATA parsing for fragment mode.
...
git-svn-id: https://pugixml.googlecode.com/svn/trunk@985 99668b35-9821-0410-8761-19e4c4f06640
2014-02-23 19:28:27 +00:00
Arseny Kapoulkine
bd960159dd
tests: Write temporary files to executable folder.
...
Temp folder is the root folder on Windows; writing to the folder may require administrator rights.
We can't use current folder for temporaries because tests from different configurations can be running
in parallel, but executable folder is always safe since we only run each executable once.
git-svn-id: https://pugixml.googlecode.com/svn/trunk@984 99668b35-9821-0410-8761-19e4c4f06640
2014-02-19 06:21:51 +00:00
Arseny Kapoulkine
284f56f588
Add MSVC 12 (2013) to autotest list
...
git-svn-id: https://pugixml.googlecode.com/svn/trunk@982 99668b35-9821-0410-8761-19e4c4f06640
2014-02-12 04:38:54 +00:00
Arseny Kapoulkine
47c15ad949
Implement document fragment parsing.
...
Introduce a notable behavior change in default parsing mode: documents without a
document element node are now considered invalid. This is technically a breaking change,
however the amount of documents it affects is very small, all parsed data still persists,
and lack of this check results in very confusing behavior in a number of cases.
In order to be able to parse documents without an element node, a fragment parsing flag is
introduced.
Parsing a buffer in fragment mode treats the buffer as a fragment of a valid XML.
As a consequence, top-level PCDATA is added to the tree; additionally, there are no
restrictions on the number of nodes -- so documents without a document element are considered
valid.
Due to the way parsing works internally, load_buffer_inplace occasionally can not preserve
the document contents if it's parsed in a fragment mode. While unfortunate, this problem is
fundamental; since the use case is relatively obscure, hopefully documenting this shortcoming
will be enough.
git-svn-id: https://pugixml.googlecode.com/svn/trunk@980 99668b35-9821-0410-8761-19e4c4f06640
2014-02-11 06:45:27 +00:00
Arseny Kapoulkine
5fa25a878a
Fix bogus Clang 3.4 warning
...
git-svn-id: https://pugixml.googlecode.com/svn/trunk@979 99668b35-9821-0410-8761-19e4c4f06640
2014-02-11 04:55:36 +00:00
Arseny Kapoulkine
f5a5f49802
Fix clang build.
...
git-svn-id: https://pugixml.googlecode.com/svn/trunk@978 99668b35-9821-0410-8761-19e4c4f06640
2014-02-10 17:04:17 +00:00
Arseny Kapoulkine
79fb68ac41
Use a null-terminated buffer for parsing as often as possible.
...
Parsing used to work on a non null-terminated buffer, inserting a fake null terminator to increase performance.
This makes it impossible to implement fragment parsing that preserves PCDATA contents (as witnessed by some
tests for boundary conditions that actually depended on this behavior).
Since almost all uses result in us allocating an internal buffer anyway, the new policy is to make sure all buffers
that are allocated by pugixml are null-terminated - the only exception now is external calls to load_buffer_inplace
that don't trigger encoding conversion.
git-svn-id: https://pugixml.googlecode.com/svn/trunk@977 99668b35-9821-0410-8761-19e4c4f06640
2014-02-10 16:57:04 +00:00
Arseny Kapoulkine
9ba26b94c7
Replace memory-management functions before every test.
...
In case a test sets memory-management functions to perform custom testing and fails midway,
all subsequent tests that rely on custom memory handling (i.e. threshold) can fail unexpectedly.
Setting up the functions before every test fixes this, making all tests self-contained.
git-svn-id: https://pugixml.googlecode.com/svn/trunk@976 99668b35-9821-0410-8761-19e4c4f06640
2014-02-10 16:56:55 +00:00
Arseny Kapoulkine
acf9dee0dd
Update PUGIXML_VERSION define
...
git-svn-id: https://pugixml.googlecode.com/svn/trunk@973 99668b35-9821-0410-8761-19e4c4f06640
2014-02-10 05:11:05 +00:00
Arseny Kapoulkine
543fa8268d
Add Makefile for building and running tests.
...
This expands and replaces the Travis-specific makefile by adding more options and correctly tracking header dependencies.
Also add wchar_t mode test to Travis configuration.
git-svn-id: http://pugixml.googlecode.com/svn/trunk@971 99668b35-9821-0410-8761-19e4c4f06640
2014-02-09 21:56:30 +00:00
Arseny Kapoulkine
09647e2b29
Add scripts for Travis CI
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@969 99668b35-9821-0410-8761-19e4c4f06640
2014-02-09 00:05:19 +00:00
Arseny Kapoulkine
0557a06764
Fix test suite stringizing macros to be C++11-compliant
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@963 99668b35-9821-0410-8761-19e4c4f06640
2014-02-08 20:39:25 +00:00
Arseny Kapoulkine
f9bbc39bd9
Implement long long support if PUGIXML_HAS_LONG_LONG is defined (autodetection is not implemented yet)
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@962 99668b35-9821-0410-8761-19e4c4f06640
2014-02-08 20:36:09 +00:00
Arseny Kapoulkine
0938714fa0
Change xml_named_node_iterator to be bidirectional and to match xml_node_iterator in terms of internals
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@960 99668b35-9821-0410-8761-19e4c4f06640
2014-01-27 03:54:05 +00:00
Arseny Kapoulkine
7f6b062e9f
Implement automatic hexadecimal decoding for xml_attribute::as_int and xml_text::as_int. This is effectively a form of strtol with base 0, but without octal support.
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@958 99668b35-9821-0410-8761-19e4c4f06640
2014-01-15 04:28:10 +00:00
arseny.kapoulkine@gmail.com
cac6b8720a
Make sure newlines are consistent for both .zip and .tar.gz archives
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@953 99668b35-9821-0410-8761-19e4c4f06640
2013-07-20 05:55:22 +00:00
arseny.kapoulkine@gmail.com
4e1add1a46
Fix invalid assertion in XPath: reallocation can result in allocating buffer of the same size due to pointer-sized alignment
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@946 99668b35-9821-0410-8761-19e4c4f06640
2013-03-20 02:44:05 +00:00
arseny.kapoulkine@gmail.com
9b9a414ab6
Compatibility fixes (fixed warnings in gcc, msvc7, fixed errors in bcc, cw, msvc6)
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@939 99668b35-9821-0410-8761-19e4c4f06640
2012-12-07 06:35:53 +00:00
arseny.kapoulkine@gmail.com
00d4994f24
tests: Added append_buffer tests
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@937 99668b35-9821-0410-8761-19e4c4f06640
2012-12-07 04:49:51 +00:00
arseny.kapoulkine@gmail.com
efc634a718
archive.pl now creates a wrapping folder in both .tar.gz and .zip archives
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@935 99668b35-9821-0410-8761-19e4c4f06640
2012-11-20 05:34:06 +00:00
arseny.kapoulkine@gmail.com
cee7eca229
XPath: Fix unit test that (incorrectly) relied on right-associativity of union operator to trigger out of memory condition
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@930 99668b35-9821-0410-8761-19e4c4f06640
2012-11-17 23:51:43 +00:00
arseny.kapoulkine@gmail.com
48f9343c05
XPath: Add unit test for unary minus and union precedences
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@929 99668b35-9821-0410-8761-19e4c4f06640
2012-11-17 22:50:05 +00:00
arseny.kapoulkine@gmail.com
68d533a828
tests: Remove 'con' loading from tests since it stopped working under Windows 8...
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@921 99668b35-9821-0410-8761-19e4c4f06640
2012-10-31 04:45:38 +00:00
arseny.kapoulkine@gmail.com
2876af6773
Fix find_child_by_attribute assertion for attributes with null name/value.
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@920 99668b35-9821-0410-8761-19e4c4f06640
2012-09-29 06:36:29 +00:00
arseny.kapoulkine@gmail.com
4a2d398a07
tests: Fixed PUGIXML_NO_STL compilation
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@898 99668b35-9821-0410-8761-19e4c4f06640
2012-04-04 02:01:22 +00:00
arseny.kapoulkine@gmail.com
bda8e935e9
Updated version number and copyright year everywhere
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@897 99668b35-9821-0410-8761-19e4c4f06640
2012-04-03 05:04:07 +00:00
arseny.kapoulkine@gmail.com
a47bd44953
tests: Added tests for as_string and default values in as_*
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@894 99668b35-9821-0410-8761-19e4c4f06640
2012-04-03 04:44:54 +00:00
arseny.kapoulkine@gmail.com
f4ac43c549
tests: Added xml_named_node_iterator tests
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@892 99668b35-9821-0410-8761-19e4c4f06640
2012-03-27 05:46:44 +00:00
arseny.kapoulkine@gmail.com
1cd736905b
tests: Added text/binary save_file tests
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@884 99668b35-9821-0410-8761-19e4c4f06640
2012-03-23 05:38:08 +00:00
arseny.kapoulkine@gmail.com
9269e24a4b
tests: Added tests for xml_text mutation operations
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@877 99668b35-9821-0410-8761-19e4c4f06640
2012-03-23 03:40:30 +00:00
arseny.kapoulkine@gmail.com
0237fb466e
tests: Added tests for read-only xml_text operations
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@875 99668b35-9821-0410-8761-19e4c4f06640
2012-03-23 03:25:03 +00:00
arseny.kapoulkine@gmail.com
742a1db2df
tests: Added new test for string/istream include interaction (this actually fails on DMC)
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@865 99668b35-9821-0410-8761-19e4c4f06640
2012-03-20 05:05:35 +00:00
arseny.kapoulkine@gmail.com
35ea9a6088
tests: Added tests for constant iterator objects
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@859 99668b35-9821-0410-8761-19e4c4f06640
2012-03-14 05:34:29 +00:00
arseny.kapoulkine@gmail.com
ca8d43ba03
tests: Added MSVC11 variants to test suite
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@851 99668b35-9821-0410-8761-19e4c4f06640
2012-03-07 05:59:09 +00:00
arseny.kapoulkine@gmail.com
199b97a851
tests: Miscellaneous fixes
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@850 99668b35-9821-0410-8761-19e4c4f06640
2012-03-06 16:56:45 +00:00
arseny.kapoulkine@gmail.com
8b8cf7977c
tests: Added Android to testing (STLport variant is only tested without exceptions because of library issues)
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@848 99668b35-9821-0410-8761-19e4c4f06640
2012-03-06 09:14:04 +00:00
arseny.kapoulkine@gmail.com
04629118db
tests: Android compilation fixes
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@846 99668b35-9821-0410-8761-19e4c4f06640
2012-03-06 08:49:58 +00:00
arseny.kapoulkine@gmail.com
72dd6038a2
tests: Added BlackBerry NDK to test suite
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@845 99668b35-9821-0410-8761-19e4c4f06640
2012-03-06 07:13:25 +00:00
arseny.kapoulkine@gmail.com
f6c8613229
tests: Use mkstemp on Unix and QNX (BlackBerry) to avoid tmpnam deprecation warning
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@843 99668b35-9821-0410-8761-19e4c4f06640
2012-03-06 07:03:09 +00:00
arseny.kapoulkine@gmail.com
eaac540dd2
tests: Added BadaSDK to tests, changed report coloring to mark cells that compiled successfully but skipped execution
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@841 99668b35-9821-0410-8761-19e4c4f06640
2012-03-06 06:37:54 +00:00
arseny.kapoulkine@gmail.com
fdc03d39ab
tests: Fixed compilation errors for BadaSDK
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@839 99668b35-9821-0410-8761-19e4c4f06640
2012-03-06 06:13:10 +00:00
arseny.kapoulkine@gmail.com
76ef04129d
tests: Added WinCE to autotest
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@836 99668b35-9821-0410-8761-19e4c4f06640
2012-02-19 09:06:24 +00:00
arseny.kapoulkine@gmail.com
9133322c4c
tests: Minor fixes for WinCE compilation
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@834 99668b35-9821-0410-8761-19e4c4f06640
2012-02-19 09:05:23 +00:00
arseny.kapoulkine@gmail.com
1835571886
tests: Add an explicit test for empty xpath_node_set copying (regression test for issue 143)
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@832 99668b35-9821-0410-8761-19e4c4f06640
2012-02-18 03:35:37 +00:00
arseny.kapoulkine
0d4020e96e
tests: Added version test
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@831 99668b35-9821-0410-8761-19e4c4f06640
2011-12-20 10:34:37 +00:00
arseny.kapoulkine
a0769dfe38
Introduced encoding_latin1 support (conversion on loading, conversion on saving, encoding name in declaration in document::save)
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@829 99668b35-9821-0410-8761-19e4c4f06640
2011-12-20 09:45:10 +00:00
arseny.kapoulkine
1b87d3dcbf
Introduced parse_ws_pcdata_single flag: only parses whitespace-only PCDATA if it's the only child of the parent node (middle ground between default flags and parse_ws_pcdata)
...
git-svn-id: http://pugixml.googlecode.com/svn/trunk@825 99668b35-9821-0410-8761-19e4c4f06640
2011-12-09 05:24:07 +00:00