| 71 | } |
| 72 | |
| 73 | void ObjectQueryTest::testIsQuery() |
| 74 | { |
| 75 | auto object = testObject(); |
| 76 | |
| 77 | ObjectQuery single_query_is_true{QLatin1String("a"), ObjectQuery::OperatorIs, QLatin1String("1")}; |
| 78 | QVERIFY(single_query_is_true(object) == true); |
| 79 | QVERIFY(single_query_is_true == single_query_is_true); |
| 80 | QVERIFY(single_query_is_true != ObjectQuery{}); |
| 81 | ObjectQuery single_query_is_false_1{QLatin1String("a"), ObjectQuery::OperatorIs, QLatin1String("2")}; |
| 82 | QVERIFY(single_query_is_false_1(object) == false); |
| 83 | ObjectQuery single_query_is_false_2{QLatin1String("d"), ObjectQuery::OperatorIs, QLatin1String("1")}; // key d doesn't exist |
| 84 | QVERIFY(single_query_is_false_2(object) == false); |
| 85 | QVERIFY(single_query_is_false_2 != single_query_is_true); |
| 86 | QVERIFY(single_query_is_true != single_query_is_false_2); |
| 87 | |
| 88 | auto query_copy_true = ObjectQuery(single_query_is_true); |
| 89 | QCOMPARE(query_copy_true.getOperator(), ObjectQuery::OperatorIs); |
| 90 | QCOMPARE(query_copy_true, single_query_is_true); |
| 91 | QVERIFY(query_copy_true(object) == true); |
| 92 | QVERIFY(query_copy_true != single_query_is_false_1); |
| 93 | |
| 94 | auto query_moved_false = std::move(single_query_is_false_2); |
| 95 | QCOMPARE(query_moved_false.getOperator(), ObjectQuery::OperatorIs); |
| 96 | QCOMPARE(single_query_is_false_2.getOperator(), ObjectQuery::OperatorInvalid); |
| 97 | QVERIFY(query_moved_false(object) == false); |
| 98 | QVERIFY(query_moved_false != single_query_is_false_2); |
| 99 | |
| 100 | auto operands = query_moved_false.tagOperands(); |
| 101 | QVERIFY(operands); |
| 102 | QCOMPARE(operands->key, QString::fromLatin1("d")); |
| 103 | QCOMPARE(operands->value, QString::fromLatin1("1")); |
| 104 | } |
| 105 | |
| 106 | void ObjectQueryTest::testIsNotQuery() |
| 107 | { |
nothing calls this directly
no test coverage detected