taverna-player 0.8.0 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +8 -8
  2. data/.travis.yml +6 -0
  3. data/CHANGES.rdoc +28 -0
  4. data/CITATION +20 -0
  5. data/Gemfile +0 -12
  6. data/README.rdoc +30 -16
  7. data/Rakefile +1 -0
  8. data/app/controllers/taverna_player/workflows_controller.rb +18 -0
  9. data/app/helpers/taverna_player/application_helper.rb +2 -2
  10. data/app/models/taverna_player/run.rb +35 -3
  11. data/app/models/taverna_player/workflow.rb +41 -0
  12. data/app/views/taverna_player/workflows/_info.json.jbuilder +1 -0
  13. data/{test/dummy/app/views → app/views/taverna_player}/workflows/index.html.erb +1 -1
  14. data/app/views/taverna_player/workflows/index.json.jbuilder +1 -0
  15. data/config/routes.rb +9 -0
  16. data/db/migrate/20140917165505_create_taverna_player_workflows.rb +12 -0
  17. data/lib/generators/taverna_player/controllers_generator.rb +5 -6
  18. data/lib/generators/taverna_player/models_generator.rb +3 -3
  19. data/lib/generators/templates/callbacks/worker_callbacks.rb +5 -5
  20. data/{test/dummy/app → lib/generators/templates}/controllers/workflows_controller.rb +7 -4
  21. data/{test/dummy/test/functional/workflows_controller_test.rb → lib/generators/templates/models/workflow.rb} +6 -7
  22. data/lib/generators/templates/player_initializer.rb +5 -4
  23. data/lib/taverna-player.rb +11 -1
  24. data/lib/taverna_player/concerns/controllers/runs_controller.rb +1 -1
  25. data/lib/taverna_player/concerns/controllers/workflows_controller.rb +41 -0
  26. data/lib/taverna_player/concerns/models/run.rb +42 -14
  27. data/lib/taverna_player/concerns/models/run_port.rb +2 -1
  28. data/lib/taverna_player/concerns/models/workflow.rb +44 -0
  29. data/lib/taverna_player/model_proxy.rb +14 -8
  30. data/lib/taverna_player/version.rb +1 -1
  31. data/taverna_player.gemspec +1 -0
  32. data/test/dummy/app/views/layouts/application.html.erb +1 -1
  33. data/test/dummy/config/initializers/taverna_player.rb +1 -4
  34. data/test/dummy/config/routes.rb +1 -7
  35. data/test/dummy/db/migrate/20140917165846_drop_workflows.rb +9 -0
  36. data/test/dummy/db/migrate/20140917170017_create_taverna_player_workflows.taverna_player.rb +13 -0
  37. data/test/dummy/db/schema.rb +9 -9
  38. data/test/dummy/lib/callbacks.rb +4 -4
  39. data/test/fixtures/delayed_jobs.yml +45 -0
  40. data/test/fixtures/taverna_player/interactions.yml +3 -3
  41. data/test/fixtures/taverna_player/run_ports.yml +7 -12
  42. data/test/fixtures/taverna_player/runs.yml +43 -13
  43. data/test/fixtures/{workflows.yml → taverna_player/workflows.yml} +1 -4
  44. data/test/fixtures/users.yml +2 -3
  45. data/test/functional/taverna_player/runs_controller_test.rb +42 -15
  46. data/test/functional/taverna_player/workflows_controller_test.rb +37 -0
  47. data/test/unit/helpers/taverna_player/application_helper_test.rb +1 -1
  48. data/test/unit/taverna_player/interaction_test.rb +2 -2
  49. data/test/unit/taverna_player/model_proxy_test.rb +58 -0
  50. data/test/unit/taverna_player/run_test.rb +103 -23
  51. data/test/unit/taverna_player/worker_test.rb +2 -0
  52. metadata +39 -12
  53. data/test/dummy/app/models/workflow.rb +0 -32
@@ -0,0 +1,9 @@
1
+ class DropWorkflows < ActiveRecord::Migration
2
+ def up
3
+ drop_table :workflows
4
+ end
5
+
6
+ def down
7
+ raise ActiveRecord::IrreversibleMigration
8
+ end
9
+ end
@@ -0,0 +1,13 @@
1
+ # This migration comes from taverna_player (originally 20140917165505)
2
+ class CreateTavernaPlayerWorkflows < ActiveRecord::Migration
3
+ def change
4
+ create_table :taverna_player_workflows do |t|
5
+ t.string :title
6
+ t.string :author
7
+ t.text :description
8
+ t.string :file
9
+
10
+ t.timestamps
11
+ end
12
+ end
13
+ end
@@ -11,7 +11,7 @@
11
11
  #
