summaryrefslogtreecommitdiffstats
path: root/test/task_test.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/task_test.rb')
-rw-r--r--test/task_test.rb30
1 files changed, 30 insertions, 0 deletions
diff --git a/test/task_test.rb b/test/task_test.rb
index bbdce89..47393e8 100644
--- a/test/task_test.rb
+++ b/test/task_test.rb
@@ -18,4 +18,34 @@ class TaskTest < HCl::TestCase
assert_equal 1, HCl::Task.all.size
assert_equal 'Security support', HCl::Task.all.first.name
end
+
+ def test_add
+ task = HCl::Task.new(id:1, project:HCl::Project.new({id:2}))
+ FakeWeb.register_uri(:post, %r{/daily/add$},
+ body: Yajl::Encoder.encode(note:'good stuff',
+ hours:0.2, project_id:2, task_id:1, spent_at: Date.today))
+ entry = task.add(note:'good stuff', starting_time:0.2)
+ assert_equal 'good stuff', entry.note
+ end
+
+ def test_start_running
+ task = HCl::Task.new(id:1, project:HCl::Project.new({id:2}))
+ FakeWeb.register_uri(:post, %r{/daily/add$},
+ body: Yajl::Encoder.encode(note:'good stuff',
+ timer_started_at:DateTime.now,
+ hours:0.2, project_id:2, task_id:1, spent_at: Date.today))
+ entry = task.start(note:'good stuff', starting_time:0.2)
+ assert_equal 'good stuff', entry.note
+ end
+
+ def test_start_then_toggle
+ task = HCl::Task.new(id:1, project:HCl::Project.new({id:2}))
+ FakeWeb.register_uri(:post, %r{/daily/add$},
+ body: Yajl::Encoder.encode(id:123, note:'woot'))
+ FakeWeb.register_uri(:get, %r{/daily/timer/123$},
+ body: Yajl::Encoder.encode(note:'good stuff',
+ hours:0.2, project_id:2, task_id:1, spent_at: Date.today))
+ entry = task.start(note:'good stuff', starting_time:0.2)
+ assert_equal 'good stuff', entry.note
+ end
end