cascadence 0.2.4 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -0
  3. data/Gemfile.lock +16 -18
  4. data/VERSION +1 -1
  5. data/cascadence.gemspec +4 -45
  6. data/lib/cascadence/class_methods.rb +10 -0
  7. data/lib/cascadence/commander.rb +0 -5
  8. data/lib/cascadence/confluence.rb +25 -0
  9. data/lib/cascadence/runner.rb +12 -28
  10. data/lib/cascadence.rb +1 -0
  11. data/spec/cascadence/flow_merge_spec.rb +88 -0
  12. data/spec/cascadence/runner_spec.rb +10 -3
  13. metadata +4 -45
  14. data/coverage/.last_run.json +0 -5
  15. data/coverage/.resultset.json +0 -1300
  16. data/coverage/assets/0.7.1/application.css +0 -1110
  17. data/coverage/assets/0.7.1/application.js +0 -626
  18. data/coverage/assets/0.7.1/fancybox/blank.gif +0 -0
  19. data/coverage/assets/0.7.1/fancybox/fancy_close.png +0 -0
  20. data/coverage/assets/0.7.1/fancybox/fancy_loading.png +0 -0
  21. data/coverage/assets/0.7.1/fancybox/fancy_nav_left.png +0 -0
  22. data/coverage/assets/0.7.1/fancybox/fancy_nav_right.png +0 -0
  23. data/coverage/assets/0.7.1/fancybox/fancy_shadow_e.png +0 -0
  24. data/coverage/assets/0.7.1/fancybox/fancy_shadow_n.png +0 -0
  25. data/coverage/assets/0.7.1/fancybox/fancy_shadow_ne.png +0 -0
  26. data/coverage/assets/0.7.1/fancybox/fancy_shadow_nw.png +0 -0
  27. data/coverage/assets/0.7.1/fancybox/fancy_shadow_s.png +0 -0
  28. data/coverage/assets/0.7.1/fancybox/fancy_shadow_se.png +0 -0
  29. data/coverage/assets/0.7.1/fancybox/fancy_shadow_sw.png +0 -0
  30. data/coverage/assets/0.7.1/fancybox/fancy_shadow_w.png +0 -0
  31. data/coverage/assets/0.7.1/fancybox/fancy_title_left.png +0 -0
  32. data/coverage/assets/0.7.1/fancybox/fancy_title_main.png +0 -0
  33. data/coverage/assets/0.7.1/fancybox/fancy_title_over.png +0 -0
  34. data/coverage/assets/0.7.1/fancybox/fancy_title_right.png +0 -0
  35. data/coverage/assets/0.7.1/fancybox/fancybox-x.png +0 -0
  36. data/coverage/assets/0.7.1/fancybox/fancybox-y.png +0 -0
  37. data/coverage/assets/0.7.1/fancybox/fancybox.png +0 -0
  38. data/coverage/assets/0.7.1/favicon_green.png +0 -0
  39. data/coverage/assets/0.7.1/favicon_red.png +0 -0
  40. data/coverage/assets/0.7.1/favicon_yellow.png +0 -0
  41. data/coverage/assets/0.7.1/loading.gif +0 -0
  42. data/coverage/assets/0.7.1/magnify.png +0 -0
  43. data/coverage/assets/0.7.1/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  44. data/coverage/assets/0.7.1/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  45. data/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  46. data/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  47. data/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  48. data/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  49. data/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  50. data/coverage/assets/0.7.1/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  51. data/coverage/assets/0.7.1/smoothness/images/ui-icons_222222_256x240.png +0 -0
  52. data/coverage/assets/0.7.1/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  53. data/coverage/assets/0.7.1/smoothness/images/ui-icons_454545_256x240.png +0 -0
  54. data/coverage/assets/0.7.1/smoothness/images/ui-icons_888888_256x240.png +0 -0
  55. data/coverage/assets/0.7.1/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  56. data/coverage/index.html +0 -8208
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b447380f815a88f8454bb8e0ddf133d3223cd2e4
4
- data.tar.gz: 5f94c4d40174afa740f16579cc1bb9d4df3643a5
3
+ metadata.gz: b0bc78d89b385d60870d89319dee48898086f1cf
4
+ data.tar.gz: 814cef642a4d51ff4a11ca92a9c5587ef69246cb
5
5
  SHA512:
