--- a/qtmobility/tests/auto/qcontactfilter/tst_qcontactfilter.cpp Fri Jun 11 14:26:25 2010 +0300
+++ b/qtmobility/tests/auto/qcontactfilter/tst_qcontactfilter.cpp Wed Jun 23 19:08:38 2010 +0300
@@ -445,10 +445,58 @@
QContactDetailFilter df2 = f;
QVERIFY(df2 == df);
+ QVERIFY(df2.detailDefinitionName() == "Definition");
+ QVERIFY(df2.detailFieldName() == "Field");
/* Self assignment should do nothing */
df2 = df2;
QVERIFY(df2 == df);
+
+ /* Some cross casting */
+ QContactDetailRangeFilter rf;
+
+ /* Directly */
+ df2 = rf;
+ QVERIFY(df2.type() == QContactFilter::ContactDetailFilter);
+ QVERIFY(df2.detailDefinitionName().isEmpty());
+ QVERIFY(df2.detailFieldName().isEmpty());
+ QVERIFY(df2.value().isNull());
+
+ /* reset it */
+ df2 = df;
+ QVERIFY(df2.detailDefinitionName() == "Definition");
+ QVERIFY(df2.detailFieldName() == "Field");
+
+ /* Through base class */
+ f = rf;
+ df2 = f;
+ QVERIFY(df2.detailDefinitionName().isEmpty());
+ QVERIFY(df2.detailFieldName().isEmpty());
+ QVERIFY(df2.value().isNull());
+
+ /* Now test copy ctor */
+ QContactDetailFilter df3(rf);
+ QVERIFY(df3.type() == QContactFilter::ContactDetailFilter);
+ QVERIFY(df3.detailDefinitionName().isEmpty());
+ QVERIFY(df3.detailFieldName().isEmpty());
+ QVERIFY(df3.value().isNull());
+
+ /* reset it */
+ df3 = df;
+ QVERIFY(df3.detailDefinitionName() == "Definition");
+ QVERIFY(df3.detailFieldName() == "Field");
+
+ /* Now test copy ctor through base class */
+ QContactDetailFilter df4(f);
+ QVERIFY(df4.type() == QContactFilter::ContactDetailFilter);
+ QVERIFY(df4.detailDefinitionName().isEmpty());
+ QVERIFY(df4.detailFieldName().isEmpty());
+ QVERIFY(df4.value().isNull());
+
+ /* reset it */
+ df4 = df;
+ QVERIFY(df4.detailDefinitionName() == "Definition");
+ QVERIFY(df4.detailFieldName() == "Field");
}
void tst_QContactFilter::detailRangeFilter()
@@ -486,6 +534,16 @@
rf.setMatchFlags(QContactFilter::MatchExactly);
QVERIFY(rf.matchFlags() == QContactFilter::MatchExactly);
+ rf.setMatchFlags(QContactFilter::MatchCaseSensitive);
+ QVERIFY(rf.matchFlags() == QContactFilter::MatchCaseSensitive);
+
+ // Contains is not allowed
+ rf.setMatchFlags(QContactFilter::MatchCaseSensitive | QContactFilter::MatchContains);
+ QVERIFY(rf.matchFlags() == QContactFilter::MatchCaseSensitive);
+
+ rf.setMatchFlags(QContactFilter::MatchEndsWith);
+ QVERIFY(rf.matchFlags() == QContactFilter::MatchExactly); // 0
+
rf.setRange(5, 10);
QVERIFY(rf.minValue() == 5);
QVERIFY(rf.maxValue() == 10);
@@ -989,11 +1047,11 @@
QContactDetailRangeFilter qcdrf;
qcdrf.setDetailDefinitionName(QContactName::DefinitionName, QContactName::FieldCustomLabel);
qcdrf.setRange(QLatin1String("a"), QLatin1String("a"));
- qcdrf.setMatchFlags(QContactFilter::MatchStartsWith);
+ qcdrf.setMatchFlags(QContactFilter::MatchFixedString);
QContactDetailFilter expected;
expected.setDetailDefinitionName(QContactName::DefinitionName, QContactName::FieldCustomLabel);
expected.setValue(QLatin1String("a"));
- expected.setMatchFlags(QContactFilter::MatchStartsWith);
+ expected.setMatchFlags(QContactFilter::MatchFixedString);
QTest::newRow("Equal valued range filter")
<< static_cast<QContactFilter>(qcdrf)
<< static_cast<QContactFilter>(expected);
@@ -1004,7 +1062,7 @@
qcdrf.setDetailDefinitionName(QContactName::DefinitionName, QContactName::FieldCustomLabel);
qcdrf.setRange(QLatin1String("a"), QLatin1String("a"),
QContactDetailRangeFilter::ExcludeLower | QContactDetailRangeFilter::ExcludeUpper);
- qcdrf.setMatchFlags(QContactFilter::MatchStartsWith);
+ qcdrf.setMatchFlags(QContactFilter::MatchFixedString);
QTest::newRow("Equal valued range filter with excluded bounds")
<< static_cast<QContactFilter>(qcdrf)
<< static_cast<QContactFilter>(invalidFilter);
@@ -1014,7 +1072,7 @@
QContactDetailRangeFilter qcdrf;
qcdrf.setDetailDefinitionName(QContactName::DefinitionName, QContactName::FieldCustomLabel);
qcdrf.setRange(QLatin1String("a"), QLatin1String("b"));
- qcdrf.setMatchFlags(QContactFilter::MatchStartsWith);
+ qcdrf.setMatchFlags(QContactFilter::MatchFixedString);
QTest::newRow("Normal range filter")
<< static_cast<QContactFilter>(qcdrf)
<< static_cast<QContactFilter>(qcdrf);
@@ -1024,10 +1082,10 @@
QContactDetailRangeFilter qcdrf;
qcdrf.setDetailDefinitionName(QContactName::DefinitionName, QContactName::FieldCustomLabel);
qcdrf.setRange(QVariant(QVariant::String), QVariant(QVariant::String)); // null bounds
- qcdrf.setMatchFlags(QContactFilter::MatchStartsWith);
+ qcdrf.setMatchFlags(QContactFilter::MatchFixedString);
QContactDetailFilter qcdf;
qcdf.setDetailDefinitionName(QContactName::DefinitionName, QContactName::FieldCustomLabel);
- qcdf.setMatchFlags(QContactFilter::MatchStartsWith);
+ qcdf.setMatchFlags(QContactFilter::MatchFixedString);
qcdf.setValue(QVariant(QVariant::String));
QTest::newRow("Null valued range filter")
<< static_cast<QContactFilter>(qcdrf)
@@ -1038,7 +1096,7 @@
QContactDetailRangeFilter qcdrf;
qcdrf.setDetailDefinitionName(QContactName::DefinitionName, QContactName::FieldCustomLabel);
qcdrf.setRange(QVariant(QVariant::String), QLatin1String("a")); // min is null
- qcdrf.setMatchFlags(QContactFilter::MatchStartsWith);
+ qcdrf.setMatchFlags(QContactFilter::MatchFixedString);
QTest::newRow("One sided range filter")
<< static_cast<QContactFilter>(qcdrf)
<< static_cast<QContactFilter>(qcdrf);