12
12
  # It's strongly recommended to check this file into your version control system.
13
13
 
14
- ActiveRecord::Schema.define(:version => 20140226143013) do
14
+ ActiveRecord::Schema.define(:version => 20140917170017) do
15
15
 
16
16
  create_table "delayed_jobs", :force => true do |t|
17
17
  t.integer "priority", :default => 0
@@ -103,14 +103,7 @@ ActiveRecord::Schema.define(:version => 20140226143013) do
103
103
 
104
104
  add_index "taverna_player_service_credentials", ["uri"], :name => "index_taverna_player_service_credentials_on_uri"
105
105
 
106
- create_table "users", :force => true do |t|
107
- t.string "name"
108
- t.string "email"
109
- t.datetime "created_at", :null => false
110
- t.datetime "updated_at", :null => false
111
- end
112
-
113
- create_table "workflows", :force => true do |t|
106
+ create_table "taverna_player_workflows", :force => true do |t|
114
107
  t.string "title"
115
108
  t.string "author"
116
109
  t.text "description"
@@ -119,4 +112,11 @@ ActiveRecord::Schema.define(:version => 20140226143013) do
119
112
  t.datetime "updated_at", :null => false
120
113
  end
121
114
 
115
+ create_table "users", :force => true do |t|
116
+ t.string "name"
117
+ t.string "email"
118
+ t.datetime "created_at", :null => false
119
+ t.datetime "updated_at", :null => false
120
+ end
121
+
122
122
  end
@@ -11,21 +11,21 @@
11
11
  #------------------------------------------------------------------------------
12
12
 
13
13
  def player_pre_run_callback(run)
14
- w = Workflow.find(run.workflow_id)
14
+ w = TavernaPlayer::Workflow.find(run.workflow_id)
15
15
  puts "Pre-run callback called for run '#{run.name}' of workflow '#{w.id}'"
16
16
  end
17
17
 
18
18
  def player_post_run_callback(run)
19
- w = Workflow.find(run.workflow_id)
19
+ w = TavernaPlayer::Workflow.find(run.workflow_id)
20
20
  puts "Post-run callback called for run '#{run.name}' of workflow '#{w.id}'"
21
21
  end
22
22
 
23
23
  def player_run_cancelled_callback(run)
24
- w = Workflow.find(run.workflow_id)
24
+ w = TavernaPlayer::Workflow.find(run.workflow_id)
25
25
  puts "Run-cancelled callback called for run '#{run.name}' of workflow '#{w.id}'"
26
26
  end
27
27
 
28
28
  def player_run_failed_callback(run)
29
- w = Workflow.find(run.workflow_id)
29
+ w = TavernaPlayer::Workflow.find(run.workflow_id)
30
30
  puts "Run-failed callback called for run '#{run.name}' of workflow '#{w.id}'"
31
31
  end
@@ -0,0 +1,45 @@
1
+ #------------------------------------------------------------------------------
2
+ # Copyright (c) 2014 The University of Manchester, UK.
3
+ #
4
+ # BSD Licenced. See LICENCE.rdoc for details.
5
+ #
6
+ # Taverna Player was developed in the BioVeL project, funded by the European
7
+ # Commission 7th Framework Programme (FP7), through grant agreement
8
+ # number 283359.
9
+ #
10
+ # Author: Robert Haines
11
+ #------------------------------------------------------------------------------
12
+
13
+ # For some reason we can't use autogenerated IDs and we have to explicitly set
14
+ # the created_at and updated_at fields otherwise we get database errors for
15
+ # every test. Does DJ do something odd?
16
+
17
+ one:
18
+ id: 1
19
+ run_at: 2014-07-21 18:20:00
20
+ created_at: 2014-07-21 18:20:00
21
+ updated_at: 2014-07-21 18:20:00
22
+
23
+ two:
24
+ id: 2
25
+ run_at: 2014-07-21 18:20:00
26
+ failed_at: 2014-07-21 18:22:00
27
+ created_at: 2014-07-21 18:20:00
28
+ updated_at: 2014-07-21 18:22:00
29
+
30
+ three:
31
+ id: 3
32
+ run_at: 2014-07-21 18:20:00
33
+ locked_at: 2014-07-21 18:21:00
34
+ locked_by: worker.0
35
+ failed_at: 2014-07-21 18:22:00
36
+ created_at: 2014-07-21 18:20:00
37
+ updated_at: 2014-07-21 18:22:00
38
+
39
+ four:
40
+ id: 4
41
+ run_at: 2014-07-21 18:20:00
42
+ locked_at: 2014-07-21 18:21:00
43
+ locked_by: worker.0
44
+ created_at: 2014-07-21 18:20:00
45
+ updated_at: 2014-07-21 18:21:00
@@ -14,19 +14,19 @@ one:
14
14
  serial: ask0