6
- metadata.gz: 0cce970ba61daa5c8c41edbd9641374e97f2c5a8613e8a666dccb90263938ea08225d448e14cd05a0fb286769a84647ae21fc78c5e7da166ae4f89588bf8a3a8
7
- data.tar.gz: 1de7d11eaf1f635c7005c27105d50c4ec88933da0cc69351113d16075506b8c458f0d5809af8c4bec73c60d540f983b7f7745b171eeddd34d20e5e60c3614c77
6
+ metadata.gz: 4deaee7535eabba1d35e3fbe759eaceb7da54c8821f76b71b612de4e3034daa4312dff443d7d33d4dc012582b228ba40fa99bcd472793ab1dec4d07295349533
7
+ data.tar.gz: 736b1ad9ceb4e779fa993a648595c7f66d3d607815e1ea51bcceab9cf632fe3cf8edb24009c2053b744d1a8b78462e9803ca1cf3d9fc5f2003e85e99fb87563b
data/Gemfile CHANGED
@@ -2,6 +2,7 @@ source "http://rubygems.org"
2
2
 
3
3
  gem "thor"
4
4
  gem "activesupport"
5
+
5
6
  group :development do
6
7
  gem "jeweler"
7
8
  gem "rdoc"
data/Gemfile.lock CHANGED
@@ -1,30 +1,28 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
- activesupport (3.2.12)
5
- i18n (~> 0.6)
4
+ activesupport (3.2.13)
5
+ i18n (= 0.6.1)
6
6
  multi_json (~> 1.0)
7
- diff-lcs (1.1.3)
7
+ diff-lcs (1.2.1)
8
8
  git (1.2.5)
9
- i18n (0.6.4)
9
+ i18n (0.6.1)
10
10
  jeweler (1.8.4)
11
- bundler (~> 1.0)
11
+ bundler (~> 1.3.0.pre)
12
12
  git (>= 1.2.5)
13
13
  rake
14
14
  rdoc
15
- json (1.7.6)
16
- multi_json (1.5.0)
17
- rake (10.0.3)
18
- rdoc (3.12)
19
- json (~> 1.4)
20
- rspec (2.12.0)
21
- rspec-core (~> 2.12.0)
22
- rspec-expectations (~> 2.12.0)
23
- rspec-mocks (~> 2.12.0)
24
- rspec-core (2.12.2)
25
- rspec-expectations (2.12.1)
26
- diff-lcs (~> 1.1.3)
27
- rspec-mocks (2.12.1)
15
+ multi_json (1.7.2)
16
+ rake (10.0.4)
17
+ rdoc (4.0.0)
18
+ rspec (2.13.0)
19
+ rspec-core (~> 2.13.0)
20
+ rspec-expectations (~> 2.13.0)
21
+ rspec-mocks (~> 2.13.0)
22
+ rspec-core (2.13.1)
23
+ rspec-expectations (2.13.0)
24
+ diff-lcs (>= 1.1.3, < 2.0)
25
+ rspec-mocks (2.13.0)
28
26
  simplecov (0.7.1)
29
27
  multi_json (~> 1.0)
30
28
  simplecov-html (~> 0.7.1)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.4
1
+ 0.3.0
data/cascadence.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "cascadence"
8
- s.version = "0.2.4"
8
+ s.version = "0.3.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Thomas Chen"]
12
- s.date = "2013-03-25"
12
+ s.date = "2013-05-06"
13
13
  s.description = "Organizational helper for writing serializations for use with threading. The biggest use case of this would be in selenium / capybara based integration testing as this allows you to run flows in parallel."
14
14
  s.email = "foxnewsnetwork@gmail.com"
15
15
  s.executables = ["cascadence"]
@@ -27,49 +27,6 @@ Gem::Specification.new do |s|
27
27
  "VERSION",
28
28
  "bin/cascadence",
29
29
  "cascadence.gemspec",
