xref: /haiku/src/tests/kits/shared/JsonEndToEndTest.h (revision 0c28e8e5a05e7d67c3ceb391ae7bb4298e0bb624)
11f6b57a5SAndrew Lindesay /*
21f6b57a5SAndrew Lindesay  * Copyright 2017, Andrew Lindesay <apl@lindesay.co.nz>
31f6b57a5SAndrew Lindesay  * Distributed under the terms of the MIT License.
41f6b57a5SAndrew Lindesay  */
51f6b57a5SAndrew Lindesay #ifndef JSON_END_TO_END_TEST_H
61f6b57a5SAndrew Lindesay #define JSON_END_TO_END_TEST_H
71f6b57a5SAndrew Lindesay 
81f6b57a5SAndrew Lindesay 
91f6b57a5SAndrew Lindesay #include <TestCase.h>
101f6b57a5SAndrew Lindesay #include <TestSuite.h>
111f6b57a5SAndrew Lindesay 
121f6b57a5SAndrew Lindesay 
131f6b57a5SAndrew Lindesay class Sample;
141f6b57a5SAndrew Lindesay 
151f6b57a5SAndrew Lindesay 
161f6b57a5SAndrew Lindesay class JsonEndToEndTest : public CppUnit::TestCase {
171f6b57a5SAndrew Lindesay public:
181f6b57a5SAndrew Lindesay 								JsonEndToEndTest();
191f6b57a5SAndrew Lindesay 	virtual						~JsonEndToEndTest();
201f6b57a5SAndrew Lindesay 
211f6b57a5SAndrew Lindesay 			void				TestNullA();
221f6b57a5SAndrew Lindesay 			void				TestTrueA();
231f6b57a5SAndrew Lindesay 			void				TestFalseA();
241f6b57a5SAndrew Lindesay 			void				TestNumberA();
251f6b57a5SAndrew Lindesay 			void				TestStringA();
261f6b57a5SAndrew Lindesay 			void				TestStringA2();
271f6b57a5SAndrew Lindesay 			void				TestStringB();
281f6b57a5SAndrew Lindesay 			void				TestArrayA();
291f6b57a5SAndrew Lindesay 			void				TestArrayB();
301f6b57a5SAndrew Lindesay 			void				TestObjectA();
311f6b57a5SAndrew Lindesay 
321f6b57a5SAndrew Lindesay 			void				TestStringUnterminated();
331f6b57a5SAndrew Lindesay 			void				TestArrayUnterminated();
341f6b57a5SAndrew Lindesay 			void				TestObjectUnterminated();
351f6b57a5SAndrew Lindesay 
361f6b57a5SAndrew Lindesay 	static	void				AddTests(BTestSuite& suite);
371f6b57a5SAndrew Lindesay private:
381f6b57a5SAndrew Lindesay 			void				TestUnterminated(const char* input);
391f6b57a5SAndrew Lindesay 
40*0c28e8e5SAndrew Lindesay 			void				TestParseAndWrite(const char* input,
41*0c28e8e5SAndrew Lindesay 									const char* expectedOutput);
421f6b57a5SAndrew Lindesay };
431f6b57a5SAndrew Lindesay 
441f6b57a5SAndrew Lindesay 
451f6b57a5SAndrew Lindesay #endif	// JSON_END_TO_END_TEST_H
46