15
15
  replied: false
16
16
  displayed: false
17
- run_id: 4
17
+ run: four
18
18
  page_uri: ""
19
19
 
20
20
  two:
21
21
  serial: Nested_workflow:Interaction0
22
22
  replied: true
23
23
  displayed: true
24
- run_id: 3
24
+ run: three
25
25
  page_uri: "http://www.example.com/interactions/1.html"
26
26
 
27
27
  three:
28
28
  serial: Nested_workflow:Interaction0
29
29
  replied: false
30
30
  displayed: true
31
- run_id: 5
31
+ run: five
32
32
  page_uri: "http://www.example.com/interactions/2.html"
@@ -11,59 +11,54 @@
11
11
  #------------------------------------------------------------------------------
12
12
 
13
13
  one:
14
- id: 1
15
14
  name: Message
16
15
  value: Hello, World!
17
16
  port_type: TavernaPlayer::RunPort::Output
18
- run_id: 1
17
+ run: one
19
18
  depth: 0
20
19
  metadata: "---\n:size: 13\n:type: text/plain"
21
20
 
22
21
  two:
23
- id: 2
24
22
  name: OUT
25
23
  port_type: TavernaPlayer::RunPort::Output
26
- run_id: 2
24
+ run: two
27
25
  depth: 1
28
26
  metadata: "---\n:size:\n- 7\n- 7\n- 974\n- 974\n- 7\n:type:\n- text/plain\n- text/plain\n- application/x-error\n- application/x-error\n- text/plain"
29
27
 
30
28
  three:
31
- id: 3
32
29
  name: IN_Value
33
30
  value: Rob
34
31
  port_type: TavernaPlayer::RunPort::Input
35
- run_id: 3
32
+ run: three
36
33
  depth: 0
37
34
  metadata: "---\n:size: 3\n:type: text/plain"
38
35
 
39
36
  four:
40
- id: 4
41
37
  name: OUT
42
38
  value: Rob
43
39
  port_type: TavernaPlayer::RunPort::Output
44
- run_id: 3
40
+ run: three
45
41
  depth: 0
46
42
  metadata: "---\n:size: 3\n:type: text/plain"
47
43
 
48
44
  five:
49
- id: 5
50
45
  name: Long_N_unnecessary_Name_OUT