30
- "coverage/.last_run.json",
31
- "coverage/.resultset.json",
32
- "coverage/assets/0.7.1/application.css",
33
- "coverage/assets/0.7.1/application.js",
34
- "coverage/assets/0.7.1/fancybox/blank.gif",
35
- "coverage/assets/0.7.1/fancybox/fancy_close.png",
36
- "coverage/assets/0.7.1/fancybox/fancy_loading.png",
37
- "coverage/assets/0.7.1/fancybox/fancy_nav_left.png",
38
- "coverage/assets/0.7.1/fancybox/fancy_nav_right.png",
39
- "coverage/assets/0.7.1/fancybox/fancy_shadow_e.png",
40
- "coverage/assets/0.7.1/fancybox/fancy_shadow_n.png",
41
- "coverage/assets/0.7.1/fancybox/fancy_shadow_ne.png",
42
- "coverage/assets/0.7.1/fancybox/fancy_shadow_nw.png",
43
- "coverage/assets/0.7.1/fancybox/fancy_shadow_s.png",
44
- "coverage/assets/0.7.1/fancybox/fancy_shadow_se.png",
45
- "coverage/assets/0.7.1/fancybox/fancy_shadow_sw.png",
46
- "coverage/assets/0.7.1/fancybox/fancy_shadow_w.png",
47
- "coverage/assets/0.7.1/fancybox/fancy_title_left.png",
48
- "coverage/assets/0.7.1/fancybox/fancy_title_main.png",
49
- "coverage/assets/0.7.1/fancybox/fancy_title_over.png",
50
- "coverage/assets/0.7.1/fancybox/fancy_title_right.png",
51
- "coverage/assets/0.7.1/fancybox/fancybox-x.png",
52
- "coverage/assets/0.7.1/fancybox/fancybox-y.png",
53
- "coverage/assets/0.7.1/fancybox/fancybox.png",
54
- "coverage/assets/0.7.1/favicon_green.png",
55
- "coverage/assets/0.7.1/favicon_red.png",
56
- "coverage/assets/0.7.1/favicon_yellow.png",
57
- "coverage/assets/0.7.1/loading.gif",
58
- "coverage/assets/0.7.1/magnify.png",
59
- "coverage/assets/0.7.1/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png",
60
- "coverage/assets/0.7.1/smoothness/images/ui-bg_flat_75_ffffff_40x100.png",
61
- "coverage/assets/0.7.1/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png",
62
- "coverage/assets/0.7.1/smoothness/images/ui-bg_glass_65_ffffff_1x400.png",
63
- "coverage/assets/0.7.1/smoothness/images/ui-bg_glass_75_dadada_1x400.png",
64
- "coverage/assets/0.7.1/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png",
65
- "coverage/assets/0.7.1/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png",
66
- "coverage/assets/0.7.1/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png",
67
- "coverage/assets/0.7.1/smoothness/images/ui-icons_222222_256x240.png",
68
- "coverage/assets/0.7.1/smoothness/images/ui-icons_2e83ff_256x240.png",
69
- "coverage/assets/0.7.1/smoothness/images/ui-icons_454545_256x240.png",
70
- "coverage/assets/0.7.1/smoothness/images/ui-icons_888888_256x240.png",
71
- "coverage/assets/0.7.1/smoothness/images/ui-icons_cd0a0a_256x240.png",
72
- "coverage/index.html",
73
30
  "fixtures/README.md",
74
31
  "fixtures/amazon/madeira_flow.rb",
75
32
  "fixtures/amazon/rio_negro_flow.rb",
@@ -89,6 +46,7 @@ Gem::Specification.new do |s|
89
46
  "lib/cascadence/commander/generate.rb",
90
47
  "lib/cascadence/commander/version.rb",
91
48
  "lib/cascadence/config.rb",
49
+ "lib/cascadence/confluence.rb",
92
50
  "lib/cascadence/flow.rb",
93
51
  "lib/cascadence/helper.rb",
94
52
  "lib/cascadence/runner.rb",
@@ -103,6 +61,7 @@ Gem::Specification.new do |s|
103
61
  "spec/cascadence/commander/generate_spec.rb",
104
62
  "spec/cascadence/commander/version_spec.rb",
105
63
  "spec/cascadence/commander_spec.rb",
64
+ "spec/cascadence/flow_merge_spec.rb",
106
65
  "spec/cascadence/flow_spec.rb",
107
66
  "spec/cascadence/fork_merge_spec.rb",
108
67
  "spec/cascadence/helper_spec.rb",
@@ -34,6 +34,16 @@ module Cascadence
34
34
  @merge_position << (index - 1)
35
35
  end
36
36
 
37
+ def flows_into( another_stream )
38
+ Cascadence::Confluence.merge_streams( self, another_stream ) do |estate|
39
+ if block_given?
40
+ yield estate
41
+ else
42
+ [estate]
43
+ end
44
+ end
45
+ end
46
+
37
47
  end
