Bug 18009 - IssueSlip.t test fails if launched between 00:00 and 00:59
authorMason James <mtj@kohaaloha.com>
Sat, 28 Jan 2017 11:47:20 +0000 (00:47 +1300)
committerKyle M Hall <kyle@bywatersolutions.com>
Tue, 14 Feb 2017 13:59:23 +0000 (13:59 +0000)
to test patch...

1/ set date between 00:00 and 00:59
$ sudo date -s 'Sun Jan 29 00:41:55 NZDT 2017'

2/ run prove, see fail
$ prove -v t/db_dependent/Members/IssueSlip.t
...
t/db_dependent/Members/IssueSlip.t (Wstat: 65280 Tests: 1 Failed: 0)
Result: FAIL

3/ apply patch

4/ run prove, see pass
$ prove -v t/db_dependent/Members/IssueSlip.t
...
All tests successful.
Result: PASS

NOTE: for code obscurity you could have also done a modulus 24. ;)

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
t/db_dependent/Members/IssueSlip.t

index 23340fe..c8135bc 100644 (file)
@@ -250,7 +250,7 @@ EOS
         $date_due_in_time_as_formatted = output_pref( $date_due_in_time );
         $issue_date = $date_due_in_time->clone->subtract_duration( DateTime::Duration->new( minutes => 1 ) );
         AddIssue( $borrower, $barcode1, $date_due_in_time, undef, $issue_date );
-        $date_due_in_late = $today->clone->set(hour => $today->hour - 1);
+        $date_due_in_late = $today->clone->subtract( hours => 1 );
         $date_due_in_late_as_formatted = output_pref( $date_due_in_late );
         $issue_date = $yesterday->clone;
         AddIssue( $borrower, $barcode2, $date_due_in_late, undef, $issue_date );
@@ -374,7 +374,7 @@ EOS
         $date_due_in_time_as_formatted = output_pref( $date_due_in_time );
         $issue_date = $date_due_in_time->clone->subtract_duration( DateTime::Duration->new( minutes => 1 ) );
         AddIssue( $borrower, $barcode1, $date_due_in_time, undef, $issue_date );
-        $date_due_in_late = $today->clone->set(hour => $today->hour - 1);
+        $date_due_in_late = $today->clone->subtract( hours => 1 );
         $date_due_in_late_as_formatted = output_pref( $date_due_in_late );
         $issue_date = $yesterday->clone;
         AddIssue( $borrower, $barcode2, $date_due_in_late, undef, $issue_date );