--- a/tests.cpp Sat Oct 06 21:08:55 2012 -0400
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,138 +0,0 @@
-#include "jsonsax.hpp"
-
-#include <iostream>
-#include <assert.h>
-
-// #define DEBUGTEST
-class JSLXTester : public IJSLXBackend
-{
-public:
- explicit JSLXTester(const char* json)
- : m_json(json)
- {}
-
- void debug(const char* data)
- {
-#ifdef DEBUGTEST
- std::cerr << std::endl << "-*- " << data << " -*-" << std::endl;
-#endif
- }
-
- virtual bool Eof()
- {
- return *m_json == '\0';
- }
-
- virtual char GetChar()
- {
- assert(!Eof());
-#ifdef DEBUGTEST
- std::cerr.put(*m_json == ' ' ? '_' : *m_json);
-#endif
- return *m_json++;
- }
-
- virtual bool OnStartObject()
- {
- assert(m_json[-1] == '{');
- debug("OnStartObject");
- return true;
- }
-
- virtual bool OnStopObject()
- {
- assert(m_json[-1] == '}');
- debug("OnStopObject");
- return true;
- }
-
- virtual bool OnStartArray()
- {
- assert(m_json[-1] == '[');
- debug("OnStartArray");
- return true;
- }
-
- virtual bool OnStopArray()
- {
- assert(m_json[-1] == ']');
- debug("OnStopArray");
- return true;
- }
-
- virtual bool OnStartNumber()
- {
- // assert(m_json[-1] == ']');
- debug("OnStartNumber");
- return true;
- }
-
- virtual bool OnStopNumber()
- {
- // assert(m_json[-1] == ']');
- debug("OnStopNumber");
- return true;
- }
-
- virtual bool OnStartString()
- {
- assert(m_json[-1] == '"');
- debug("OnStartString");
- return true;
- }
-
- virtual bool OnStopString()
- {
- assert(m_json[-1] == '"');
- debug("OnStopString");
- return true;
- }
-
- virtual bool OnNull()
- {
- // assert(m_json[-1] == ']');
- debug("OnNull");
- return true;
- }
-
- virtual bool OnTrue()
- {
- // assert(m_json[-1] == ']');
- debug("OnTrue");
- return true;
- }
-
- virtual bool OnFalse()
- {
- // assert(m_json[-1] == ']');
- debug("OnFalse");
- return true;
- }
-
- virtual void OnError(const char* err)
- {
- debug("Error");
- debug(err);
- }
-
- bool Check()
- {
- return Eof();
- }
-
-private:
- const char* m_json;
-};
-
-int main()
-{
- const char json[] =
- "{ \"hello\" : [ 11, 12 ,1"
- "3 ], \n \"world\" : -3.45e2 }";
- JSLXTester tester(json);
- JSLXParser parser(&tester);
- assert(parser.Parse());
- assert(tester.Check());
-
- return 0;
-}