38
48
 
39
49
  end
@@ -11,11 +11,6 @@ module Cascadence
11
11
  Cascadence::Commander::Flow.instance.run(filepath)
12
12
  end
13
13
 
14
- desc "generate [FLOWNAME]", "generates the flow project as specified by the name with respect to your current directory."
15
- def generate(flowname)
16
- Cascadence::Commander::Generate.start ["dosomeshit", flowname, Dir.pwd]
17
- end
18
-
19
14
  end
20
15
  end
21
16
 
@@ -0,0 +1,25 @@
1
+ module Cascadence
2
+ module Confluence
3
+ class << self
4
+ def merge_streams(flowa, flowb, &block)
5
+ flow = Class.new(::Cascadence::Flow) do
6
+ class << self; attr_accessor :pipe_merger, :state_converter end
7
+ cascading_order :pipe_merge
8
+ def initialize(*args)
9
+ self.state = args
10
+ end
11
+ def pipe_merge
12
+ self.state = self.class.pipe_merger.call(self).run_states.state
13
+ end
14
+
15
+ def _convert_state(post_a_state)
16
+ self.class.state_converter.call post_a_state
17
+ end
18
+ end
19
+ flow.pipe_merger = lambda { |f| flowb.new *f._convert_state(flowa.new(*f.state).run_states.state) }
20
+ flow.state_converter = lambda { |s| yield s }
21
+ return flow
22
+ end
23
+ end
24
+ end
25
+ end
@@ -12,23 +12,6 @@ module Cascadence
12
12
 
13
13
  private
14
14
 
15
- # def _run_parallel(tasks)
16
- # threads = []
17
- # puts "Attempting to run with #{tasks.count} tasks"
18
- # tasks.each do |task|
19
- # thread = Thread.new do
20
- # puts "Spinning up thread number #{threads.count}"
21
- # task.call
22
- # end
23
- # puts "Pushing thread number #{threads.count} to thread pool"
24
- # threads << thread
25
- # sleep 0.5
26
- # end
27
- # while threads.inject(false) { |finished, thread| finished || thread.alive? }
28
- # sleep 0.5
29
- # end
30
- # end
31
-
32
15
  def _run_parallel(tasks, threads=[])
33
16
  return if tasks.empty? && threads.empty?
34
17
  package = _maybe_spin_up_thread(tasks, threads)
@@ -37,22 +20,23 @@ module Cascadence
37
20
  _run_parallel new_tasks, new_threads
38
21
  end
39
22
 
40
- def _maybe_spin_up_thread(tasks, threads=[])
41
- if threads.count > Cascadence.config.max_thread_count
42
- new_threads = threads
43
- new_tasks = tasks
44
- else
45
- new_threads = _spin_up_task(tasks.pop, threads)
46
- new_tasks = tasks
47
- end
48
- sleep 0.5
49
- return [new_tasks, new_threads.select(&:alive?)]
23
+ def _maybe_spin_up_thread(tasks, threads=nil)
24
+ threads ||= []
25
+ threads = _spin_up_task(tasks.pop, threads) if _still_have_room_for_more_threads?(threads)
26
+ return [tasks, threads.select(&:alive?)]
50
27
  end
51
28
 
52
- def _spin_up_task(task, threads=[])
29
+ def _still_have_room_for_more_threads?(threads)
30
+ threads.count < Cascadence.config.max_thread_count
31
+ end
32
+
33
+ def _spin_up_task(task, threads=nil)
34
+ sleep 0.5
35
+ threads ||= []
53
36
  puts "Spinning up thread no.#{threads.count} out of #{Cascadence.config.max_thread_count}"
54
37
  thread = Thread.new { task.call } unless task.nil?
55
38
  threads.push thread unless thread.nil?
39
+ return threads
56
40
  end
57
41
 
58
42
  def _run_sequential(tasks)
data/lib/cascadence.rb CHANGED
@@ -8,6 +8,7 @@ module Cascadence
8
8
  autoload :Flow, File.join( File.dirname(__FILE__), "cascadence", "flow" )
9
9
  autoload :Helper, File.join( File.dirname(__FILE__), "cascadence", "helper")
10
10
  autoload :Commander, File.join( File.dirname(__FILE__), "cascadence", "commander")
