Subject: bug#34207: grantlee fails to build

From: Ricardo Wurmus <[email-masked]>
Date: Sat, 26 Jan 2019 11:47:23 +0100

Grantlee has two test failures:

--8<---------------cut here---------------start------------->8---
FAIL!  : TestFilters::testDateBasedFilters(date01) Compared values are not the same
   Actual   (result): ""
   Expected (output): "01"
   Loc: [/tmp/guix-build-grantlee-5.1.0.drv-0/grantlee-5.1.0/templates/tests/testfilters.cpp(117)]
FAIL!  : TestFilters::testDateBasedFilters(date02) Compared values are not the same
   Actual   (result): ""
   Expected (output): "Jan. 1, 2008"
   Loc: [/tmp/guix-build-grantlee-5.1.0.drv-0/grantlee-5.1.0/templates/tests/testfilters.cpp(117)]
--8<---------------cut here---------------end--------------->8---

The tests in templates/tests/testfilters.cpp look like this:

 --8<---------------cut here---------------start------------->8---
  Dict dict;
 …
  QDateTime d(QDate(2008, 1, 1));

  dict.clear();
  dict.insert(QStringLiteral("d"), d);

  QTest::newRow("date01") << "{{ d|date:\"MM\" }}" << dict
                          << QStringLiteral("01") << NoError;
  QTest::newRow("date02") << QStringLiteral("{{ d|date }}") << dict
                          << d.toString(QStringLiteral("MMM. d, yyyy"))
                          << NoError;
--8<---------------cut here---------------end--------------->8---

The following test for “date03” passes:

--8<---------------cut here---------------start------------->8---
  dict.insert(QStringLiteral("d"), QStringLiteral("fail_string"));
  QTest::newRow("date03") << "{{ d|date:\"MM\" }}" << dict << QString()
                          << NoError;
--8<---------------cut here---------------end--------------->8---

IIUC this means: some non-date is injected and the template resulted in
the empty string.

--
Ricardo