Add tests, split documentation into subpkg

This commit is contained in:
Neil Hanlon 2024-01-09 15:19:26 -05:00 committed by Neil Hanlon
parent 4f6f7d0cd5
commit 7acc6563db
Signed by: neil
GPG Key ID: 705BC21EC3C70F34
2 changed files with 162 additions and 17 deletions

View File

@ -19,6 +19,7 @@ Source: 685A5A5E511D30E2.gpg
Source: tkremind.desktop
# stolen from Debian
Patch: use-system-libjsonparser.diff
Patch: remove-timezone-tests-from-compare.patch
BuildRequires: gcc
BuildRequires: gnupg2
@ -33,6 +34,7 @@ BuildRequires: pkgconfig(json-parser)
BuildRequires: desktop-file-utils
Recommends: remind-tools
Recommends: remind-gui
Recommends: remind-doc
%description
Remind is a sophisticated calendar and alarm program. It includes the following
@ -47,6 +49,27 @@ features:
- Facilities for both the Gregorian and Hebrew calendars
- Support for 12 different languages
%package doc
Summary: Documentation for remind, a sophisticated calendar and alarm program
License: GPL-2.0-only
BuildArch: noarch
%description doc
Documentation and information on how to use remind
%package gui
Summary: GUI for remind, a sophisticated calendar and alarm program
License: GPL-2.0-only
BuildArch: noarch
Provides: tkremind = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: tcl
Requires: tcllib
Requires: tk >= 8.0
%description gui
Tkremind provides a GUI which allows viewing a calendar and adding or editing
reminders without learning the syntax of Remind.
%package tools
Summary: Additional tools for remind
@ -63,21 +86,6 @@ License: GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-only
%description tools
Tools to convert the remind output to ps, pdf or html as well as example files.
%package gui
Summary: GUI for remind, a sophisticated calendar and alarm program
License: GPL-2.0-only
BuildArch: noarch
Provides: tkremind = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: tcl
Requires: tcllib
Requires: tk >= 8.0
%description gui
Tkremind provides a GUI which allows viewing a calendar and adding or editing
reminders without learning the syntax of Remind.
%prep
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
%autosetup -p1 -n %{name}-%{version}
@ -93,8 +101,15 @@ sed -i 's|\$(PERL) Makefile.PL|\$(PERL) Makefile.PL NO_PACKLIST=1 NO_PERLLOCAL=1
desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE3}
%check
# NOTE(neil): 2024-01-09 disabling tz.rem as it is broken
sed -iE 's,^TZ=America.*,,;s,^TZ=Europe.*,,' tests/test-rem
make test
%files
%doc README docs/
%doc README
%license COPYRIGHT MICROSOFT-AND-APPLE
%attr(0755,-,-) %{_bindir}/%{name}
%{_bindir}/rem
@ -102,8 +117,11 @@ desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE3}
%{_mandir}/man1/rem.1*
%{_mandir}/man1/%{name}.1*
%files tools
%files doc
%doc README docs/
%doc www/ examples/ contrib/
%files tools
%license COPYRIGHT MICROSOFT-AND-APPLE
%attr(0755,-,-) %{_bindir}/rem2html
%attr(0755,-,-) %{_bindir}/rem2pdf

View File