11
+ autoload :Confluence, File.join( File.dirname(__FILE__), "cascadence", "confluence")
11
12
  autoload :Runner, File.join( File.dirname(__FILE__), "cascadence", "runner")
12
13
  autoload :Config, File.join( File.dirname(__FILE__), "cascadence", "config")
13
14
  autoload :Task, File.join( File.dirname(__FILE__), "cascadence", "task")
@@ -0,0 +1,88 @@
1
+ require 'spec_helper'
2
+
3
+ describe Cascadence::Flow do
4
+ describe "::flow_into" do
5
+ let(:stream1) do
6
+ Class.new(Cascadence::Flow) do
7
+ cascading_order :step1, :step2
8
+ def initialize(seed_state=nil)
9
+ self.state = seed_state || 0
10
+ end
11
+
12
+ def step1
13
+ self.state += 1
14
+ end
15
+
16
+ def step2
17
+ self.state += 2
18
+ end
19
+ end
20
+ end
21
+ context "one-to-one" do
22
+ before :each do
23
+ @stream2 = stream1.flows_into(stream1)
24
+ @stream3 = stream1.flows_into(stream1).flows_into(stream1)
25
+ end
26
+ context "basics" do
27
+ it "should still be a cascadence flow" do
28
+ @stream2.superclass.should eq Cascadence::Flow
29
+ @stream3.superclass.should eq Cascadence::Flow
30
+ end
31
+ describe "#run_states" do
32
+ let(:state) { @stream2.new(0).run_states.state }
33
+ let(:state3) { @stream3.new(0).run_states.state }
34
+ it "should pipe the first stream into the second stream and transfer the states as such" do
35
+ state.should eq (0 + 1 + 2 + 1 + 2)
36
+ state3.should eq (0 + 1 + 2 + 1 + 2 + 1 + 2)
37
+ end
38
+ end
39
+ end
40
+ end
41
+
42
+ context "one-to-many" do
43
+ let(:parent) do
44
+ Class.new(Cascadence::Flow) do
45
+ cascading_order :step1, :step2
46
+ def initialize
47
+ self.state = [0,0]
48
+ end
49
+
50
+ def step1
51
+ _inc_first 1
52
+ _inc_second -1
53
+ end
54
+
55
+ def step2
56
+ _inc_first 2
57
+ _inc_second -2
58
+ end
59
+
60
+ private
61
+ def _inc_first(a)
62
+ self.state[0] += a
63
+ end
64
+
65
+ def _inc_second(a)
66
+ self.state[1] += a
67
+ end
68
+ end
69
+ end
70
+ before :each do
71
+ @stream = parent.flows_into(stream1) { |pstate| pstate[0] }
72
+ @alt_stream = parent.flows_into(stream1) { |pstate| pstate[1] }
73
+ end
74
+ it "should still be a flow" do
75
+ @stream.superclass.should eq Cascadence::Flow
76
+ @alt_stream.superclass.should eq Cascadence::Flow
77
+ end
78
+ describe "#run_states" do
79
+ let(:first_state) { @stream.new.run_states.state }
80
+ let(:alt_state) { @alt_stream.new.run_states.state }
81
+ it "should produce the terminal state" do
82
+ first_state.should eq 6
83
+ alt_state.should eq 0
84
+ end
85
+ end
86
+ end
87
+ end
88
+ end
@@ -2,10 +2,17 @@ require 'spec_helper'
2
2
 
3
3
  describe Cascadence::Runner do
4
4
  let(:runner) { Cascadence::Runner.instance }
5
- let(:task) { Class.new }
5
+ let(:task) do
6
+ Class.new do
7
+ def call
8
+ sleep 2
9
+ puts "thread exiting"
10
+ return 13
11
+ end
12
+ end
13
+ end
6
14
  before :each do
7
- task.any_instance.should_receive(:call)
8
- @tasks = 1.upto(5).map { |a| task.new }
15
+ @tasks = 1.upto(7).map { |a| task.new }
9
16
  end
10
17
  context "public api" do
11
18
  describe "#run_tasks" do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cascadence
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Chen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-03-25 00:00:00.000000000 Z
11
+ date: 2013-05-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -114,49 +114,6 @@ files:
114
114
  - VERSION
115
115
  - bin/cascadence
116
116
  - cascadence.gemspec