51
46
  value: (http://example.com/path?query=1)
52
47
  port_type: TavernaPlayer::RunPort::Output
53
- run_id: 4
48
+ run: four
54
49
  depth: 0
55
50
  metadata: "---\n:size: 33\n:type: text/plain"
56
51
 
57
52
  six:
58
53
  name: Output
59
54
  port_type: TavernaPlayer::RunPort::Output
60
- run_id: 2
55
+ run: two
61
56
  depth: 2
62
57
  metadata: "---\n:size:\n- - 15\n - 20\n- - 17\n - 22\n- - 19\n - 24\n:type:\n- - text/plain\n - text/plain\n- - text/plain\n - text/plain\n- - text/plain\n - text/plain\n"
63
58
 
64
59
  seven:
65
60
  name: OUT_Error
66
61
  port_type: TavernaPlayer::RunPort::Output
67
- run_id: 2
62
+ run: two
68
63
  depth: 0
69
64
  metadata: "---\n:size: 718\n:type: application/x-error"
@@ -11,64 +11,94 @@
11
11
  #------------------------------------------------------------------------------
12
12
 
13
13
  one:
14
- id: 1
15
14
  run_id: 9dcfbaf1-4c55-40f0-9853-baa7f8410879
16
15
  name: Test run 1
17
16
  saved_state: pending
18
17
  create_time: 2013-03-13 10:55:46
19
18
  start_time: 2013-03-13 10:56:00
20
19
  finish_time: 2013-03-13 10:56:32
21
- workflow_id: 1
20
+ workflow: one
22
21
 
23
22
  two:
24
- id: 2
25
23
  run_id: 13246c77-ffa3-449f-9b18-0f085717f8eb
26
24
  name: Test run 2
27
25
  saved_state: running
28
26
  create_time: 2013-03-13 10:55:46
29
27
  start_time: 2013-03-13 10:55:55
30
28
  finish_time: 2013-03-13 10:57:07
31
- workflow_id: 2
29
+ workflow: two
32
30
 
33
31
  three:
34
- id: 3
35
32
  run_id: f8250afc-09c1-4129-ab28-e889a284594f
36
33
  name: Test run 3
37
34
  saved_state: finished
38
35
  create_time: 2013-03-13 10:55:46
39
36
  start_time: 2013-03-13 10:55:48
40
37
  finish_time: 2013-03-13 10:58:22
41
- workflow_id: 3
38
+ workflow: three
42
39
  embedded: true
43
40
 
44
41
  four:
45
- id: 4
46
42
  run_id: f8250afc-09c1-4129-ab28-e889a284594f
47
43
  name: Test run 4
48
44
  saved_state: running
49
45
  create_time: 2013-03-13 10:55:46
50
46
  start_time: 2013-03-13 10:55:48
51
- workflow_id: 1
47
+ workflow: one
52
48
 
53
49
  five:
54
- id: 5
55
50
  run_id: f8250afc-09c1-4129-ab28-e889a284594f
56
51
  name: Test run 5
57
52
  saved_state: running
58
53
  create_time: 2013-03-13 10:55:46
59
54
  start_time: 2013-03-13 10:55:48
60
- workflow_id: 1
55
+ workflow: one
61
56
 
62
57
  six:
63
- id: 6
64
58
  run_id: f8250afc-09c1-4129-ab28-e889a284594f
65
59
  name: Test run 6
66
60
  saved_state: failed
67
61
  create_time: 2013-03-13 10:55:46
68
62
  start_time: 2013-03-13 10:55:48
69
- workflow_id: 1
63
+ workflow: one
70
64
 
71
65
  seven:
72
66
  name: Test run 7
73
67
  saved_state: pending
74
- workflow_id: 1
68
+ workflow: one
69
+
70
+ eight:
71
+ name: Test run 8
72
+ run_id: f8250afc-09c1-4129-ab28-e889a284594f
73
+ saved_state: initialized
74
+ create_time: 2013-03-13 10:55:46
75
+ start_time: 2013-03-13 10:55:48
76
+ workflow: one
77
+ delayed_job_id: 1
78
+
79
+ nine:
80
+ name: Test run 9
81
+ run_id: f8250afc-09c1-4129-ab28-e889a284594f
82
+ saved_state: pending
83
+ create_time: 2013-03-13 10:55:46
84
+ start_time: 2013-03-13 10:55:48
85
+ workflow: one
86
+ delayed_job_id: 2
87
+
88
+ ten:
89
+ name: Test run 10
90
+ run_id: f8250afc-09c1-4129-ab28-e889a284594f
91
+ saved_state: running
92
+ create_time: 2013-03-13 10:55:46
93
+ start_time: 2013-03-13 10:55:48
94
+ workflow: one
95
+ delayed_job_id: 3
96
+
97
+ eleven:
98
+ name: Test run 11
99
+ run_id: f8250afc-09c1-4129-ab28-e889a284594f
100
+ saved_state: running
101
+ create_time: 2013-03-13 10:55:46
102
+ start_time: 2013-03-13 10:55:48
103
+ workflow: one
104
+ delayed_job_id: 4
@@ -1,5 +1,5 @@
1
1
  #------------------------------------------------------------------------------
2
- # Copyright (c) 2013 The University of Manchester, UK.
2
+ # Copyright (c) 2013, 2014 The University of Manchester, UK.
3
3
  #
4
4
  # BSD Licenced. See LICENCE.rdoc for details.
5
5
  #
@@ -11,21 +11,18 @@
11
11
  #------------------------------------------------------------------------------
12
12
 
13
13
  one:
14
- id: 1
15
14
  title: Hello, World!
16
15
  author: Robert Haines
17
16
  description: Say "Hello, World!"
18
17
  file: test/workflows/hello.t2flow
19
18
 
20
19
  two:
21
- id: 2
22
20
  title: List of Fail
23
21
  author: Robert Haines
24
22
  description: Produce a list littered with errors
25
23
  file: test/workflows/list_with_errors.t2flow
26
24
 
27
25
  three:
28
- id: 3
29
26
  title: Pass Through
30
27
  author: Robert Haines
31
28
  description: Pass the input straight through to the output
@@ -1,5 +1,5 @@
1
1
  #------------------------------------------------------------------------------
2
- # Copyright (c) 2013 The University of Manchester, UK.
2
+ # Copyright (c) 2013, 2014 The University of Manchester, UK.
3
3
  #
4
4
  # BSD Licenced. See LICENCE.rdoc for details.
5
5
  #
@@ -10,7 +10,6 @@
10
10
  # Author: Robert Haines
11
11
  #------------------------------------------------------------------------------
12
12
 
13
- one:
14
- id: 1
13
+ test_user:
15
14
  name: Rob
16
15
  email: rob@example.com
@@ -20,8 +20,11 @@ module TavernaPlayer
20
20
  @run3 = taverna_player_runs(:three)
21
21
  @run4 = taverna_player_runs(:four)
22
22
  @run5 = taverna_player_runs(:five)
23
+ @run8 = taverna_player_runs(:eight)
24
+ @run9 = taverna_player_runs(:nine)
23
25
  @int = taverna_player_interactions(:one)
24
- @workflow = workflows(:one)
26
+ @workflow1 = taverna_player_workflows(:one)
27
+ @workflow3 = taverna_player_workflows(:three)
25
28
  @routes = TavernaPlayer::Engine.routes
26
29
  end
27
30
 
@@ -40,25 +43,25 @@ module TavernaPlayer
40
43
  test "should route to a run output" do
41
44
  assert_routing @run2.outputs[0].path,
42
45
  { :controller => "taverna_player/runs", :action => "output",
43
- :id => "2", :port => "OUT" }, {}, {}, "Did not route correctly"
46
+ :id => "#{@run2.id}", :port => "OUT" }, {}, {}, "Did not route correctly"
44
47
  end