@ -0,0 +1,127 @@
--- a/tests/test.cmp 2023-12-14 16:08:46.000000000 -0500
+++ b/tests/test.cmp 2024-01-09 15:07:11.299509756 -0500
@@ -11510,123 +11510,7 @@
│ │ │ │and │ │ │ │
│ │ │ │spaces │ │ │ │
└──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┘
- # Test conversion between local time and UTC
-
-set a localtoutc('2022-01-01@12:00')
-localtoutc(2022-01-01@12:00) => 2022-01-01@17:00
-set a localtoutc('2022-03-13@03:59')
-localtoutc(2022-03-13@03:59) => 2022-03-13@07:59
-set a localtoutc('2022-03-13@04:00')
-localtoutc(2022-03-13@04:00) => 2022-03-13@08:00
-set a localtoutc('2022-03-13@04:01')
-localtoutc(2022-03-13@04:01) => 2022-03-13@08:01
-set a localtoutc('2022-06-01@12:00')
-localtoutc(2022-06-01@12:00) => 2022-06-01@16:00
-set a localtoutc('2022-11-06@02:59')
-localtoutc(2022-11-06@02:59) => 2022-11-06@07:59
-set a localtoutc('2022-11-06@03:00')
-localtoutc(2022-11-06@03:00) => 2022-11-06@08:00
-set a localtoutc('2022-11-06@03:01')
-localtoutc(2022-11-06@03:01) => 2022-11-06@08:01
-set a localtoutc('2022-12-01@12:00')
-localtoutc(2022-12-01@12:00) => 2022-12-01@17:00
-
-set b utctolocal('2022-01-01@17:00')
-utctolocal(2022-01-01@17:00) => 2022-01-01@12:00
-set b utctolocal('2022-03-13@06:00')
-utctolocal(2022-03-13@06:00) => 2022-03-13@01:00
-set b utctolocal('2022-03-13@07:01')
-utctolocal(2022-03-13@07:01) => 2022-03-13@03:01
-set b utctolocal('2022-03-13@07:59')
-utctolocal(2022-03-13@07:59) => 2022-03-13@03:59
-set b utctolocal('2022-03-13@07:00')
-utctolocal(2022-03-13@07:00) => 2022-03-13@03:00
-set b utctolocal('2022-03-13@07:01')
-utctolocal(2022-03-13@07:01) => 2022-03-13@03:01
-set b utctolocal('2022-03-13@07:59')
-utctolocal(2022-03-13@07:59) => 2022-03-13@03:59
-set b utctolocal('2022-06-01@16:00')
-utctolocal(2022-06-01@16:00) => 2022-06-01@12:00
-set b utctolocal('2022-11-06@03:59')
-utctolocal(2022-11-06@03:59) => 2022-11-05@23:59
-set b utctolocal('2022-11-06@07:00')
-utctolocal(2022-11-06@07:00) => 2022-11-06@02:00
-set b utctolocal('2022-11-06@07:01')
-utctolocal(2022-11-06@07:01) => 2022-11-06@02:01
-set b utctolocal('2022-11-06@07:59')
-utctolocal(2022-11-06@07:59) => 2022-11-06@02:59
-set b utctolocal('2022-11-06@08:00')
-utctolocal(2022-11-06@08:00) => 2022-11-06@03:00
-set b utctolocal('2022-11-06@08:01')
-utctolocal(2022-11-06@08:01) => 2022-11-06@03:01
-set b utctolocal('2022-12-01@18:00')
-utctolocal(2022-12-01@18:00) => 2022-12-01@13:00
-
-set c timezone('2022-07-01')
-timezone(2022-07-01) => "EDT"
-set c timezone('2022-12-01')
-timezone(2022-12-01) => "EST"
-
-No reminders.
-# Test conversion between local time and UTC
-
-set a localtoutc('2022-01-01@12:00')
-localtoutc(2022-01-01@12:00) => 2022-01-01@11:00
-set a localtoutc('2022-03-13@03:59')
-localtoutc(2022-03-13@03:59) => 2022-03-13@02:59
-set a localtoutc('2022-03-13@04:00')
-localtoutc(2022-03-13@04:00) => 2022-03-13@03:00
-set a localtoutc('2022-03-13@04:01')
-localtoutc(2022-03-13@04:01) => 2022-03-13@03:01
-set a localtoutc('2022-06-01@12:00')
-localtoutc(2022-06-01@12:00) => 2022-06-01@10:00
-set a localtoutc('2022-11-06@02:59')
-localtoutc(2022-11-06@02:59) => 2022-11-06@01:59
-set a localtoutc('2022-11-06@03:00')
-localtoutc(2022-11-06@03:00) => 2022-11-06@02:00
-set a localtoutc('2022-11-06@03:01')
-localtoutc(2022-11-06@03:01) => 2022-11-06@02:01
-set a localtoutc('2022-12-01@12:00')
-localtoutc(2022-12-01@12:00) => 2022-12-01@11:00
-
-set b utctolocal('2022-01-01@17:00')
-utctolocal(2022-01-01@17:00) => 2022-01-01@18:00
-set b utctolocal('2022-03-13@06:00')
-utctolocal(2022-03-13@06:00) => 2022-03-13@07:00
-set b utctolocal('2022-03-13@07:01')
-utctolocal(2022-03-13@07:01) => 2022-03-13@08:01
-set b utctolocal('2022-03-13@07:59')
-utctolocal(2022-03-13@07:59) => 2022-03-13@08:59
-set b utctolocal('2022-03-13@07:00')
-utctolocal(2022-03-13@07:00) => 2022-03-13@08:00
-set b utctolocal('2022-03-13@07:01')
-utctolocal(2022-03-13@07:01) => 2022-03-13@08:01
-set b utctolocal('2022-03-13@07:59')
-utctolocal(2022-03-13@07:59) => 2022-03-13@08:59
-set b utctolocal('2022-06-01@16:00')
-utctolocal(2022-06-01@16:00) => 2022-06-01@18:00
-set b utctolocal('2022-11-06@03:59')
-utctolocal(2022-11-06@03:59) => 2022-11-06@04:59
-set b utctolocal('2022-11-06@07:00')
-utctolocal(2022-11-06@07:00) => 2022-11-06@08:00
-set b utctolocal('2022-11-06@07:01')
-utctolocal(2022-11-06@07:01) => 2022-11-06@08:01
-set b utctolocal('2022-11-06@07:59')
-utctolocal(2022-11-06@07:59) => 2022-11-06@08:59
-set b utctolocal('2022-11-06@08:00')
-utctolocal(2022-11-06@08:00) => 2022-11-06@09:00
-set b utctolocal('2022-11-06@08:01')
-utctolocal(2022-11-06@08:01) => 2022-11-06@09:01
-set b utctolocal('2022-12-01@18:00')
-utctolocal(2022-12-01@18:00) => 2022-12-01@19:00
-
-set c timezone('2022-07-01')
-timezone(2022-07-01) => "CEST"
-set c timezone('2022-12-01')
-timezone(2022-12-01) => "CET"
-
-No reminders.
-Solstice/Equinox Tests
+ Solstice/Equinox Tests
March Solstice 2022 is 2022-03-20@15:34 UTC
June Equinox 2022 is 2022-06-21@09:14 UTC
September Solstice 2022 is 2022-09-23@01:05 UTC