aboutsummaryrefslogtreecommitdiff
path: root/test/notification.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/notification.rb')
-rw-r--r--test/notification.rb57
1 files changed, 57 insertions, 0 deletions
diff --git a/test/notification.rb b/test/notification.rb
new file mode 100644
index 0000000..9cc3306
--- /dev/null
+++ b/test/notification.rb
@@ -0,0 +1,57 @@
+$: << "../lib/"
+
+require 'test/unit'
+require 'mauve/notification'
+
+# Test changes to notification things.
+class MauveNotificationTest < Test::Unit::TestCase
+
+ def test_x_in_list_of_y
+ mdr = Mauve::DuringRunner.new(Time.now)
+ [
+ [[0,1,3,4], 2, false],
+ [[0,2,4,6], 2, true],
+ [[0..1,3..6],2, false],
+ [[0..2, 4,5],2, true],
+ [[0,1..3], 2, true],
+ ].each do |y,x,result|
+ assert_equal(result, mdr.send(:x_in_list_of_y, x,y))
+ end
+ end
+
+ def test_hours_in_day
+ t = Time.gm(2010,1,2,3,4,5)
+ # => Sat Jan 02 03:04:05 UTC 2010
+ mdr = Mauve::DuringRunner.new(t)
+ [
+ [[0,1,3,4], true],
+ [[0,2,4,6], false],
+ [[[0,1,3],4], true],
+ [[[0,2,4],6], false],
+ [[0..1,3..6], true],
+ [[0..2, 4,5], false],
+ [[0,1..3], true],
+ [[4..12], false]
+ ].each do |hours, result|
+ assert_equal(result, mdr.send(:hours_in_day, hours))
+ end
+ end
+
+ def test_days_in_week
+ t = Time.gm(2010,1,2,3,4,5)
+ # => Sat Jan 02 03:04:05 UTC 2010
+ mdr = Mauve::DuringRunner.new(t)
+ [
+ [[0,1,3,4], false],
+ [[0,2,4,6], true],
+ [[[0,1,3],4], false],
+ [[[0,2,4],6], true],
+ [[0..1,3..6], true],
+ [[0..2, 4,5], false],
+ [[0,1..3], false],
+ [[4..6], true]
+ ].each do |days, result|
+ assert_equal(result, mdr.send(:days_in_week, days), "#{t.wday} in #{days.join(", ")}")
+ end
+ end
+end