45
48
 
46
49
  test "should route to a deep run output" do
47
50
  assert_routing @run2.outputs[0].path(0, 0),
48
51
  { :controller => "taverna_player/runs", :action => "output",
49
- :id => "2", :port => "OUT", :path => "0/0" }, {}, {},
52
+ :id => "#{@run2.id}", :port => "OUT", :path => "0/0" }, {}, {},
50
53
  "Did not route correctly"
51
54
 
52
55
  assert_routing @run2.outputs[0].path([1, 2]),
53
56
  { :controller => "taverna_player/runs", :action => "output",
54
- :id => "2", :port => "OUT", :path => "1/2" }, {}, {},
57
+ :id => "#{@run2.id}", :port => "OUT", :path => "1/2" }, {}, {},
55
58
  "Did not route correctly"
56
59
  end
57
60
 
58
61
  test "should route to a run input" do
59
62
  assert_routing @run3.inputs[0].path,
60
63
  { :controller => "taverna_player/runs", :action => "input",
61
- :id => "3", :port => "IN_Value" }, {}, {}, "Did not route correctly"
64
+ :id => "#{@run3.id}", :port => "IN_Value" }, {}, {}, "Did not route correctly"
62
65
  end
63
66
 
64
67
  test "should route to cancel on a run" do
@@ -115,14 +118,14 @@ module TavernaPlayer
115
118
  end
116
119
 
117
120
  test "should get new and not be overridden" do
118
- get :new, :workflow_id => 1, :use_route => :taverna_player
121
+ get :new, :workflow_id => @workflow1, :use_route => :taverna_player
119
122
  assert_response :success, "Response was not success"
120
123
  refute assigns(:override)
121
124
  assert_template "application", "Did not render with the correct layout"
122
125
  end
123
126
 
124
127
  test "should get new embedded" do
125
- get :new, :workflow_id => 1, :embedded => "true",
128
+ get :new, :workflow_id => @workflow1, :embedded => "true",
126
129
  :use_route => :taverna_player
127
130
  assert_response :success, "Response was not success"
128
131
  assert_template "taverna_player/embedded",
@@ -163,7 +166,7 @@ module TavernaPlayer
163
166
 
164
167
  test "should fail to create run via browser" do
165
168
  assert_no_difference("Run.count") do
166
- post :create, :run => { :workflow_id => @workflow.id, :name => nil }
169
+ post :create, :run => { :workflow_id => @workflow1.id, :name => nil }
167
170
  end
168
171
 
169
172
  assert_equal "Run was not successfully created.", flash[:alert],
@@ -172,7 +175,7 @@ module TavernaPlayer
172
175
 
