summaryrefslogtreecommitdiffstats
path: root/tests/hawd/datasetdefinition.cpp
diff options
context:
space:
mode:
authorChristian Mollekopf <chrigi_1@fastmail.fm>2015-12-01 21:29:42 +0100
committerChristian Mollekopf <chrigi_1@fastmail.fm>2015-12-01 21:29:42 +0100
commit93b406d1914a5512aec6ca737ba8326a21191227 (patch)
tree0f869f201815ae862bc2853de0b2007ff1515bf1 /tests/hawd/datasetdefinition.cpp
parentae7cc26c8350b427870f83687f83184c2c211250 (diff)
downloadsink-93b406d1914a5512aec6ca737ba8326a21191227.tar.gz
sink-93b406d1914a5512aec6ca737ba8326a21191227.zip
HAWD: Ensure the column order is maintained
By turning the columns into an array instead of an object, we can print the values in the same order as in the definition file. Previosly the order was random, and even headers and values were somtimes mixed up.
Diffstat (limited to 'tests/hawd/datasetdefinition.cpp')
-rw-r--r--tests/hawd/datasetdefinition.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/tests/hawd/datasetdefinition.cpp b/tests/hawd/datasetdefinition.cpp
index a4a95dd..e2af2b9 100644
--- a/tests/hawd/datasetdefinition.cpp
+++ b/tests/hawd/datasetdefinition.cpp
@@ -25,6 +25,7 @@
25#include <QFile> 25#include <QFile>
26#include <QJsonDocument> 26#include <QJsonDocument>
27#include <QJsonObject> 27#include <QJsonObject>
28#include <QJsonArray>
28 29
29#include <iostream> 30#include <iostream>
30 31
@@ -119,11 +120,11 @@ DatasetDefinition::DatasetDefinition(const QString &path)
119 } 120 }
120 121
121 m_description = json.value("description").toString(); 122 m_description = json.value("description").toString();
122 QJsonObject cols = json.value("columns").toObject(); 123 auto cols = json.value("columns").toArray();
123 for (const QString &key: cols.keys()) { 124 for (const auto &entry: cols) {
124 QJsonObject def = cols.value(key).toObject(); 125 QJsonObject def = entry.toObject();
125 if (!def.isEmpty()) { 126 if (!def.isEmpty()) {
126 m_columns.insert(key, DataDefinition(def)); 127 m_columns << qMakePair(def.value("name").toString(), DataDefinition(def));
127 } 128 }
128 } 129 }
129 } 130 }
@@ -152,7 +153,7 @@ QString DatasetDefinition::description() const
152 return m_description; 153 return m_description;
153} 154}
154 155
155QHash<QString, DataDefinition> DatasetDefinition::columns() const 156QList<QPair<QString, DataDefinition> > DatasetDefinition::columns() const
156{ 157{
157 return m_columns; 158 return m_columns;
158} 159}