[ARVADOS] created: 4c4a74d1f077945376a2d3bbbdc5f2eebc2f8de2
Git user
git at public.curoverse.com
Fri Aug 19 11:37:21 EDT 2016
at 4c4a74d1f077945376a2d3bbbdc5f2eebc2f8de2 (commit)
commit 4c4a74d1f077945376a2d3bbbdc5f2eebc2f8de2
Author: Tom Clegg <tom at curoverse.com>
Date: Fri Aug 19 11:14:03 2016 -0400
9799: Use regular (non-admin) user in Workbench websocket tests.
diff --git a/apps/workbench/test/integration/websockets_test.rb b/apps/workbench/test/integration/websockets_test.rb
index e9f5a79..e302a39 100644
--- a/apps/workbench/test/integration/websockets_test.rb
+++ b/apps/workbench/test/integration/websockets_test.rb
@@ -6,20 +6,20 @@ class WebsocketTest < ActionDispatch::IntegrationTest
end
test "test page" do
- visit(page_with_token("admin", "/websockets"))
+ visit(page_with_token("active", "/websockets"))
fill_in("websocket-message-content", :with => "Stuff")
click_button("Send")
assert_text '"status":400'
end
test "test live logging" do
- visit(page_with_token("admin", "/pipeline_instances/zzzzz-d1hrv-9fm8l10i9z2kqc6"))
+ visit(page_with_token("active", "/pipeline_instances/zzzzz-d1hrv-9fm8l10i9z2kqc6"))
click_link("Log")
assert_no_text '123 hello'
api = ArvadosApiClient.new
- Thread.current[:arvados_api_token] = @@API_AUTHS["admin"]['api_token']
+ use_token :active
api.api("logs", "", {log: {
object_uuid: "zzzzz-d1hrv-9fm8l10i9z2kqc6",
event_type: "stderr",
@@ -32,14 +32,12 @@ class WebsocketTest < ActionDispatch::IntegrationTest
["jobs", api_fixture("jobs")['running']['uuid']],
["containers", api_fixture("containers")['running']['uuid']],
["container_requests", api_fixture("container_requests")['running']['uuid'], api_fixture("containers")['running']['uuid']],
- ].each do |c|
- test "test live logging scrolling #{c[0]}" do
+ ].each do |controller, uuid, log_uuid|
+ log_uuid = log_uuid || uuid
- controller = c[0]
- uuid = c[1]
- log_uuid = c[2] || c[1]
+ test "test live logging scrolling for #{controller}" do
- visit(page_with_token("admin", "/#{controller}/#{uuid}"))
+ visit(page_with_token("active", "/#{controller}/#{uuid}"))
click_link("Log")
assert_no_text '123 hello'
@@ -50,11 +48,12 @@ class WebsocketTest < ActionDispatch::IntegrationTest
text << "#{i} hello\n"
end
- Thread.current[:arvados_api_token] = @@API_AUTHS["admin"]['api_token']
- api.api("logs", "", {log: {
- object_uuid: log_uuid,
- event_type: "stderr",
- properties: {"text" => text}}})
+ use_token :dispatch1 do
+ api.api("logs", "", {log: {
+ object_uuid: log_uuid,
+ event_type: "stderr",
+ properties: {"text" => text}}})
+ end
assert_text '1000 hello'
# First test that when we're already at the bottom of the page, it scrolls down
@@ -87,7 +86,7 @@ class WebsocketTest < ActionDispatch::IntegrationTest
end
test "pipeline instance arv-refresh-on-log-event" do
- Thread.current[:arvados_api_token] = @@API_AUTHS["admin"]['api_token']
+ use_token :active
# Do something and check that the pane reloads.
p = PipelineInstance.create({state: "RunningOnServer",
components: {
@@ -98,15 +97,17 @@ class WebsocketTest < ActionDispatch::IntegrationTest
}
})
- visit(page_with_token("admin", "/pipeline_instances/#{p.uuid}"))
+ visit(page_with_token("active", "/pipeline_instances/#{p.uuid}"))
assert_text 'Active'
assert page.has_link? 'Pause'
assert_no_text 'Complete'
assert page.has_no_link? 'Re-run with latest'
- p.state = "Complete"
- p.save!
+ use_token :admin do
+ p.state = "Complete"
+ p.save!
+ end
assert_no_text 'Active'
assert page.has_no_link? 'Pause'
@@ -115,26 +116,28 @@ class WebsocketTest < ActionDispatch::IntegrationTest
end
test "job arv-refresh-on-log-event" do
- Thread.current[:arvados_api_token] = @@API_AUTHS["admin"]['api_token']
+ use_token :active
# Do something and check that the pane reloads.
p = Job.where(uuid: api_fixture('jobs')['running_will_be_completed']['uuid']).results.first
- visit(page_with_token("admin", "/jobs/#{p.uuid}"))
+ visit(page_with_token("active", "/jobs/#{p.uuid}"))
assert_no_text 'complete'
assert_no_text 'Re-run job'
- p.state = "Complete"
- p.save!
+ use_token :admin do
+ p.state = "Complete"
+ p.save!
+ end
assert_text 'complete'
assert_text 'Re-run job'
end
test "dashboard arv-refresh-on-log-event" do
- Thread.current[:arvados_api_token] = @@API_AUTHS["admin"]['api_token']
+ use_token :active
- visit(page_with_token("admin", "/"))
+ visit(page_with_token("active", "/"))
assert_no_text 'test dashboard arv-refresh-on-log-event'
@@ -217,9 +220,9 @@ class WebsocketTest < ActionDispatch::IntegrationTest
end
test "test running job with just a few previous log records" do
- Thread.current[:arvados_api_token] = @@API_AUTHS["admin"]['api_token']
+ use_token :active
job = Job.where(uuid: api_fixture("jobs")['running']['uuid']).results.first
- visit page_with_token("admin", "/jobs/#{job.uuid}")
+ visit page_with_token("active", "/jobs/#{job.uuid}")
api = ArvadosApiClient.new
@@ -246,10 +249,10 @@ class WebsocketTest < ActionDispatch::IntegrationTest
test "test running job with too many previous log records" do
Rails.configuration.running_job_log_records_to_fetch = 5
- Thread.current[:arvados_api_token] = @@API_AUTHS["admin"]['api_token']
+ use_token :active
job = Job.where(uuid: api_fixture("jobs")['running']['uuid']).results.first
- visit page_with_token("admin", "/jobs/#{job.uuid}")
+ visit page_with_token("active", "/jobs/#{job.uuid}")
api = ArvadosApiClient.new
commit f9a00e30a8461c52791481d3ffa9d73b7507f654
Author: Tom Clegg <tom at curoverse.com>
Date: Fri Aug 19 09:29:58 2016 -0400
9799: Use regular (non-admin) user in websocket integration tests.
diff --git a/services/api/test/integration/websocket_test.rb b/services/api/test/integration/websocket_test.rb
index 0c99fcc..99ca7ac 100644
--- a/services/api/test/integration/websocket_test.rb
+++ b/services/api/test/integration/websocket_test.rb
@@ -69,7 +69,7 @@ class WebsocketTest < ActionDispatch::IntegrationTest
test "connect, subscribe and get response" do
status = nil
- ws_helper :admin do |ws|
+ ws_helper :active do |ws|
ws.on :open do |event|
ws.send ({method: 'subscribe'}.to_json)
end
@@ -89,9 +89,9 @@ class WebsocketTest < ActionDispatch::IntegrationTest
spec = nil
ev_uuid = nil
- authorize_with :admin
+ authorize_with :active
- ws_helper :admin do |ws|
+ ws_helper :active do |ws|
ws.on :open do |event|
ws.send ({method: 'subscribe'}.to_json)
end
@@ -126,9 +126,9 @@ class WebsocketTest < ActionDispatch::IntegrationTest
spec_ev_uuid = nil
human_ev_uuid = nil
- authorize_with :admin
+ authorize_with :active
- ws_helper :admin do |ws|
+ ws_helper :active do |ws|
ws.on :open do |event|
ws.send ({method: 'subscribe'}.to_json)
end
@@ -166,9 +166,9 @@ class WebsocketTest < ActionDispatch::IntegrationTest
human = nil
human_ev_uuid = nil
- authorize_with :admin
+ authorize_with :active
- ws_helper :admin do |ws|
+ ws_helper :active do |ws|
ws.on :open do |event|
ws.send ({method: 'subscribe', filters: [['object_uuid', 'is_a', 'arvados#human']]}.to_json)
end
@@ -204,9 +204,9 @@ class WebsocketTest < ActionDispatch::IntegrationTest
spec_ev_uuid = nil
human_ev_uuid = nil
- authorize_with :admin
+ authorize_with :active
- ws_helper :admin do |ws|
+ ws_helper :active do |ws|
ws.on :open do |event|
ws.send ({method: 'subscribe', filters: [['object_uuid', 'is_a', 'arvados#human']]}.to_json)
ws.send ({method: 'subscribe', filters: [['object_uuid', 'is_a', 'arvados#specimen']]}.to_json)
@@ -249,9 +249,9 @@ class WebsocketTest < ActionDispatch::IntegrationTest
state = 1
t1 = nil
- authorize_with :admin
+ authorize_with :active
- ws_helper :admin do |ws|
+ ws_helper :active do |ws|
ws.on :open do |event|
ws.send ({method: 'subscribe', filters: [['object_uuid', 'is_a', 'arvados#trait'], ['event_type', '=', 'update']]}.to_json)
end
@@ -285,13 +285,13 @@ class WebsocketTest < ActionDispatch::IntegrationTest
human = nil
human_ev_uuid = nil
- authorize_with :admin
+ authorize_with :active
lastid = logs(:admin_changes_specimen).id
l1 = nil
l2 = nil
- ws_helper :admin do |ws|
+ ws_helper :active do |ws|
ws.on :open do |event|
ws.send ({method: 'subscribe', last_log_id: lastid}.to_json)
end
@@ -329,9 +329,9 @@ class WebsocketTest < ActionDispatch::IntegrationTest
spec_ev_uuid = nil
filter_id = nil
- authorize_with :admin
+ authorize_with :active
- ws_helper :admin, false do |ws|
+ ws_helper :active, false do |ws|
ws.on :open do |event|
ws.send ({method: 'subscribe'}.to_json)
EM::Timer.new 3 do
@@ -378,9 +378,9 @@ class WebsocketTest < ActionDispatch::IntegrationTest
spec = nil
spec_ev_uuid = nil
- authorize_with :admin
+ authorize_with :active
- ws_helper :admin, false do |ws|
+ ws_helper :active, false do |ws|
ws.on :open do |event|
ws.send ({method: 'subscribe', filters: [['object_uuid', 'is_a', 'arvados#human']]}.to_json)
EM::Timer.new 6 do
@@ -430,9 +430,9 @@ class WebsocketTest < ActionDispatch::IntegrationTest
human = nil
human_ev_uuid = nil
- authorize_with :admin
+ authorize_with :active
- ws_helper :admin do |ws|
+ ws_helper :active do |ws|
ws.on :open do |event|
ws.send ({method: 'subscribe'}.to_json)
end
@@ -477,9 +477,9 @@ class WebsocketTest < ActionDispatch::IntegrationTest
test "connected, not subscribed, no event" do
slow_test
- authorize_with :admin
+ authorize_with :active
- ws_helper :admin, false do |ws|
+ ws_helper :active, false do |ws|
ws.on :open do |event|
EM::Timer.new 1 do
Specimen.create
@@ -530,7 +530,7 @@ class WebsocketTest < ActionDispatch::IntegrationTest
test "connect, try bogus method" do
status = nil
- ws_helper :admin do |ws|
+ ws_helper :active do |ws|
ws.on :open do |event|
ws.send ({method: 'frobnabble'}.to_json)
end
@@ -548,7 +548,7 @@ class WebsocketTest < ActionDispatch::IntegrationTest
test "connect, missing method" do
status = nil
- ws_helper :admin do |ws|
+ ws_helper :active do |ws|
ws.on :open do |event|
ws.send ({fizzbuzz: 'frobnabble'}.to_json)
end
@@ -566,7 +566,7 @@ class WebsocketTest < ActionDispatch::IntegrationTest
test "connect, send malformed request" do
status = nil
- ws_helper :admin do |ws|
+ ws_helper :active do |ws|
ws.on :open do |event|
ws.send '<XML4EVER></XML4EVER>'
end
@@ -585,9 +585,9 @@ class WebsocketTest < ActionDispatch::IntegrationTest
test "connect, try subscribe too many filters" do
state = 1
- authorize_with :admin
+ authorize_with :active
- ws_helper :admin do |ws|
+ ws_helper :active do |ws|
ws.on :open do |event|
(1..17).each do |i|
ws.send ({method: 'subscribe', filters: [['object_uuid', '=', i]]}.to_json)
@@ -618,9 +618,9 @@ class WebsocketTest < ActionDispatch::IntegrationTest
event_count = 0
log_start = Log.order(:id).last.id
- authorize_with :admin
+ authorize_with :active
- ws_helper :admin, false do |ws|
+ ws_helper :active, false do |ws|
EM::Timer.new 45 do
# Needs a longer timeout than the default
ws.close
@@ -661,9 +661,9 @@ class WebsocketTest < ActionDispatch::IntegrationTest
human = nil
human_ev_uuid = nil
- authorize_with :admin
+ authorize_with :active
- ws_helper :admin do |ws|
+ ws_helper :active do |ws|
ws.on :open do |event|
# test that #6451 is fixed (invalid filter crashes websockets)
ws.send ({method: 'subscribe', filters: [['object_blarg', 'is_a', 'arvados#human']]}.to_json)
-----------------------------------------------------------------------
hooks/post-receive
--
More information about the arvados-commits
mailing list