bumbleworks-gui 0.0.5 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/bumbleworks-gui.gemspec +1 -1
- data/lib/bumbleworks/gui/controllers/workers_controller.rb +2 -2
- data/lib/bumbleworks/gui/version.rb +1 -1
- data/lib/bumbleworks/gui/views/workers/index.html.erb +4 -4
- data/spec/features/worker_administration_spec.rb +16 -13
- data/spec/lib/time_support_spec.rb +42 -0
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cc4490ff3c596a984d4b6940f742de3d6476460b
|
4
|
+
data.tar.gz: 11b127ebf00a42af42ad8b00d07f18916131a4ea
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4ba3bd612b5aefdfce7a8cbc6d7f3fc4063030821baf63a11087e60d145b50f7e94fe93d14b91d7580a2f89717e9564af783bebc7a45498de24f57986d202635
|
7
|
+
data.tar.gz: 8f4b1732ae4f1406ace7778eac4198027890a58dc9cfee01319e4fff39d9b89339ffbaa0f00d3333ec1ed6cf0a3d878f2109837d41c22852d53cfcdea4be420f
|
data/bumbleworks-gui.gemspec
CHANGED
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
|
|
19
19
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
20
20
|
spec.require_paths = ["lib"]
|
21
21
|
|
22
|
-
spec.add_runtime_dependency "bumbleworks", ">= 0.0.
|
22
|
+
spec.add_runtime_dependency "bumbleworks", ">= 0.0.83"
|
23
23
|
spec.add_runtime_dependency "rory", ">= 0.3.11"
|
24
24
|
|
25
25
|
spec.add_development_dependency "bundler", "~> 1.3"
|
@@ -12,8 +12,8 @@ module Bumbleworks
|
|
12
12
|
end
|
13
13
|
|
14
14
|
def change_global_state
|
15
|
-
|
16
|
-
Bumbleworks::Worker.
|
15
|
+
command = params[:command]
|
16
|
+
Bumbleworks::Worker.send("#{command}_all")
|
17
17
|
redirect path_to('workers_index')
|
18
18
|
end
|
19
19
|
|
@@ -3,12 +3,12 @@
|
|
3
3
|
</div>
|
4
4
|
|
5
5
|
<div class="action-button-group">
|
6
|
-
<%
|
6
|
+
<% %w(shutdown pause unpause).each do |command| %>
|
7
7
|
<form action="<%= path_to 'workers_change_global_state' %>" class="inline" method="post">
|
8
8
|
<input type="hidden" name="_method" value="put">
|
9
|
-
<input type="hidden" name="
|
10
|
-
<button type="submit" name="action" value="<%=
|
11
|
-
<%=
|
9
|
+
<input type="hidden" name="command" value="<%= command %>">
|
10
|
+
<button type="submit" name="action" value="<%= command %>" class="pure-button button-error button-bottom" id="<%= command %>-button">
|
11
|
+
<%= command.capitalize %> All
|
12
12
|
</button>
|
13
13
|
</form>
|
14
14
|
<% end %>
|
@@ -3,39 +3,42 @@ feature "Worker management" do
|
|
3
3
|
let(:worker_detail) { WorkerDetail.new(Capybara) }
|
4
4
|
|
5
5
|
scenario "Admin views worker index" do
|
6
|
-
|
7
|
-
worker2 = Bumbleworks.start_worker!
|
6
|
+
other_worker = Bumbleworks.start_worker!
|
8
7
|
|
9
8
|
visit_scoped '/workers'
|
10
9
|
|
11
|
-
expect(worker_index).to have_workers([Bumbleworks.dashboard.worker,
|
10
|
+
expect(worker_index).to have_workers([Bumbleworks.dashboard.worker, other_worker])
|
11
|
+
|
12
|
+
other_worker.shutdown
|
12
13
|
end
|
13
14
|
|
14
15
|
scenario "Admin views worker detail" do
|
15
|
-
|
16
|
-
|
17
|
-
visit_scoped "/workers/#{worker.id}"
|
16
|
+
visit_scoped "/workers/#{Bumbleworks.dashboard.worker.id}"
|
18
17
|
|
19
|
-
expect(worker_detail).to have_worker(worker)
|
18
|
+
expect(worker_detail).to have_worker(Bumbleworks.dashboard.worker)
|
20
19
|
end
|
21
20
|
|
22
21
|
scenario "Admin pauses all workers" do
|
23
|
-
|
24
|
-
worker2 = Bumbleworks.start_worker!
|
22
|
+
other_worker = Bumbleworks.start_worker!
|
25
23
|
|
26
24
|
visit_scoped "/workers"
|
27
25
|
click_button :pause
|
28
26
|
expect(page).not_to have_text('running')
|
29
27
|
expect(page).to have_text('paused')
|
28
|
+
|
29
|
+
# return to single running worker
|
30
|
+
click_button :unpause
|
31
|
+
other_worker.shutdown
|
30
32
|
end
|
31
33
|
|
32
34
|
scenario "Admin purges stale worker info" do
|
33
|
-
|
34
|
-
worker2 = Bumbleworks.start_worker!
|
35
|
+
other_worker = Bumbleworks.start_worker!
|
35
36
|
|
36
37
|
visit_scoped "/workers"
|
37
|
-
click_button :
|
38
|
+
click_button :shutdown
|
38
39
|
click_button :purge
|
39
|
-
expect(worker_index).not_to have_workers([
|
40
|
+
expect(worker_index).not_to have_workers([Bumbleworks.dashboard.worker, other_worker])
|
41
|
+
|
42
|
+
Bumbleworks.start_worker!
|
40
43
|
end
|
41
44
|
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
describe TimeSupport do
|
2
|
+
describe '.seconds_to_units' do
|
3
|
+
it 'returns hash of subdivided units for given seconds' do
|
4
|
+
described_class.seconds_to_units(33924.5).should eq({
|
5
|
+
:hours => 9,
|
6
|
+
:minutes => 25,
|
7
|
+
:seconds => 24
|
8
|
+
})
|
9
|
+
end
|
10
|
+
|
11
|
+
it 'includes zero units if requested' do
|
12
|
+
described_class.seconds_to_units(33924.5, include_zeros: true).should eq({
|
13
|
+
:days => 0,
|
14
|
+
:hours => 9,
|
15
|
+
:minutes => 25,
|
16
|
+
:seconds => 24
|
17
|
+
})
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'does not round seconds if switched off' do
|
21
|
+
described_class.seconds_to_units(33924.5, round_seconds: false).should eq({
|
22
|
+
:hours => 9,
|
23
|
+
:minutes => 25,
|
24
|
+
:seconds => 24.5
|
25
|
+
})
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
describe '.seconds_to_units_in_words' do
|
30
|
+
it 'wordifies response from seconds_to_units' do
|
31
|
+
allow(described_class).to receive(:seconds_to_units).
|
32
|
+
with(90210.5, foo: 'bar').
|
33
|
+
and_return({
|
34
|
+
:days => 2,
|
35
|
+
:minutes => 5,
|
36
|
+
:spinachios => 42
|
37
|
+
})
|
38
|
+
expect(described_class.seconds_to_units_in_words(90210.5, foo: 'bar')).
|
39
|
+
to eq("2 days, 5 minutes, 42 spinachios")
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bumbleworks-gui
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ravi Gadad
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.0.
|
19
|
+
version: 0.0.83
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.0.
|
26
|
+
version: 0.0.83
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rory
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -200,6 +200,7 @@ files:
|
|
200
200
|
- spec/fixtures/participants/naughty_participant.rb
|
201
201
|
- spec/fixtures/processes/task_process.rb
|
202
202
|
- spec/fixtures/processes/waiting_process.rb
|
203
|
+
- spec/lib/time_support_spec.rb
|
203
204
|
- spec/spec_helper.rb
|
204
205
|
- spec/support/drivers/dashboard_detail.rb
|
205
206
|
- spec/support/drivers/entity_detail.rb
|
@@ -258,6 +259,7 @@ test_files:
|
|
258
259
|
- spec/fixtures/participants/naughty_participant.rb
|
259
260
|
- spec/fixtures/processes/task_process.rb
|
260
261
|
- spec/fixtures/processes/waiting_process.rb
|
262
|
+
- spec/lib/time_support_spec.rb
|
261
263
|
- spec/spec_helper.rb
|
262
264
|
- spec/support/drivers/dashboard_detail.rb
|
263
265
|
- spec/support/drivers/entity_detail.rb
|