summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorZack Hobson2013-12-26 16:34:38 -0800
committerZack Hobson2013-12-26 16:38:11 -0800
commit3dc60c4b324b58f5f3539842038fc9238ba29d47 (patch)
tree2e4f1bffdf8c0e25d6b8387dd0272bc198f272bb /test
parent5662c7eb3ddba718c2dd18b5831af3eab23d93e1 (diff)
downloadhcl-3dc60c4b324b58f5f3539842038fc9238ba29d47.tar.bz2
task: more test coverage
Diffstat (limited to 'test')
-rw-r--r--test/net_test.rb9
-rw-r--r--test/task_test.rb30
-rw-r--r--test/test_helper.rb15
3 files changed, 44 insertions, 10 deletions
diff --git a/test/net_test.rb b/test/net_test.rb
index 3eec454..e00d16a 100644
--- a/test/net_test.rb
+++ b/test/net_test.rb
@@ -2,15 +2,6 @@ require 'test_helper'
class NetTest < HCl::TestCase
- def setup
- FakeWeb.allow_net_connect = false
- HCl::Net.configure \
- 'login' => 'bob',
- 'password' => 'secret',
- 'subdomain' => 'bobclock',
- 'ssl' => true
- end
-
def test_configure
assert_equal 'bob', HCl::Net.login
assert_equal 'secret', HCl::Net.password
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
diff --git a/test/test_helper.rb b/test/test_helper.rb
index 9067d91..98c0b35 100644
--- a/test/test_helper.rb
+++ b/test/test_helper.rb
@@ -31,5 +31,18 @@ require 'fakeweb'
# require test extensions/helpers
Dir[File.dirname(__FILE__) + '/ext/*.rb'].each { |ext| require ext }
-class HCl::TestCase < MiniTest::Unit::TestCase; end
+class HCl::TestCase < MiniTest::Unit::TestCase
+ def setup
+ FakeWeb.allow_net_connect = false
+ HCl::Net.configure \
+ 'login' => 'bob',
+ 'password' => 'secret',
+ 'subdomain' => 'bobclock',
+ 'ssl' => true
+ end
+ def teardown
+ FakeWeb.clean_registry
+ end
+end
+