U-Lama\Lee | e13c3e6 | 2011-12-28 14:36:55 -0800 | [diff] [blame] | 1 | #include "tinyxml2.h"
|
| 2 |
|
| 3 | #include <stdio.h>
|
| 4 | #include <stdlib.h>
|
| 5 |
|
Lee Thomason | e9ecdab | 2012-02-13 18:11:20 -0800 | [diff] [blame^] | 6 | #if defined( WIN32 ) |
| 7 | #include <crtdbg.h> |
| 8 | _CrtMemState startMemState; |
| 9 | _CrtMemState endMemState; |
| 10 | #endif |
| 11 |
|
U-Lama\Lee | e13c3e6 | 2011-12-28 14:36:55 -0800 | [diff] [blame] | 12 | using namespace tinyxml2;
|
| 13 |
|
| 14 | int main( int argc, const char* argv )
|
| 15 | {
|
Lee Thomason | e9ecdab | 2012-02-13 18:11:20 -0800 | [diff] [blame^] | 16 | #if defined( WIN32 ) |
| 17 | _CrtMemCheckpoint( &startMemState ); |
| 18 | #endif |
| 19 |
|
| 20 | #if 0
|
U-Lama\Lee | 4cee611 | 2011-12-31 14:58:18 -0800 | [diff] [blame] | 21 | {
|
Lee Thomason | fde6a75 | 2012-01-14 18:08:12 -0800 | [diff] [blame] | 22 | static const char* test = "<!--hello world\n"
|
Lee Thomason | 8a5dfee | 2012-01-18 17:43:40 -0800 | [diff] [blame] | 23 | " line 2\r"
|
| 24 | " line 3\r\n"
|
| 25 | " line 4\n\r"
|
| 26 | " line 5\r-->";
|
| 27 |
|
| 28 | XMLDocument doc;
|
| 29 | doc.Parse( test );
|
Lee Thomason | 50adb4c | 2012-02-13 15:07:09 -0800 | [diff] [blame] | 30 | doc.Print();
|
Lee Thomason | 8a5dfee | 2012-01-18 17:43:40 -0800 | [diff] [blame] | 31 | }
|
| 32 | #endif
|
Lee Thomason | 50adb4c | 2012-02-13 15:07:09 -0800 | [diff] [blame] | 33 | #if 0
|
Lee Thomason | 8a5dfee | 2012-01-18 17:43:40 -0800 | [diff] [blame] | 34 | {
|
Lee Thomason | 43f5930 | 2012-02-06 18:18:11 -0800 | [diff] [blame] | 35 | static const char* test[] = { "<element />",
|
| 36 | "<element></element>",
|
| 37 | "<element><subelement/></element>",
|
| 38 | "<element><subelement></subelement></element>",
|
| 39 | "<element><subelement><subsub/></subelement></element>",
|
| 40 | "<!--comment beside elements--><element><subelement></subelement></element>",
|
| 41 | "<!--comment beside elements, this time with spaces--> \n <element> <subelement> \n </subelement> </element>",
|
| 42 | "<element attrib1='foo' attrib2=\"bar\" ></element>",
|
| 43 | "<element attrib1='foo' attrib2=\"bar\" ><subelement attrib3='yeehaa' /></element>",
|
| 44 | "<element>Text inside element.</element>",
|
| 45 | "<element><b></b></element>",
|
| 46 | "<element>Text inside and <b>bolded</b> in the element.</element>",
|
| 47 | "<outer><element>Text inside and <b>bolded</b> in the element.</element></outer>",
|
Lee Thomason | 8ee7989 | 2012-01-25 17:44:30 -0800 | [diff] [blame] | 48 | "<element>This & That.</element>",
|
Lee Thomason | 18d68bd | 2012-01-26 18:17:26 -0800 | [diff] [blame] | 49 | "<element attrib='This<That' />",
|
Lee Thomason | dadcdfa | 2012-01-18 17:55:48 -0800 | [diff] [blame] | 50 | 0
|
| 51 | };
|
Lee Thomason | 6ee99fc | 2012-01-21 18:45:16 -0800 | [diff] [blame] | 52 | for( int i=0; test[i]; ++i ) {
|
Lee Thomason | dadcdfa | 2012-01-18 17:55:48 -0800 | [diff] [blame] | 53 | XMLDocument doc;
|
Lee Thomason | 6ee99fc | 2012-01-21 18:45:16 -0800 | [diff] [blame] | 54 | doc.Parse( test[i] );
|
Lee Thomason | 5cae897 | 2012-01-24 18:03:07 -0800 | [diff] [blame] | 55 | doc.Print();
|
Lee Thomason | ec975ce | 2012-01-23 11:42:06 -0800 | [diff] [blame] | 56 | printf( "----------------------------------------------\n" );
|
Lee Thomason | dadcdfa | 2012-01-18 17:55:48 -0800 | [diff] [blame] | 57 | }
|
U-Lama\Lee | 4cee611 | 2011-12-31 14:58:18 -0800 | [diff] [blame] | 58 | }
|
Lee Thomason | 50adb4c | 2012-02-13 15:07:09 -0800 | [diff] [blame] | 59 | #endif
|
Lee Thomason | e9ecdab | 2012-02-13 18:11:20 -0800 | [diff] [blame^] | 60 | #if 0
|
Lee Thomason | 2c85a71 | 2012-01-31 08:24:24 -0800 | [diff] [blame] | 61 | {
|
| 62 | static const char* test = "<element>Text before.</element>";
|
| 63 | XMLDocument doc;
|
| 64 | doc.Parse( test );
|
| 65 | XMLElement* root = doc.FirstChildElement();
|
| 66 | XMLElement* newElement = doc.NewElement( "Subelement" );
|
| 67 | root->InsertEndChild( newElement );
|
| 68 | doc.Print();
|
| 69 | }
|
Lee Thomason | d198322 | 2012-02-06 08:41:24 -0800 | [diff] [blame] | 70 | {
|
| 71 | XMLDocument* doc = new XMLDocument();
|
| 72 | static const char* test = "<element><sub/></element>";
|
| 73 | doc->Parse( test );
|
| 74 | delete doc;
|
| 75 | }
|
Lee Thomason | 56bdd02 | 2012-02-09 18:16:58 -0800 | [diff] [blame] | 76 | #endif
|
Lee Thomason | e9ecdab | 2012-02-13 18:11:20 -0800 | [diff] [blame^] | 77 | {
|
| 78 | XMLDocument* doc = new XMLDocument();
|
| 79 | doc->InsertEndChild( doc->NewElement( "element" ) );
|
| 80 | doc->Print();
|
| 81 | delete doc;
|
| 82 | }
|
| 83 | #if defined( WIN32 ) |
| 84 | _CrtMemCheckpoint( &endMemState ); |
| 85 | //_CrtMemDumpStatistics( &endMemState ); |
| 86 | |
| 87 | _CrtMemState diffMemState; |
| 88 | _CrtMemDifference( &diffMemState, &startMemState, &endMemState ); |
| 89 | _CrtMemDumpStatistics( &diffMemState ); |
| 90 | #endif |
U-Lama\Lee | e13c3e6 | 2011-12-28 14:36:55 -0800 | [diff] [blame] | 91 | return 0;
|
| 92 | } |