summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/test_repeatrule.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/test_repeatrule.cpp b/tests/test_repeatrule.cpp
index 8962d14..aac6408 100644
--- a/tests/test_repeatrule.cpp
+++ b/tests/test_repeatrule.cpp
@@ -28,6 +28,7 @@ private slots:
void roundTripsEveryRowOfTheTable_data();
void roundTripsEveryRowOfTheTable();
void fillsWhatAnRruleLeavesImplicit();
+ void anEmptyRruleMeansDoesNotRepeat();
void recognisesACustomRule_data();
void recognisesACustomRule();
void keepsWkst();
@@ -76,6 +77,18 @@ void TestRepeatRule::fillsWhatAnRruleLeavesImplicit()
QCOMPARE(monthly.monthDay, 18);
}
+void TestRepeatRule::anEmptyRruleMeansDoesNotRepeat()
+{
+ const QDate start(2026, 9, 18);
+ for (const QString &value : { QString(), QStringLiteral(""), QStringLiteral(" ") }) {
+ const RepeatRule rule = RepeatRule::fromRRule(value, start);
+ QCOMPARE(rule.freq, RepeatRule::Freq::None);
+ QVERIFY(!rule.custom);
+ QCOMPARE(rule.describe(), QStringLiteral("Does not repeat"));
+ QCOMPARE(rule.toRRule(), QString());
+ }
+}
+
void TestRepeatRule::recognisesACustomRule_data()
{
QTest::addColumn<QString>("rrule");