summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Helma <helma@in-silico.ch>2015-07-16 19:07:11 +0200
committerChristoph Helma <helma@in-silico.ch>2015-07-16 19:07:11 +0200
commitadd6de8fa72a4b4704fdf5077600086a4f1a366d (patch)
tree5c778d4caa378f1c3b2029ce41e19320021f5613
parent6f502b8e24319027929a9eed08450d4ece7f26c2 (diff)
task tests working
-rw-r--r--test/task.rb118
1 files changed, 39 insertions, 79 deletions
diff --git a/test/task.rb b/test/task.rb
index fa81650..8ef37c7 100644
--- a/test/task.rb
+++ b/test/task.rb
@@ -22,19 +22,20 @@ class TaskTest < MiniTest::Test
def test_01_create_and_complete
task = OpenTox::Task.run __method__ do
- sleep 5
- $task[:uri]
+ sleep 2
+ "TEST"
end
assert_equal true, task.running?
- assert_equal "Running", task.hasStatus
+ assert_equal "Running", task.status
assert_equal 202, task.code
task.wait
assert_equal 200, task.code
assert_equal true, task.completed?
- assert_equal "Completed", task.hasStatus
- assert_equal $task[:uri], task.resultURI
- refute_empty task.created_at
- refute_empty task.finished_at
+ assert_equal "Completed", task.status
+ assert_equal "TEST", task.result
+ refute_empty task.created_at.to_s
+ refute_empty task.finished_at.to_s
+ assert true, task.finished_at > task.created_at
end
def test_02_all
@@ -47,7 +48,7 @@ class TaskTest < MiniTest::Test
def test_03_create_and_cancel
task = OpenTox::Task.run __method__ do
- sleep 5
+ sleep 2
$task[:uri]
end
assert_equal true, task.running?
@@ -61,35 +62,38 @@ class TaskTest < MiniTest::Test
def test_04_create_and_fail
task = OpenTox::Task.run __method__,"http://test.org/fake_creator" do
- sleep 5
+ sleep 2
raise "A runtime error occured"
end
assert_equal true, task.running?
- assert_equal "Running", task.hasStatus
+ assert_equal "Running", task.status
assert_equal 202, task.code
task.wait
assert task.error?
assert_equal 500, task.code
- assert_equal "Error", task.hasStatus
+ assert_equal "Error", task.status
assert_equal "A runtime error occured", task.error_report["message"]
assert_equal 500, task.error_report["statusCode"]
refute_empty task.error_report["errorCause"]
- refute_empty task.created_at
- refute_empty task.finished_at
+ p task.created_at
+ p task.finished_at
+ assert true, task.created_at < task.finished_at
+ refute_empty task.created_at.to_s
+ refute_empty task.finished_at.to_s
end
def test_05_create_and_fail_with_opentox_error
task = OpenTox::Task.run __method__,"http://test.org/fake_creator" do
- sleep 5
+ sleep 2
raise OpenTox::Error.new 500, "An OpenTox::Error occured"
end
assert task.running?
- assert_equal "Running", task.hasStatus
+ assert_equal "Running", task.status
assert_equal 202, task.code
task.wait
assert task.error?
assert_equal 500, task.code
- assert_equal "Error", task.hasStatus
+ assert_equal "Error", task.status
assert_equal "An OpenTox::Error occured", task.error_report["message"]
assert_equal 500, task.error_report["statusCode"]
refute_empty task.error_report["errorCause"]
@@ -97,16 +101,16 @@ class TaskTest < MiniTest::Test
def test_06_create_and_fail_with_not_found_error
task = OpenTox::Task.run __method__,"http://test.org/fake_creator" do
- sleep 5
+ sleep 2
resource_not_found_error "An OpenTox::ResourceNotFoundError occured", "http://test.org/fake_creator"
end
assert task.running?
- assert_equal "Running", task.hasStatus
+ assert_equal "Running", task.status
assert_equal 202, task.code
task.wait
assert task.error?
assert_equal 404, task.code
- assert_equal "Error", task.hasStatus
+ assert_equal "Error", task.status
assert_equal "An OpenTox::ResourceNotFoundError occured", task.error_report["message"]
assert_equal "OpenTox::ResourceNotFoundError", task.error_report["errorCode"]
refute_empty task.error_report["errorCause"]
@@ -115,52 +119,48 @@ class TaskTest < MiniTest::Test
def test_07_create_and_fail_with_rest_not_found_error
task = OpenTox::Task.run __method__,"http://test.org/fake_creator" do
- sleep 5
+ sleep 2
OpenTox::Feature.new.get
end
assert task.running?
- assert_equal "Running", task.hasStatus
+ assert_equal "Running", task.status
assert_equal 202, task.code
task.wait
assert task.error?
assert_equal 404, task.code
- assert_equal "Error", task.hasStatus
+ assert_equal "Error", task.status
refute_empty task.error_report["errorCause"]
assert_equal 404, task.error_report["statusCode"]
end
def test_08_create_and_fail_with_restclientwrapper_error
task = OpenTox::Task.run __method__,"http://test.org/fake_creator" do
- sleep 5
+ sleep 2
OpenTox::RestClientWrapper.get "invalid uri"
end
assert task.running?
- assert_equal "Running", task.hasStatus, "Expected Task Running has status: #{task.hasStatus} - #{task.uri}"
+ assert_equal "Running", task.status, "Expected Task Running has status: #{task.status} - #{task.id}"
assert_equal 202, task.code
task.wait
assert task.error?
assert_equal 400, task.code
- assert_equal "Error", task.hasStatus
+ assert_equal "Error", task.status
refute_empty task.error_report["errorCause"]
assert_equal 400, task.error_report["statusCode"]
end
- def test_09_check_resultURIs
+ def test_09_check_results
resulturi = "http://resulturi/test/1"
task = OpenTox::Task.run __method__ do
- sleep 5
+ sleep 2
resulturi
end
- assert_equal "Running", task.hasStatus
- response = OpenTox::RestClientWrapper.get task.uri,nil, {:accept => "text/uri-list"}
- assert_equal 202, response.code
- assert_equal task.uri, response
- assert_equal nil, task.resultURI
+ assert_equal "Running", task.status
+ assert_equal 202, task.code
+ assert_equal nil, task.result
task.wait
- response = OpenTox::RestClientWrapper.get task.uri,nil, {:accept => "text/uri-list"}
- assert_equal 200, response.code
- assert_equal resulturi, response
- assert_equal resulturi, task.resultURI
+ assert_equal 200, task.code
+ assert_equal resulturi, task.result
end
def test_10_uri_with_credentials
@@ -195,44 +195,6 @@ class TaskTest < MiniTest::Test
end
end
- def test_11_wait_for_error_task
- # testing two uris:
- # ../dataset/test/error_in_task starts a task that produces an internal-error with message 'error_in_task_message'
- # ../algorithm/test/wait_for_error_in_task starts a task that waits for ../dataset/test/error_in_task
- # TODO: remove test uris from services, e.g. dynamically instantiate Sinatra routes instead
-
- def check_msg(msg,complete)
- assert msg=~/bad_request_error_in_task/,"original task error message ('bad_request_error_in_task') is lost: #{msg}"
- assert((msg=~/\\/)==nil,"no backslashes please!")
- assert complete=~/test.rb:9/,"code line number test.rb:9 is lost"
- end
-
- [ File.join($dataset[:uri],'test/error_in_task'),
- File.join($algorithm[:uri],'test/wait_for_error_in_task')
- ].each do |uri|
-
- task_uri = OpenTox::RestClientWrapper.post uri
- assert(URI.task?(task_uri) ,"no task uri: #{task_uri}")
- task = OpenTox::Task.new task_uri
-
- # test1: wait_for_task, this should abort
- begin
- wait_for_task task_uri
- assert false,"should have thrown an error because there was an error in the task we have waited for"
- rescue => ex
- assert ex.is_a?(OpenTox::BadRequestError),"not a bad request error, instead: #{ex.class}"
- p ex
- p ex.message
- p ex.error_cause
- check_msg(ex.message,ex.error_cause)
- end
-
- ## test2: test if task is set accordingly
- assert task.error?
- assert task.error_report["errorCode"]==OpenTox::BadRequestError.to_s,"errorCode should be #{OpenTox::BadRequestError.to_s}, but is #{task.error_report["errorCode"]}"
- check_msg(task.error_report["message"],task.error_report["errorCause"])
- end
- end
def test_12_non_runtime_errors
@@ -243,22 +205,20 @@ class TaskTest < MiniTest::Test
error_msg = "raising a #{ex}"
task = OpenTox::Task.run __method__,"http://test.org/fake_creator" do
- sleep 5
+ sleep 2
raise ex,error_msg
end
assert task.running?
- assert_equal "Running", task.hasStatus
+ assert_equal "Running", task.status
assert_equal 202, task.code
task.wait
assert task.error?
assert_equal 500, task.code
- assert_equal "Error", task.hasStatus
+ assert_equal "Error", task.status
refute_empty task.error_report["errorCause"]
assert_match error_msg,task.error_report["message"]
end
end
-=begin
-=end
end