Parser/Validation: Add a test for good data
We had tests for cbor_validate* API for the errors it would find, but not
that it did correctly reported CborNoError where no errors were
expected.
Signed-off-by: Thiago Macieira <thiago.macieira@intel.com>
diff --git a/tests/parser/tst_parser.cpp b/tests/parser/tst_parser.cpp
index 91a65a0..07333d5 100644
--- a/tests/parser/tst_parser.cpp
+++ b/tests/parser/tst_parser.cpp
@@ -106,6 +106,8 @@
// validation & errors
void checkedIntegers_data();
void checkedIntegers();
+ void validationValid_data() { arrays_data(); }
+ void validationValid();
void validation_data();
void validation();
void strictValidation_data();
@@ -1337,6 +1339,21 @@
}
}
+void tst_Parser::validationValid()
+{
+ // verify that all valid data validate properly
+ QFETCH(QByteArray, data);
+
+ QString decoded;
+ ParserWrapper w;
+ CborError err = w.init(data);
+ QVERIFY2(!err, QByteArray("Got error \"") + cbor_error_string(err) + "\"");
+
+ QCOMPARE(cbor_value_validate_basic(&w.first), CborNoError);
+ QCOMPARE(cbor_value_validate(&w.first, CborValidateBasic), CborNoError);
+ QCOMPARE(cbor_value_validate(&w.first, CborValidateCompleteData), CborNoError);
+}
+
void tst_Parser::validation_data()
{
addValidationColumns();