117
- - coverage/.last_run.json
118
- - coverage/.resultset.json
119
- - coverage/assets/0.7.1/application.css
120
- - coverage/assets/0.7.1/application.js
121
- - coverage/assets/0.7.1/fancybox/blank.gif
122
- - coverage/assets/0.7.1/fancybox/fancy_close.png
123
- - coverage/assets/0.7.1/fancybox/fancy_loading.png
124
- - coverage/assets/0.7.1/fancybox/fancy_nav_left.png
125
- - coverage/assets/0.7.1/fancybox/fancy_nav_right.png
126
- - coverage/assets/0.7.1/fancybox/fancy_shadow_e.png
127
- - coverage/assets/0.7.1/fancybox/fancy_shadow_n.png
128
- - coverage/assets/0.7.1/fancybox/fancy_shadow_ne.png
129
- - coverage/assets/0.7.1/fancybox/fancy_shadow_nw.png
130
- - coverage/assets/0.7.1/fancybox/fancy_shadow_s.png
131
- - coverage/assets/0.7.1/fancybox/fancy_shadow_se.png
132
- - coverage/assets/0.7.1/fancybox/fancy_shadow_sw.png
133
- - coverage/assets/0.7.1/fancybox/fancy_shadow_w.png
134
- - coverage/assets/0.7.1/fancybox/fancy_title_left.png
135
- - coverage/assets/0.7.1/fancybox/fancy_title_main.png
136
- - coverage/assets/0.7.1/fancybox/fancy_title_over.png
137
- - coverage/assets/0.7.1/fancybox/fancy_title_right.png
138
- - coverage/assets/0.7.1/fancybox/fancybox-x.png
139
- - coverage/assets/0.7.1/fancybox/fancybox-y.png
140
- - coverage/assets/0.7.1/fancybox/fancybox.png
141
- - coverage/assets/0.7.1/favicon_green.png
142
- - coverage/assets/0.7.1/favicon_red.png
143
- - coverage/assets/0.7.1/favicon_yellow.png
144
- - coverage/assets/0.7.1/loading.gif
145
- - coverage/assets/0.7.1/magnify.png
146
- - coverage/assets/0.7.1/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png
147
- - coverage/assets/0.7.1/smoothness/images/ui-bg_flat_75_ffffff_40x100.png
148
- - coverage/assets/0.7.1/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png
149
- - coverage/assets/0.7.1/smoothness/images/ui-bg_glass_65_ffffff_1x400.png
150
- - coverage/assets/0.7.1/smoothness/images/ui-bg_glass_75_dadada_1x400.png
151
- - coverage/assets/0.7.1/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png
152
- - coverage/assets/0.7.1/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png
153
- - coverage/assets/0.7.1/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png
154
- - coverage/assets/0.7.1/smoothness/images/ui-icons_222222_256x240.png
155
- - coverage/assets/0.7.1/smoothness/images/ui-icons_2e83ff_256x240.png
156
- - coverage/assets/0.7.1/smoothness/images/ui-icons_454545_256x240.png
157
- - coverage/assets/0.7.1/smoothness/images/ui-icons_888888_256x240.png
158
- - coverage/assets/0.7.1/smoothness/images/ui-icons_cd0a0a_256x240.png
159
- - coverage/index.html
160
117
  - fixtures/README.md
161
118
  - fixtures/amazon/madeira_flow.rb
162
119
  - fixtures/amazon/rio_negro_flow.rb
@@ -176,6 +133,7 @@ files:
176
133
  - lib/cascadence/commander/generate.rb
177
134
  - lib/cascadence/commander/version.rb
178
135
  - lib/cascadence/config.rb
136
+ - lib/cascadence/confluence.rb
179
137
  - lib/cascadence/flow.rb
180
138
  - lib/cascadence/helper.rb
181
139
  - lib/cascadence/runner.rb
@@ -190,6 +148,7 @@ files:
190
148
  - spec/cascadence/commander/generate_spec.rb
191
149
  - spec/cascadence/commander/version_spec.rb
192
150
  - spec/cascadence/commander_spec.rb
151
+ - spec/cascadence/flow_merge_spec.rb
193
152
  - spec/cascadence/flow_spec.rb
194
153
  - spec/cascadence/fork_merge_spec.rb
195
154
  - spec/cascadence/helper_spec.rb
@@ -1,5 +0,0 @@
1
- {
2
- "result": {
3
- "covered_percent": 99.55
4
- }
5
- }