cascadence 0.2.4 → 0.3.0

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.
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
- }