Incorporated changes from bus project.
[ptas] / tests / routeParserTest / main.cpp
diff --git a/tests/routeParserTest/main.cpp b/tests/routeParserTest/main.cpp
new file mode 100644 (file)
index 0000000..b28c9ab
--- /dev/null
@@ -0,0 +1,55 @@
+#include "../../src/xmlparser.h"
+
+#include <QCoreApplication>
+#include <QFile>
+#include <QByteArray>
+#include <QDebug>
+#include <QStringList>
+
+QDebug operator <<(QDebug dbg, const RouteData &routeData)
+{
+    QStringList routeDataBits;
+    routeDataBits
+            << routeData.m_tripTime
+            << routeData.m_tripDistance
+            << routeData.m_departureTime
+            << routeData.m_lineCode;
+    QStringList legDataBits;
+
+    foreach(LegData legData, routeData.m_legData) {
+        legDataBits
+                << legData.m_arrivalTime
+                << legData.m_departureTime
+                << legData.m_how
+                << legData.m_lineCode
+                << legData.m_tripDistance
+                << legData.m_tripTime;
+    }
+
+    dbg.nospace() << "["
+                  << routeDataBits.join(", ")
+                  << " [" << legDataBits.join(", ") << "] "
+                  << "]";
+
+    return dbg.space();
+}
+
+int main(int argc, char *argv[])
+{
+    QCoreApplication app(argc,argv);
+
+    QFile file("routeResponse.xml");
+    if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
+        return 0;
+
+    QByteArray reply = file.readAll();
+
+    XmlParser parser;
+    QList<RouteData> nodes = parser.parseRouteData(reply);
+
+    foreach(RouteData node, nodes) {
+        qDebug() << node;
+    }
+
+    return 0;
+}