void compareDumpSims(){ gStyle->SetOptStat(0); // string config="beamPipeVacuum"; //string config="noDonut"; //string config="smallerCollMidDonut"; //string config="smallerCollPipe2Donut"; //string config="smallerCollNeck"; //string config="largerHall"; //string config="newHRS"; //string config="newHRS_2ftIronDumpShield"; //string config="newHRS_newDet"; //string config="newHRS_newDet_2ftIron"; //string config="newHRS_newDet_2ftConc"; //string config="newHRS_newDet_1ftConc1ftIron_4inDonut"; //string config="newHRS_fatPipe"; string config="newHRS_sideShield"; TCanvas *c1=new TCanvas("c1","c1",1400,600); c1->Divide(2); c1->cd(1); compareOne("prexII",config); printHEneutrons("prexII",config); gPad->SetGridx(1); gPad->SetGridy(1); gPad->SetLogy(1); c1->cd(2); compareOne("crex5",config); printHEneutrons("crex5",config); gPad->SetGridx(1); gPad->SetGridy(1); gPad->SetLogy(1); }
void tst_ToJson::arrays() { QFETCH(QByteArray, data); QFETCH(QString, expected); compareOne("\x81" + data, '[' + expected + ']', 0); compareOne("\x82" + data + data, '[' + expected + ',' + expected + ']', 0); }
void tst_ToJson::nestedArrays() { QFETCH(QByteArray, data); QFETCH(QString, expected); compareOne("\x81\x81" + data, "[[" + expected + "]]", 0); compareOne("\x81\x81\x81" + data, "[[[" + expected + "]]]", 0); compareOne("\x81\x82" + data + data, "[[" + expected + ',' + expected + "]]", 0); compareOne("\x82\x81" + data + data, "[[" + expected + "]," + expected + "]", 0); compareOne("\x82\x81" + data + '\x81' + data, "[[" + expected + "],[" + expected + "]]", 0); }
void tst_ToJson::taggedByteStringsToBigNum() { QFETCH(QByteArray, data); QFETCH(QString, base64url); compareOne('\xc3' + data, "\"~" + base64url + '"', 0); }
void tst_ToJson::taggedByteStringsToBase64() { QFETCH(QByteArray, data); QFETCH(QString, base64); compareOne('\xd6' + data, '"' + base64 + '"', 0); }
void tst_ToJson::tagsToObjects() { QFETCH(QByteArray, data); QFETCH(QString, expected); compareOne(data, expected, CborConvertTagsToObjects); }
void tst_ToJson::maps() { QFETCH(QByteArray, data); QFETCH(QString, expected); compareOne("\xa1\x65" "Hello" + data, "{\"Hello\":" + expected + '}', 0); }
void tst_ToJson::fixed() { QFETCH(QByteArray, data); QFETCH(QString, expected); compareOne(data, expected, 0); }
void tst_ToJson::nestedMaps() { QFETCH(QByteArray, data); QFETCH(QString, expected); compareOne("\xa1\x65Hello\xa1\x65World" + data, "{\"Hello\":{\"World\":" + expected + "}}", 0); // compareOne("\xa1\x63""foo\xa1\63""bar" + data + "\63""baz\xa1\x64quux" + data, // "{\"foo\":{\"bar\":" + expected + "},\"baz\":{\"quux\":" + expected + "}", 0); }
void tst_ToJson::metaDataForKeys() { QFETCH(QByteArray, data); QFETCH(QString, expected); if (expected.isEmpty()) expected = "{\"\":false}"; else expected = "{\"" + expected + "\":false,\"" + expected + "$keycbordump\":true}"; compareOne('\xa1' + data + '\xf4', expected, CborConvertAddMetadata | CborConvertStringifyMapKeys); }
void tst_ToJson::nonStringKeyMaps() { QFETCH(QByteArray, data); QFETCH(QString, expected); data = "\xa1" + data + "\1"; compareOne(data, "{\"" + expected + "\":1}", CborConvertStringifyMapKeys); // and verify that they fail if we use CborConvertRequireMapStringKeys CborParser parser; CborValue first; QString decoded; cbor_parser_init(reinterpret_cast<const quint8 *>(data.constData()), data.length(), 0, &parser, &first); CborError err = parseOne(&first, &decoded, CborConvertRequireMapStringKeys); QCOMPARE(err, CborErrorJsonObjectKeyNotString); }
void tst_ToJson::otherTags() { QFETCH(QByteArray, data); QFETCH(QString, expected); // other tags produce no change in output compareOne("\xc0" + data, expected, 0); compareOne("\xc1" + data, expected, 0); compareOne("\xc2" + data, expected, 0); compareOne("\xc4" + data, expected, 0); compareOne("\xc5" + data, expected, 0); compareOne("\xd8\x20" + data, expected, 0); compareOne("\xd8\x21" + data, expected, 0); compareOne("\xd8\x22" + data, expected, 0); compareOne("\xd8\x23" + data, expected, 0); compareOne("\xd8\x24" + data, expected, 0); compareOne("\xd9\xd9\xf7" + data, expected, 0); }