Showing 1 changed files with 38 additions and 0 deletions
+38
t/age_string.t
... ...
@@ -0,0 +1,38 @@
1
+#!/usr/bin/env perl
2
+
3
+use Test::More;
4
+
5
+use Gitprep::Git;
6
+
7
+my @cases = (
8
+  { stimulus =>                       0,     expected => ' right now'    },
9
+  { stimulus =>                       1,     expected => 'a sec ago'     },
10
+  { stimulus =>                      59,     expected => '59 sec ago'    },
11
+  { stimulus =>                      60,     expected => 'a min ago'     },
12
+  { stimulus =>                      60 + 1, expected => 'a min ago'     },
13
+  { stimulus =>                  2 * 60 - 1, expected => 'a min ago'     },
14
+  { stimulus =>                  2 * 60,     expected => '2 min ago'     },
15
+  { stimulus =>                  2 * 60 + 1, expected => '2 min ago'     },
16
+  { stimulus =>                 60 * 60 - 1, expected => '59 min ago'    },
17
+  { stimulus =>                 60 * 60,     expected => 'a hours ago'   },
18
+  { stimulus =>                 60 * 60 + 1, expected => 'a hours ago'   },
19
+  { stimulus =>                 61 * 60,     expected => 'a hours ago'   },
20
+  { stimulus =>            24 * 60 * 60 - 1, expected => '23 hours ago'  },
21
+  { stimulus =>            24 * 60 * 60,     expected => 'a days ago'    },
22
+  { stimulus =>            24 * 60 * 60 + 1, expected => 'a days ago'    },
23
+  { stimulus =>        7 * 24 * 60 * 60 - 1, expected => '6 days ago'    },
24
+  { stimulus =>        7 * 24 * 60 * 60,     expected => 'a weeks ago'   },
25
+  { stimulus =>        7 * 24 * 60 * 60 + 1, expected => 'a weeks ago'   },
26
+  { stimulus => (365/12) * 24 * 60 * 60 - 1, expected => '4 weeks ago'   },
27
+  { stimulus => (365/12) * 24 * 60 * 60,     expected => 'a months ago'  },
28
+  { stimulus => (365/12) * 24 * 60 * 60 + 1, expected => 'a months ago'  },
29
+  { stimulus =>  365     * 24 * 60 * 60 - 1, expected => '11 months ago' },
30
+  { stimulus =>  365     * 24 * 60 * 60,     expected => 'a years ago'   },
31
+  { stimulus =>  365     * 24 * 60 * 60 + 1, expected => 'a years ago'   },
32
+);
33
+
34
+plan ( tests => scalar @cases );
35
+
36
+for ( @cases ) {
37
+  is ( Gitprep::Git->_age_string ( $_->{stimulus} ), $_->{expected}, "$_->{stimulus} ~ $_->{expected}" );
38
+}