173
176
  test "should create run via browser" do
174
177
  assert_difference("Run.count") do
175
- post :create, :run => { :workflow_id => @workflow.id }
178
+ post :create, :run => { :workflow_id => @workflow1.id }
176
179
  end
177
180
 
178
181
  assert_redirected_to run_path(assigns(:run)),
@@ -186,7 +189,7 @@ module TavernaPlayer
186
189
  test "should create inputs along with run" do
187
190
  assert_difference("Run.count") do
188
191
  assert_difference("RunPort.count") do
189
- post :create, :run => { :workflow_id => workflows(:three).id,
192
+ post :create, :run => { :workflow_id => @workflow3.id,
190
193
  :inputs_attributes => [{:value => 'test', :name => 'IN'}]
191
194
  }
192
195
  end
@@ -206,7 +209,7 @@ module TavernaPlayer
206
209
  test "should create embedded run via browser" do
207
210
  assert_difference("Run.count") do
208
211
  post :create,
209
- :run => { :workflow_id => @workflow.id, :embedded => "true" }
212
+ :run => { :workflow_id => @workflow1.id, :embedded => "true" }
210
213
  end
211
214
 
212
215
  assert_redirected_to run_path(assigns(:run)),
@@ -220,7 +223,7 @@ module TavernaPlayer
220
223
 
221
224
  test "should create run via json" do
222
225
  assert_difference("Run.count") do
223
- post :create, :run => { :workflow_id => @workflow.id },
226
+ post :create, :run => { :workflow_id => @workflow1.id },
224
227
  :format => :json
225
228
  end
226
229
 
@@ -234,7 +237,7 @@ module TavernaPlayer
234
237
  test "should create embedded run via json" do
235
238
  assert_difference("Run.count") do
236
239
  post :create,
237
- :run => { :workflow_id => @workflow.id, :embedded => "true" },
240
+ :run => { :workflow_id => @workflow1.id, :embedded => "true" },
238
241
  :format => :json
239
242
  end
240
243
 
@@ -270,6 +273,30 @@ module TavernaPlayer
270
273
  assert_response :forbidden, "Response was not forbidden"
271
274
  end
272
275
 
276
+ test "should not destroy running run with running delayed job" do
277
+ @request.env["HTTP_REFERER"] = "/runs"
278
+ assert_no_difference(["Run.count", "Delayed::Job.count"],
279
+ "Run and Delayed::Job count changed") do
280
+ delete :destroy, :id => @run8, :use_route => :taverna_player
281
+ end
282
+
283
+ assert_equal "Run must be cancelled before deletion.", flash[:alert],
284
+ "Incorrect or missing flash notice"
285
+ assert_response :redirect, "Response was not a redirect"
286
+ assert_redirected_to runs_path, "Did not redirect correctly"
287
+ end
288
+
289
+ test "should destroy running run with failed delayed job" do
290
+ @request.env["HTTP_REFERER"] = "/runs"
291
+ assert_difference(["Run.count", "Delayed::Job.count"], -1,
292
+ "Run and Delayed::Job count did not reduce") do
293
+ delete :destroy, :id => @run9, :use_route => :taverna_player
294
+ end
295
+
296
+ assert_response :redirect, "Response was not a redirect"
297
+ assert_redirected_to runs_path, "Did not redirect correctly"
298
+ end
299
+
273
300
  test "should cancel run and redirect to index via browser" do
274
301
  @request.env["HTTP_REFERER"] = "/runs"
275
302
  put :cancel, :id => @run1, :use_route => :taverna_player
@@ -279,7 +306,7 @@ module TavernaPlayer
279
306
  end
280
307
 
281
308
  test "should cancel run and redirect to show via browser" do
282
- @request.env["HTTP_REFERER"] = "/runs/1"
309
+ @request.env["HTTP_REFERER"] = "/runs/#{@run1.id}"
283
310
  put :cancel, :id => @run1, :use_route => :taverna_player
284
311
 
285
312
  assert_response :redirect, "Response was not a redirect"
@@ -304,7 +331,7 @@ module TavernaPlayer
304
331
  end
305
332
 
306
333
  test "should only return runs from workflow id 1" do
307
- get :index, :workflow_id => @workflow
334
+ get :index, :workflow_id => @workflow1
308
335
  assert_response :success, "Response was not success"
309
336
  assert_not_nil assigns(:runs), "Did not assign a valid runs instance"
310
337
  assert_not_nil assigns(:override)