summaryrefslogtreecommitdiffstats
path: root/src/test/searchqueryparsertest.cpp
diff options
context:
space:
mode:
authorMax Linke <kain88@mixxx.org>2014-08-28 16:18:37 +0100
committerMax Linke <kain88@mixxx.org>2014-08-29 22:39:40 +0100
commit228674a63a7cf5ffeeda39a7bc0614907a981609 (patch)
treef3304814452a0240222f2e9392201c53edc7b900 /src/test/searchqueryparsertest.cpp
parent41515ed3583f9931850bf36d5392a8c08dca012d (diff)
REF: time string parsing
Parse directly with a qregexp. Simplify the code. This also changes the format of time strings that are supported. To search for a track of exactly 90 seconds the following terms are equivalent. 90 90s 1m30 1m30s 1:30 searching for 62 seconds can be entered as 62 62s 1m2 1m2s 1m02s 1:2
Diffstat (limited to 'src/test/searchqueryparsertest.cpp')
-rw-r--r--src/test/searchqueryparsertest.cpp21
1 files changed, 6 insertions, 15 deletions
diff --git a/src/test/searchqueryparsertest.cpp b/src/test/searchqueryparsertest.cpp
index a07cadbda6..681db63150 100644
--- a/src/test/searchqueryparsertest.cpp
+++ b/src/test/searchqueryparsertest.cpp
@@ -364,7 +364,7 @@ TEST_F(SearchQueryParserTest, HumanReadableDurationSearch) {
EXPECT_STREQ(
qPrintable(QString("(duration = 90)")),
qPrintable(pQuery->toSql()));
-
+
pQuery.reset(m_parser.parseQuery("duration:1m30s", searchColumns, ""));
pTrack->setDuration(91);
EXPECT_FALSE(pQuery->match(pTrack));
@@ -374,7 +374,7 @@ TEST_F(SearchQueryParserTest, HumanReadableDurationSearch) {
EXPECT_STREQ(
qPrintable(QString("(duration = 90)")),
qPrintable(pQuery->toSql()));
-
+
pQuery.reset(m_parser.parseQuery("duration:90", searchColumns, ""));
pTrack->setDuration(91);
EXPECT_FALSE(pQuery->match(pTrack));
@@ -421,15 +421,6 @@ TEST_F(SearchQueryParserTest, HumanReadableDurationSearchwithOperators) {
EXPECT_STREQ(
qPrintable(QString("(duration >= 90)")),
qPrintable(pQuery->toSql()));
-
- pQuery.reset(m_parser.parseQuery("duration:>=1:30m", searchColumns, ""));
- pTrack->setDuration(89);
- EXPECT_FALSE(pQuery->match(pTrack));
- pTrack->setDuration(90);
- EXPECT_TRUE(pQuery->match(pTrack));
- EXPECT_STREQ(
- qPrintable(QString("(duration >= 90)")),
- qPrintable(pQuery->toSql()));
pQuery.reset(m_parser.parseQuery("duration:<2:30", searchColumns, ""));
pTrack->setDuration(151);
@@ -448,7 +439,7 @@ TEST_F(SearchQueryParserTest, HumanReadableDurationSearchwithOperators) {
EXPECT_STREQ(
qPrintable(QString("(duration <= 150)")),
qPrintable(pQuery->toSql()));
-
+
pQuery.reset(m_parser.parseQuery("duration:<=150", searchColumns, ""));
pTrack->setDuration(191);
EXPECT_FALSE(pQuery->match(pTrack));
@@ -456,8 +447,8 @@ TEST_F(SearchQueryParserTest, HumanReadableDurationSearchwithOperators) {
EXPECT_TRUE(pQuery->match(pTrack));
EXPECT_STREQ(
qPrintable(QString("(duration <= 150)")),
- qPrintable(pQuery->toSql()));
-
+ qPrintable(pQuery->toSql()));
+
pQuery.reset(m_parser.parseQuery("duration:<=2m30s", searchColumns, ""));
pTrack->setDuration(191);
EXPECT_FALSE(pQuery->match(pTrack));
@@ -488,7 +479,7 @@ TEST_F(SearchQueryParserTest, HumanReadableDurationSearchwithRangeFilter) {
EXPECT_STREQ(
qPrintable(QString("(duration >= 150 AND duration <= 200)")),
qPrintable(pQuery->toSql()));
-
+
pQuery.reset(m_parser.parseQuery("duration:2:30-200", searchColumns, ""));
pTrack->setSampleRate(44100);
pTrack->setDuration(80);