cascadence 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7b0563a2baa0f25d54d1058e0e64452bb8772c3f
4
- data.tar.gz: 80a6d6039436c7d6bebd7faf4e93e42321ed6c51
3
+ metadata.gz: 484371533ba42c1dc48ec816d80c158c4a5fd67f
4
+ data.tar.gz: 21c1e22cc2cb1212d76df06c68f3e9e906235727
5
5
  SHA512:
6
- metadata.gz: e5d96084e391ce29ff1c6df4e47941a641e30626f0cffa5927eaa067d2b3d6285896593027e876b8cfb6ce73ff77771bcbbe56f18cb6795273f794783e85f0f5
7
- data.tar.gz: babf4b7b6780fb97ad7e448f382cdd370320cf3ce2f29541fecb10947d10a82757db82ae4194dfd6a560be7d6d006e916481d3bec94f156b153a9755d97895c4
6
+ metadata.gz: 903c91fcf31762e9115849b8db6fc816339d0e2d9be2437409c742acf8dec9ce106901c3549ca7248ef04c67c02849f6963943049e33109d9a1ee50e0e2b6976
7
+ data.tar.gz: e934b7d1ef66b98e4156f01535c69a8d9f08a9e22d38502d89290ae6fd851e38b1019b3a94c5dc116d50144a9e2cd3351e0ee7c57022ca298f9a55f541287d8d
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.0
1
+ 0.2.1
data/bin/cascadence CHANGED
@@ -1,4 +1,8 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  require File.expand_path("../../lib/cascadence", __FILE__)
4
- Cascadence::Commander.start ARGV
4
+ if ["help", "version", "flow"].include? ARGV.first
5
+ Cascadence::Commander.start ARGV
6
+ else
7
+ Cascadence::Commander.start ARGV.unshift("flow")
8
+ end
data/cascadence.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "cascadence"
8
- s.version = "0.2.0"
8
+ s.version = "0.2.1"
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"]
@@ -470,6 +470,12 @@
470
470
  null,
471
471
  1,
472
472
  1,
473
+ 0,
474
+ null,
475
+ null,
476
+ 1,
477
+ 1,
478
+ 1,
473
479
  1,
474
480
  1,
475
481
  2,
@@ -483,7 +489,7 @@
483
489
  null,
484
490
  null,
485
491
  1,
486
- 4,
492
+ 5,
487
493
  2,
488
494
  1,
489
495
  null,
@@ -912,14 +918,6 @@
912
918
  null,
913
919
  10,
914
920
  10,
915
- 10,
916
- 0,
917
- null,
918
- 10,
919
- 10,
920
- null,
921
- null,
922
- 10,
923
921
  null,
924
922
  null,
925
923
  1,
@@ -1088,7 +1086,9 @@
1088
1086
  null
1089
1087
  ],
1090
1088
  "/home/shinka/Projects/cascadence/fixtures/flow_helper.rb": [
1091
- 1
1089
+ 1,
1090
+ null,
1091
+ 3
1092
1092
  ],
1093
1093
  "/home/shinka/Projects/cascadence/fixtures/amazon/madeira_flow.rb": [
1094
1094
  1,
@@ -1097,54 +1097,58 @@
1097
1097
  null,
1098
1098
  1,
1099
1099
  2,
1100
+ 2,
1100
1101
  null,
1101
1102
  null,
1102
1103
  1,
1103
1104
  2,
1105
+ 2,
1104
1106
  null,
1105
1107
  null,
1106
1108
  1,
1107
1109
  2,
1110
+ 2,
1108
1111
  null,
1109
1112
  null,
1110
1113
  1,
1111
1114
  2,
1115
+ 2,
1112
1116
  null,
1113
1117
  null,
1114
1118
  null,
1115
1119
  null
1116
1120
  ],
1117
- "/home/shinka/Projects/cascadence/lib/cascadence/task.rb": [
1121
+ "/home/shinka/Projects/cascadence/lib/cascadence/config.rb": [
1118
1122
  1,
1119
1123
  1,
1120
1124
  1,
1121
- 3,
1122
- 3,
1123
- 3,
1124
- null,
1125
- null,
1126
1125
  1,
1127
- 2,
1128
- null,
1129
- null,
1130
1126
  null,
1131
- null
1132
- ],
1133
- "/home/shinka/Projects/cascadence/lib/cascadence/config.rb": [
1134
1127
  1,
1135
1128
  1,
1136
1129
  1,
1137
1130
  1,
1138
1131
  null,
1132
+ null,
1133
+ null
1134
+ ],
1135
+ "/home/shinka/Projects/cascadence/lib/cascadence/task.rb": [
1139
1136
  1,
1140
1137
  1,
1141
1138
  1,
1139
+ 3,
1140
+ 3,
1141
+ 3,
1142
+ null,
1143
+ null,
1142
1144
  1,
1145
+ 2,
1146
+ null,
1143
1147
  null,
1144
1148
  null,
1145
1149
  null
1146
1150
  ]
1147
1151
  },
1148
- "timestamp": 1363885085
1152
+ "timestamp": 1363889718
1149
1153
  }
1150
1154
  }
data/coverage/index.html CHANGED
@@ -14,7 +14,7 @@
14
14
  <img src="./assets/0.7.1/loading.gif" alt="loading"/>
15
15
  </div>
16
16
  <div id="wrapper" style="display:none;">
17
- <div class="timestamp">Generated <abbr class="timeago" title="2013-03-21T09:58:05-07:00">2013-03-21T09:58:05-07:00</abbr></div>
17
+ <div class="timestamp">Generated <abbr class="timeago" title="2013-03-21T11:15:18-07:00">2013-03-21T11:15:18-07:00</abbr></div>
18
18
  <ul class="group_tabs"></ul>
19
19
 
20
20
  <div id="content">
@@ -25,15 +25,15 @@
25
25
  covered at
26
26
  <span class="covered_strength">
27
27
  <span class="green">
28
- 19.34
28
+ 19.31
29
29
  </span>
30
30
  </span> hits/line)
31
31
  </h2>
32
32
  <a name="AllFiles"></a>
33
33
  <div>
34
34
  <b>18</b> files in total.
35
- <b>588</b> relevant lines.
36
- <span class="green"><b>585</b> lines covered</span> and
35
+ <b>592</b> relevant lines.
36
+ <span class="green"><b>589</b> lines covered</span> and
37
37
  <span class="red"><b>3</b> lines missed </span>
38
38
  </div>
39
39
  <table class="file_list">
@@ -53,21 +53,21 @@
53
53
  <tr>
54
54
  <td class="strong"><a href="#b1ba7cefa93daa2aa8f6530241d74a3981c37f14" class="src_link" title="fixtures/amazon/madeira_flow.rb">fixtures/amazon/madeira_flow.rb</a></td>
55
55
  <td class="green strong">100.0 %</td>
56
- <td>22</td>
57
- <td>11</td>
58
- <td>11</td>
56
+ <td>26</td>
57
+ <td>15</td>
58
+ <td>15</td>
59
59
  <td>0</td>
60
- <td>1.4</td>
60
+ <td>1.5</td>
61
61
  </tr>
62
62
 
63
63
  <tr>
64
64
  <td class="strong"><a href="#58ce21bdfbda9a78427664cd5edbceb0fa60ab6a" class="src_link" title="fixtures/flow_helper.rb">fixtures/flow_helper.rb</a></td>
65
65
  <td class="green strong">100.0 %</td>
66
- <td>1</td>
67
- <td>1</td>
68
- <td>1</td>
66
+ <td>3</td>
67
+ <td>2</td>
68
+ <td>2</td>
69
69
  <td>0</td>
70
- <td>1.0</td>
70
+ <td>2.0</td>
71
71
  </tr>
72
72
 
73
73
  <tr>
@@ -82,12 +82,12 @@
82
82
 
83
83
  <tr>
84
84
  <td class="strong"><a href="#17381cb9777e012e473b92b725c93ba487dce7a9" class="src_link" title="lib/cascadence/commander.rb">lib/cascadence/commander.rb</a></td>
85
- <td class="green strong">100.0 %</td>
86
- <td>70</td>
87
- <td>41</td>
88
- <td>41</td>
89
- <td>0</td>
90
- <td>16.0</td>
85
+ <td class="green strong">97.78 %</td>
86
+ <td>76</td>
87
+ <td>45</td>
88
+ <td>44</td>
89
+ <td>1</td>
90
+ <td>14.6</td>
91
91
  </tr>
92
92
 
93
93
  <tr>
@@ -122,12 +122,12 @@
122
122
 
123
123
  <tr>
124
124
  <td class="strong"><a href="#e13c0d62c625f197c356e87d0ed9455382cdf6e6" class="src_link" title="lib/cascadence/runner.rb">lib/cascadence/runner.rb</a></td>
125
- <td class="green strong">90.91 %</td>
126
- <td>70</td>
127
- <td>33</td>
128
- <td>30</td>
129
- <td>3</td>
130
- <td>5.9</td>
125
+ <td class="green strong">92.86 %</td>
126
+ <td>62</td>
127
+ <td>28</td>
128
+ <td>26</td>
129
+ <td>2</td>
130
+ <td>5.6</td>
131
131
  </tr>
132
132
 
133
133
  <tr>
@@ -251,8 +251,8 @@
251
251
  <h3>fixtures/amazon/madeira_flow.rb</h3>
252
252
  <h4><span class="green">100.0 %</span> covered</h4>
253
253
  <div>
254
- <b>11</b> relevant lines.
255
- <span class="green"><b>11</b> lines covered</span> and
254
+ <b>15</b> relevant lines.
255
+ <span class="green"><b>15</b> lines covered</span> and
256
256
  <span class="red"><b>0</b> lines missed.</span>
257
257
  </div>
258
258
  </div>
@@ -296,97 +296,121 @@
296
296
  <code class="ruby"> self.state = state || &quot;initialized&quot;</code>
297
297
  </li>
298
298
 
299
- <li class="never" data-hits="" data-linenumber="7">
299
+ <li class="covered" data-hits="2" data-linenumber="7">
300
+ <span class="hits">2</span>
301
+
302
+ <code class="ruby"> puts state</code>
303
+ </li>
304
+
305
+ <li class="never" data-hits="" data-linenumber="8">
300
306
 
301
307
 
302
308
  <code class="ruby"> end</code>
303
309
  </li>
304
310
 
305
- <li class="never" data-hits="" data-linenumber="8">
311
+ <li class="never" data-hits="" data-linenumber="9">
306
312
 
307
313
 
308
314
  <code class="ruby"></code>
309
315
  </li>
310
316
 
311
- <li class="covered" data-hits="1" data-linenumber="9">
317
+ <li class="covered" data-hits="1" data-linenumber="10">
312
318
  <span class="hits">1</span>
313
319
 
314
320
  <code class="ruby"> def step1</code>
315
321
  </li>
316
322
 
317
- <li class="covered" data-hits="2" data-linenumber="10">
323
+ <li class="covered" data-hits="2" data-linenumber="11">
318
324
  <span class="hits">2</span>
319
325
 
320
326
  <code class="ruby"> self.state += &quot;1&quot;</code>
321
327
  </li>
322
328
 
323
- <li class="never" data-hits="" data-linenumber="11">
329
+ <li class="covered" data-hits="2" data-linenumber="12">
330
+ <span class="hits">2</span>
331
+
332
+ <code class="ruby"> puts state</code>
333
+ </li>
334
+
335
+ <li class="never" data-hits="" data-linenumber="13">
324
336
 
325
337
 
326
338
  <code class="ruby"> end</code>
327
339
  </li>
328
340
 
329
- <li class="never" data-hits="" data-linenumber="12">
341
+ <li class="never" data-hits="" data-linenumber="14">
330
342
 
331
343
 
332
344
  <code class="ruby"></code>
333
345
  </li>
334
346
 
335
- <li class="covered" data-hits="1" data-linenumber="13">
347
+ <li class="covered" data-hits="1" data-linenumber="15">
336
348
  <span class="hits">1</span>
337
349
 
338
350
  <code class="ruby"> def step2</code>
339
351
  </li>
340
352
 
341
- <li class="covered" data-hits="2" data-linenumber="14">
353
+ <li class="covered" data-hits="2" data-linenumber="16">
342
354
  <span class="hits">2</span>
343
355
 
344
356
  <code class="ruby"> self.state += &quot;2&quot;</code>
345
357
  </li>
346
358
 
347
- <li class="never" data-hits="" data-linenumber="15">
359
+ <li class="covered" data-hits="2" data-linenumber="17">
360
+ <span class="hits">2</span>
361
+
362
+ <code class="ruby"> puts state</code>
363
+ </li>
364
+
365
+ <li class="never" data-hits="" data-linenumber="18">
348
366
 
349
367
 
350
368
  <code class="ruby"> end</code>
351
369
  </li>
352
370
 
353
- <li class="never" data-hits="" data-linenumber="16">
371
+ <li class="never" data-hits="" data-linenumber="19">
354
372
 
355
373
 
356
374
  <code class="ruby"></code>
357
375
  </li>
358
376
 
359
- <li class="covered" data-hits="1" data-linenumber="17">
377
+ <li class="covered" data-hits="1" data-linenumber="20">
360
378
  <span class="hits">1</span>
361
379
 
362
380
  <code class="ruby"> def step3</code>
363
381
  </li>
364
382
 
365
- <li class="covered" data-hits="2" data-linenumber="18">
383
+ <li class="covered" data-hits="2" data-linenumber="21">
366
384
  <span class="hits">2</span>
367
385
 
368
386
  <code class="ruby"> self.state += &quot;3&quot;</code>
369
387
  </li>
370
388
 
371
- <li class="never" data-hits="" data-linenumber="19">
389
+ <li class="covered" data-hits="2" data-linenumber="22">
390
+ <span class="hits">2</span>
391
+
392
+ <code class="ruby"> puts state</code>
393
+ </li>
394
+
395
+ <li class="never" data-hits="" data-linenumber="23">
372
396
 
373
397
 
374
398
  <code class="ruby"> end</code>
375
399
  </li>
376
400
 
377
- <li class="never" data-hits="" data-linenumber="20">
401
+ <li class="never" data-hits="" data-linenumber="24">
378
402
 
379
403
 
380
404
  <code class="ruby"></code>
381
405
  </li>
382
406
 
383
- <li class="never" data-hits="" data-linenumber="21">
407
+ <li class="never" data-hits="" data-linenumber="25">
384
408
 
385
409
 
386
410
  <code class="ruby"> end</code>
387
411
  </li>
388
412
 
389
- <li class="never" data-hits="" data-linenumber="22">
413
+ <li class="never" data-hits="" data-linenumber="26">
390
414
 
391
415
 
392
416
  <code class="ruby">end</code>
@@ -401,8 +425,8 @@
401
425
  <h3>fixtures/flow_helper.rb</h3>
402
426
  <h4><span class="green">100.0 %</span> covered</h4>
403
427
  <div>
404
- <b>1</b> relevant lines.
405
- <span class="green"><b>1</b> lines covered</span> and
428
+ <b>2</b> relevant lines.
429
+ <span class="green"><b>2</b> lines covered</span> and
406
430
  <span class="red"><b>0</b> lines missed.</span>
407
431
  </div>
408
432
  </div>
@@ -416,6 +440,18 @@
416
440
  <code class="ruby">require File.join(File.dirname(__FILE__), &quot;amazon&quot;, &quot;madeira_flow&quot;)</code>
417
441
  </li>
418
442
 
443
+ <li class="never" data-hits="" data-linenumber="2">
444
+
445
+
446
+ <code class="ruby"></code>
447
+ </li>
448
+
449
+ <li class="covered" data-hits="3" data-linenumber="3">
450
+ <span class="hits">3</span>
451
+
452
+ <code class="ruby">Cascadence.config.zero_state_generator = lambda { &quot;zerostate&quot; }</code>
453
+ </li>
454
+
419
455
  </ol>
420
456
  </pre>
421
457
  </div>
@@ -675,11 +711,11 @@
675
711
  <div class="source_table" id="17381cb9777e012e473b92b725c93ba487dce7a9">
676
712
  <div class="header">
677
713
  <h3>lib/cascadence/commander.rb</h3>
678
- <h4><span class="green">100.0 %</span> covered</h4>
714
+ <h4><span class="green">97.78 %</span> covered</h4>
679
715
  <div>
680
- <b>41</b> relevant lines.
681
- <span class="green"><b>41</b> lines covered</span> and
682
- <span class="red"><b>0</b> lines missed.</span>
716
+ <b>45</b> relevant lines.
717
+ <span class="green"><b>44</b> lines covered</span> and
718
+ <span class="red"><b>1</b> lines missed.</span>
683
719
  </div>
684
720
  </div>
685
721
 
@@ -707,400 +743,436 @@
707
743
  <li class="covered" data-hits="1" data-linenumber="4">
708
744
  <span class="hits">1</span>
709
745
 
710
- <code class="ruby"> desc &quot;flow&quot;, &quot;Runs the flow specified in the given file. If given a directory, runs all the flows in the directory.&quot;</code>
746
+ <code class="ruby"> desc &quot;version&quot;, &quot;Not implemented yet. That&#39;s right, the command that tells you what version of cascadence you&#39;re running has not been implemented yet.&quot;</code>
711
747
  </li>
712
748
 
713
749
  <li class="covered" data-hits="1" data-linenumber="5">
714
750
  <span class="hits">1</span>
715
751
 
752
+ <code class="ruby"> def version</code>
753
+ </li>
754
+
755
+ <li class="missed" data-hits="0" data-linenumber="6">
756
+
757
+
758
+ <code class="ruby"> puts &quot;El Psy Congroo&quot;</code>
759
+ </li>
760
+
761
+ <li class="never" data-hits="" data-linenumber="7">
762
+
763
+
764
+ <code class="ruby"> end</code>
765
+ </li>
766
+
767
+ <li class="never" data-hits="" data-linenumber="8">
768
+
769
+
770
+ <code class="ruby"></code>
771
+ </li>
772
+
773
+ <li class="covered" data-hits="1" data-linenumber="9">
774
+ <span class="hits">1</span>
775
+
776
+ <code class="ruby"> desc &quot;flow [FILEPATH]&quot;, &quot;Runs the flow specified in the given file. If given a directory, runs all the flows in the directory.&quot;</code>
777
+ </li>
778
+
779
+ <li class="covered" data-hits="1" data-linenumber="10">
780
+ <span class="hits">1</span>
781
+
716
782
  <code class="ruby"> def flow(filepath=Dir.pwd)</code>
717
783
  </li>
718
784
 
719
- <li class="covered" data-hits="1" data-linenumber="6">
785
+ <li class="covered" data-hits="1" data-linenumber="11">
720
786
  <span class="hits">1</span>
721
787
 
722
- <code class="ruby"> files = _get_files_from_filepath _absolutize_filepath filepath </code>
788
+ <code class="ruby"> abs_file_path = _absolutize_filepath filepath</code>
723
789
  </li>
724
790
 
725
- <li class="covered" data-hits="1" data-linenumber="7">
791
+ <li class="covered" data-hits="1" data-linenumber="12">
726
792
  <span class="hits">1</span>
727
793
 
728
- <code class="ruby"> _setup_environment_from_filepath!(filepath)</code>
794
+ <code class="ruby"> files = _get_files_from_filepath abs_file_path</code>
729
795
  </li>
730
796
 
731
- <li class="covered" data-hits="2" data-linenumber="8">
797
+ <li class="covered" data-hits="1" data-linenumber="13">
798
+ <span class="hits">1</span>
799
+
800
+ <code class="ruby"> _setup_environment_from_filepath!(_absolutize_filepath filepath)</code>
801
+ </li>
802
+
803
+ <li class="covered" data-hits="2" data-linenumber="14">
732
804
  <span class="hits">2</span>
733
805
 
734
806
  <code class="ruby"> tasks = files.map { |file| _get_task_from_file file }</code>
735
807
  </li>
736
808
 
737
- <li class="covered" data-hits="1" data-linenumber="9">
809
+ <li class="covered" data-hits="1" data-linenumber="15">
738
810
  <span class="hits">1</span>
739
811
 
740
812
  <code class="ruby"> _run_tasks tasks</code>
741
813
  </li>
742
814
 
743
- <li class="never" data-hits="" data-linenumber="10">
815
+ <li class="never" data-hits="" data-linenumber="16">
744
816
 
745
817
 
746
818
  <code class="ruby"> end</code>
747
819
  </li>
748
820
 
749
- <li class="never" data-hits="" data-linenumber="11">
821
+ <li class="never" data-hits="" data-linenumber="17">
750
822
 
751
823
 
752
824
  <code class="ruby"></code>
753
825
  </li>
754
826
 
755
- <li class="covered" data-hits="1" data-linenumber="12">
827
+ <li class="covered" data-hits="1" data-linenumber="18">
756
828
  <span class="hits">1</span>
757
829
 
758
830
  <code class="ruby"> private</code>
759
831
  </li>
760
832
 
761
- <li class="never" data-hits="" data-linenumber="13">
833
+ <li class="never" data-hits="" data-linenumber="19">
762
834
 
763
835
 
764
836
  <code class="ruby"></code>
765
837
  </li>
766
838
 
767
- <li class="covered" data-hits="1" data-linenumber="14">
839
+ <li class="covered" data-hits="1" data-linenumber="20">
768
840
  <span class="hits">1</span>
769
841
 
770
842
  <code class="ruby"> def _run_tasks(tasks)</code>
771
843
  </li>
772
844
 
773
- <li class="covered" data-hits="1" data-linenumber="15">
845
+ <li class="covered" data-hits="1" data-linenumber="21">
774
846
  <span class="hits">1</span>
775
847
 
776
848
  <code class="ruby"> Cascadence.runner.run_tasks tasks</code>
777
849
  </li>
778
850
 
779
- <li class="never" data-hits="" data-linenumber="16">
851
+ <li class="never" data-hits="" data-linenumber="22">
780
852
 
781
853
 
782
854
  <code class="ruby"> end</code>
783
855
  </li>
784
856
 
785
- <li class="never" data-hits="" data-linenumber="17">
857
+ <li class="never" data-hits="" data-linenumber="23">
786
858
 
787
859
 
788
860
  <code class="ruby"></code>
789
861
  </li>
790
862
 
791
- <li class="covered" data-hits="1" data-linenumber="18">
863
+ <li class="covered" data-hits="1" data-linenumber="24">
792
864
  <span class="hits">1</span>
793
865
 
794
866
  <code class="ruby"> def _absolutize_filepath(filepath)</code>
795
867
  </li>
796
868
 
797
- <li class="covered" data-hits="4" data-linenumber="19">
798
- <span class="hits">4</span>
869
+ <li class="covered" data-hits="5" data-linenumber="25">
870
+ <span class="hits">5</span>
799
871
 
800
872
  <code class="ruby"> return filepath if filepath =~ /^\//</code>
801
873
  </li>
802
874
 
803
- <li class="covered" data-hits="2" data-linenumber="20">
875
+ <li class="covered" data-hits="2" data-linenumber="26">
804
876
  <span class="hits">2</span>
805
877
 
806
878
  <code class="ruby"> return File.expand_path(filepath) if filepath =~ /^~/</code>
807
879
  </li>
808
880
 
809
- <li class="covered" data-hits="1" data-linenumber="21">
881
+ <li class="covered" data-hits="1" data-linenumber="27">
810
882
  <span class="hits">1</span>
811
883
 
812
884
  <code class="ruby"> return File.join(Dir.pwd, filepath)</code>
813
885
  </li>
814
886
 
815
- <li class="never" data-hits="" data-linenumber="22">
887
+ <li class="never" data-hits="" data-linenumber="28">
816
888
 
817
889
 
818
890
  <code class="ruby"> end</code>
819
891
  </li>
820
892
 
821
- <li class="never" data-hits="" data-linenumber="23">
893
+ <li class="never" data-hits="" data-linenumber="29">
822
894
 
823
895
 
824
896
  <code class="ruby"></code>
825
897
  </li>
826
898
 
827
- <li class="covered" data-hits="1" data-linenumber="24">
899
+ <li class="covered" data-hits="1" data-linenumber="30">
828
900
  <span class="hits">1</span>
829
901
 
830
902
  <code class="ruby"> def _get_files_from_filepath(filepath)</code>
831
903
  </li>
832
904
 
833
- <li class="covered" data-hits="19" data-linenumber="25">
905
+ <li class="covered" data-hits="19" data-linenumber="31">
834
906
  <span class="hits">19</span>
835
907
 
836
908
  <code class="ruby"> return [filepath] if _flow_file? filepath</code>
837
909
  </li>
838
910
 
839
- <li class="covered" data-hits="11" data-linenumber="26">
911
+ <li class="covered" data-hits="11" data-linenumber="32">
840
912
  <span class="hits">11</span>
841
913
 
842
914
  <code class="ruby"> return [] unless File.exists? filepath</code>
843
915
  </li>
844
916
 
845
- <li class="covered" data-hits="26" data-linenumber="27">
917
+ <li class="covered" data-hits="26" data-linenumber="33">
846
918
  <span class="hits">26</span>
847
919
 
848
920
  <code class="ruby"> Dir[File.join(filepath, &quot;*&quot;)].map { |file_or_dir| _get_files_from_filepath file_or_dir }.flatten</code>
849
921
  </li>
850
922
 
851
- <li class="never" data-hits="" data-linenumber="28">
923
+ <li class="never" data-hits="" data-linenumber="34">
852
924
 
853
925
 
854
926
  <code class="ruby"> end</code>
855
927
  </li>
856
928
 
857
- <li class="never" data-hits="" data-linenumber="29">
929
+ <li class="never" data-hits="" data-linenumber="35">
858
930
 
859
931
 
860
932
  <code class="ruby"></code>
861
933
  </li>
862
934
 
863
- <li class="covered" data-hits="1" data-linenumber="30">
935
+ <li class="covered" data-hits="1" data-linenumber="36">
864
936
  <span class="hits">1</span>
865
937
 
866
938
  <code class="ruby"> def _flow_file?(filepath)</code>
867
939
  </li>
868
940
 
869
- <li class="covered" data-hits="19" data-linenumber="31">
941
+ <li class="covered" data-hits="19" data-linenumber="37">
870
942
  <span class="hits">19</span>
871
943
 
872
944
  <code class="ruby"> (filepath =~ /_flow\.rb$/) &amp;&amp; File.file?(filepath)</code>
873
945
  </li>
874
946
 
875
- <li class="never" data-hits="" data-linenumber="32">
947
+ <li class="never" data-hits="" data-linenumber="38">
876
948
 
877
949
 
878
950
  <code class="ruby"> end</code>
879
951
  </li>
880
952
 
881
- <li class="never" data-hits="" data-linenumber="33">
953
+ <li class="never" data-hits="" data-linenumber="39">
882
954
 
883
955
 
884
956
  <code class="ruby"></code>
885
957
  </li>
886
958
 
887
- <li class="covered" data-hits="1" data-linenumber="34">
959
+ <li class="covered" data-hits="1" data-linenumber="40">
888
960
  <span class="hits">1</span>
889
961
 
890
962
  <code class="ruby"> def _setup_environment_from_filepath!(filepath)</code>
891
963
  </li>
892
964
 
893
- <li class="covered" data-hits="1" data-linenumber="35">
965
+ <li class="covered" data-hits="1" data-linenumber="41">
894
966
  <span class="hits">1</span>
895
967
 
896
968
  <code class="ruby"> require _find_flow_helper_from_filepath filepath</code>
897
969
  </li>
898
970
 
899
- <li class="never" data-hits="" data-linenumber="36">
971
+ <li class="never" data-hits="" data-linenumber="42">
900
972
 
901
973
 
902
974
  <code class="ruby"> end</code>
903
975
  </li>
904
976
 
905
- <li class="never" data-hits="" data-linenumber="37">
977
+ <li class="never" data-hits="" data-linenumber="43">
906
978
 
907
979
 
908
980
  <code class="ruby"></code>
909
981
  </li>
910
982
 
911
- <li class="covered" data-hits="1" data-linenumber="38">
983
+ <li class="covered" data-hits="1" data-linenumber="44">
912
984
  <span class="hits">1</span>
913
985
 
914
986
  <code class="ruby"> def _find_flow_helper_from_filepath( filepath )</code>
915
987
  </li>
916
988
 
917
- <li class="covered" data-hits="19" data-linenumber="39">
989
+ <li class="covered" data-hits="19" data-linenumber="45">
918
990
  <span class="hits">19</span>
919
991
 
920
992
  <code class="ruby"> _find_flow_helper_from_filepath File.expand_path(&quot;..&quot;, filepath) unless File.directory? filepath</code>
921
993
  </li>
922
994
 
923
- <li class="covered" data-hits="18" data-linenumber="40">
995
+ <li class="covered" data-hits="18" data-linenumber="46">
924
996
  <span class="hits">18</span>
925
997
 
926
998
  <code class="ruby"> throw :NoFlowHelperFound if filepath == &quot;/&quot;</code>
927
999
  </li>
928
1000
 
929
- <li class="covered" data-hits="146" data-linenumber="41">
1001
+ <li class="covered" data-hits="146" data-linenumber="47">
930
1002
  <span class="hits">146</span>
931
1003
 
932
1004
  <code class="ruby"> Dir[File.join(filepath, &quot;*&quot;)].select { |file| _flow_helper? file }.first || _find_flow_helper_from_filepath( File.expand_path(&quot;..&quot;, filepath) )</code>
933
1005
  </li>
934
1006
 
935
- <li class="never" data-hits="" data-linenumber="42">
1007
+ <li class="never" data-hits="" data-linenumber="48">
936
1008
 
937
1009
 
938
1010
  <code class="ruby"> end</code>
939
1011
  </li>
940
1012
 
941
- <li class="never" data-hits="" data-linenumber="43">
1013
+ <li class="never" data-hits="" data-linenumber="49">
942
1014
 
943
1015
 
944
1016
  <code class="ruby"></code>
945
1017
  </li>
946
1018
 
947
- <li class="covered" data-hits="1" data-linenumber="44">
1019
+ <li class="covered" data-hits="1" data-linenumber="50">
948
1020
  <span class="hits">1</span>
949
1021
 
950
1022
  <code class="ruby"> def _flow_helper?(filepath)</code>
951
1023
  </li>
952
1024
 
953
- <li class="covered" data-hits="129" data-linenumber="45">
1025
+ <li class="covered" data-hits="129" data-linenumber="51">
954
1026
  <span class="hits">129</span>
955
1027
 
956
1028
  <code class="ruby"> (filepath =~ /\/flow_helper\.rb$/) &amp;&amp; File.file?(filepath)</code>
957
1029
  </li>
958
1030
 
959
- <li class="never" data-hits="" data-linenumber="46">
1031
+ <li class="never" data-hits="" data-linenumber="52">
960
1032
 
961
1033
 
962
1034
  <code class="ruby"> end</code>
963
1035
  </li>
964
1036
 
965
- <li class="never" data-hits="" data-linenumber="47">
1037
+ <li class="never" data-hits="" data-linenumber="53">
966
1038
 
967
1039
 
968
1040
  <code class="ruby"></code>
969
1041
  </li>
970
1042
 
971
- <li class="covered" data-hits="1" data-linenumber="48">
1043
+ <li class="covered" data-hits="1" data-linenumber="54">
972
1044
  <span class="hits">1</span>
973
1045
 
974
1046
  <code class="ruby"> def _get_task_from_file(file)</code>
975
1047
  </li>
976
1048
 
977
- <li class="covered" data-hits="3" data-linenumber="49">
1049
+ <li class="covered" data-hits="3" data-linenumber="55">
978
1050
  <span class="hits">3</span>
979
1051
 
980
1052
  <code class="ruby"> flow = _get_flow_from_file file</code>
981
1053
  </li>
982
1054
 
983
- <li class="covered" data-hits="3" data-linenumber="50">
1055
+ <li class="covered" data-hits="3" data-linenumber="56">
984
1056
  <span class="hits">3</span>
985
1057
 
986
1058
  <code class="ruby"> Cascadence::Task.new(_get_zero_state_generator_from_flow flow) do |state=nil|</code>
987
1059
  </li>
988
1060
 
989
- <li class="covered" data-hits="2" data-linenumber="51">
1061
+ <li class="covered" data-hits="2" data-linenumber="57">
990
1062
  <span class="hits">2</span>
991
1063
 
992
1064
  <code class="ruby"> flow.new(state).run_states</code>
993
1065
  </li>
994
1066
 
995
- <li class="never" data-hits="" data-linenumber="52">
1067
+ <li class="never" data-hits="" data-linenumber="58">
996
1068
 
997
1069
 
998
1070
  <code class="ruby"> end</code>
999
1071
  </li>
1000
1072
 
1001
- <li class="never" data-hits="" data-linenumber="53">
1073
+ <li class="never" data-hits="" data-linenumber="59">
1002
1074
 
1003
1075
 
1004
1076
  <code class="ruby"> end</code>
1005
1077
  </li>
1006
1078
 
1007
- <li class="never" data-hits="" data-linenumber="54">
1079
+ <li class="never" data-hits="" data-linenumber="60">
1008
1080
 
1009
1081
 
1010
1082
  <code class="ruby"></code>
1011
1083
  </li>
1012
1084
 
1013
- <li class="covered" data-hits="1" data-linenumber="55">
1085
+ <li class="covered" data-hits="1" data-linenumber="61">
1014
1086
  <span class="hits">1</span>
1015
1087
 
1016
1088
  <code class="ruby"> def _get_zero_state_generator_from_flow(flow)</code>
1017
1089
  </li>
1018
1090
 
1019
- <li class="covered" data-hits="14" data-linenumber="56">
1091
+ <li class="covered" data-hits="14" data-linenumber="62">
1020
1092
  <span class="hits">14</span>
1021
1093
 
1022
1094
  <code class="ruby"> return flow.zero_state_generator if flow.respond_to? :zero_state_generator</code>
1023
1095
  </li>
1024
1096
 
1025
- <li class="covered" data-hits="12" data-linenumber="57">
1097
+ <li class="covered" data-hits="12" data-linenumber="63">
1026
1098
  <span class="hits">12</span>
1027
1099
 
1028
1100
  <code class="ruby"> return Cascadence.config.zero_state_generator if flow == Object</code>
1029
1101
  </li>
1030
1102
 
1031
- <li class="covered" data-hits="9" data-linenumber="58">
1103
+ <li class="covered" data-hits="9" data-linenumber="64">
1032
1104
  <span class="hits">9</span>
1033
1105
 
1034
1106
  <code class="ruby"> _get_zero_state_generator_from_flow(flow.parent)</code>
1035
1107
  </li>
1036
1108
 
1037
- <li class="never" data-hits="" data-linenumber="59">
1109
+ <li class="never" data-hits="" data-linenumber="65">
1038
1110
 
1039
1111
 
1040
1112
  <code class="ruby"> end</code>
1041
1113
  </li>
1042
1114
 
1043
- <li class="never" data-hits="" data-linenumber="60">
1115
+ <li class="never" data-hits="" data-linenumber="66">
1044
1116
 
1045
1117
 
1046
1118
  <code class="ruby"></code>
1047
1119
  </li>
1048
1120
 
1049
- <li class="covered" data-hits="1" data-linenumber="61">
1121
+ <li class="covered" data-hits="1" data-linenumber="67">
1050
1122
  <span class="hits">1</span>
1051
1123
 
1052
1124
  <code class="ruby"> def _get_flow_from_file(file)</code>
1053
1125
  </li>
1054
1126
 
1055
- <li class="covered" data-hits="96" data-linenumber="62">
1127
+ <li class="covered" data-hits="96" data-linenumber="68">
1056
1128
  <span class="hits">96</span>
1057
1129
 
1058
1130
  <code class="ruby"> Cascadence::Flow.subclasses.select { |subclass| _reasonably_matched?(subclass.to_s, file.chomp(&quot;.rb&quot;)) }.first</code>
1059
1131
  </li>
1060
1132
 
1061
- <li class="never" data-hits="" data-linenumber="63">
1133
+ <li class="never" data-hits="" data-linenumber="69">
1062
1134
 
1063
1135
 
1064
1136
  <code class="ruby"> end</code>
1065
1137
  </li>
1066
1138
 
1067
- <li class="never" data-hits="" data-linenumber="64">
1139
+ <li class="never" data-hits="" data-linenumber="70">
1068
1140
 
1069
1141
 
1070
1142
  <code class="ruby"></code>
1071
1143
  </li>
1072
1144
 
1073
- <li class="covered" data-hits="1" data-linenumber="65">
1145
+ <li class="covered" data-hits="1" data-linenumber="71">
1074
1146
  <span class="hits">1</span>
1075
1147
 
1076
1148
  <code class="ruby"> def _reasonably_matched?(str1, str2)</code>
1077
1149
  </li>
1078
1150
 
1079
- <li class="covered" data-hits="99" data-linenumber="66">
1151
+ <li class="covered" data-hits="99" data-linenumber="72">
1080
1152
  <span class="hits">99</span>
1081
1153
 
1082
1154
  <code class="ruby"> !(str2.to_s.gsub(/^\/?/, &quot;/&quot;) =~ Regexp.new(&quot;\/&quot; + str1.to_s.split(&quot;::&quot;).map(&amp;:underscore).join(&quot;/&quot;) + &quot;$&quot;)).nil?</code>
1083
1155
  </li>
1084
1156
 
1085
- <li class="never" data-hits="" data-linenumber="67">
1157
+ <li class="never" data-hits="" data-linenumber="73">
1086
1158
 
1087
1159
 
1088
1160
  <code class="ruby"> end</code>
1089
1161
  </li>
1090
1162
 
1091
- <li class="never" data-hits="" data-linenumber="68">
1163
+ <li class="never" data-hits="" data-linenumber="74">
1092
1164
 
1093
1165
 
1094
1166
  <code class="ruby"></code>
1095
1167
  </li>
1096
1168
 
1097
- <li class="never" data-hits="" data-linenumber="69">
1169
+ <li class="never" data-hits="" data-linenumber="75">
1098
1170
 
1099
1171
 
1100
1172
  <code class="ruby"> end</code>
1101
1173
  </li>
1102
1174
 
1103
- <li class="never" data-hits="" data-linenumber="70">
1175
+ <li class="never" data-hits="" data-linenumber="76">
1104
1176
 
1105
1177
 
1106
1178
  <code class="ruby">end</code>
@@ -1491,11 +1563,11 @@
1491
1563
  <div class="source_table" id="e13c0d62c625f197c356e87d0ed9455382cdf6e6">
1492
1564
  <div class="header">
1493
1565
  <h3>lib/cascadence/runner.rb</h3>
1494
- <h4><span class="green">90.91 %</span> covered</h4>
1566
+ <h4><span class="green">92.86 %</span> covered</h4>
1495
1567
  <div>
1496
- <b>33</b> relevant lines.
1497
- <span class="green"><b>30</b> lines covered</span> and
1498
- <span class="red"><b>3</b> lines missed.</span>
1568
+ <b>28</b> relevant lines.
1569
+ <span class="green"><b>26</b> lines covered</span> and
1570
+ <span class="red"><b>2</b> lines missed.</span>
1499
1571
  </div>
1500
1572
  </div>
1501
1573
 
@@ -1793,130 +1865,82 @@
1793
1865
  <li class="covered" data-hits="10" data-linenumber="49">
1794
1866
  <span class="hits">10</span>
1795
1867
 
1796
- <code class="ruby"> alive_threads = new_threads.select do |thread|</code>
1797
- </li>
1798
-
1799
- <li class="covered" data-hits="10" data-linenumber="50">
1800
- <span class="hits">10</span>
1801
-
1802
- <code class="ruby"> if thread.alive?</code>
1803
- </li>
1804
-
1805
- <li class="missed" data-hits="0" data-linenumber="51">
1806
-
1807
-
1808
- <code class="ruby"> true</code>
1809
- </li>
1810
-
1811
- <li class="never" data-hits="" data-linenumber="52">
1812
-
1813
-
1814
- <code class="ruby"> else</code>
1815
- </li>
1816
-
1817
- <li class="covered" data-hits="10" data-linenumber="53">
1818
- <span class="hits">10</span>
1819
-
1820
- <code class="ruby"> puts &quot;Thread finished&quot;</code>
1821
- </li>
1822
-
1823
- <li class="covered" data-hits="10" data-linenumber="54">
1824
- <span class="hits">10</span>
1825
-
1826
- <code class="ruby"> false</code>
1827
- </li>
1828
-
1829
- <li class="never" data-hits="" data-linenumber="55">
1830
-
1831
-
1832
- <code class="ruby"> end</code>
1833
- </li>
1834
-
1835
- <li class="never" data-hits="" data-linenumber="56">
1836
-
1837
-
1838
- <code class="ruby"> end</code>
1839
- </li>
1840
-
1841
- <li class="covered" data-hits="10" data-linenumber="57">
1842
- <span class="hits">10</span>
1843
-
1844
- <code class="ruby"> return [new_tasks, alive_threads]</code>
1868
+ <code class="ruby"> return [new_tasks, new_threads.select(&amp;:alive?)]</code>
1845
1869
  </li>
1846
1870
 
1847
- <li class="never" data-hits="" data-linenumber="58">
1871
+ <li class="never" data-hits="" data-linenumber="50">
1848
1872
 
1849
1873
 
1850
1874
  <code class="ruby"> end</code>
1851
1875
  </li>
1852
1876
 
1853
- <li class="never" data-hits="" data-linenumber="59">
1877
+ <li class="never" data-hits="" data-linenumber="51">
1854
1878
 
1855
1879
 
1856
1880
  <code class="ruby"></code>
1857
1881
  </li>
1858
1882
 
1859
- <li class="covered" data-hits="1" data-linenumber="60">
1883
+ <li class="covered" data-hits="1" data-linenumber="52">
1860
1884
  <span class="hits">1</span>
1861
1885
 
1862
1886
  <code class="ruby"> def _spin_up_task(task, threads=[])</code>
1863
1887
  </li>
1864
1888
 
1865
- <li class="covered" data-hits="10" data-linenumber="61">
1889
+ <li class="covered" data-hits="10" data-linenumber="53">
1866
1890
  <span class="hits">10</span>
1867
1891
 
1868
1892
  <code class="ruby"> puts &quot;Spinning up thread no.#{threads.count} out of #{Cascadence.config.max_thread_count}&quot;</code>
1869
1893
  </li>
1870
1894
 
1871
- <li class="covered" data-hits="20" data-linenumber="62">
1895
+ <li class="covered" data-hits="20" data-linenumber="54">
1872
1896
  <span class="hits">20</span>
1873
1897
 
1874
1898
  <code class="ruby"> thread = Thread.new { task.call } unless task.nil?</code>
1875
1899
  </li>
1876
1900
 
1877
- <li class="covered" data-hits="10" data-linenumber="63">
1901
+ <li class="covered" data-hits="10" data-linenumber="55">
1878
1902
  <span class="hits">10</span>
1879
1903
 
1880
1904
  <code class="ruby"> threads.push thread unless thread.nil?</code>
1881
1905
  </li>
1882
1906
 
1883
- <li class="never" data-hits="" data-linenumber="64">
1907
+ <li class="never" data-hits="" data-linenumber="56">
1884
1908
 
1885
1909
 
1886
1910
  <code class="ruby"> end</code>
1887
1911
  </li>
1888
1912
 
1889
- <li class="never" data-hits="" data-linenumber="65">
1913
+ <li class="never" data-hits="" data-linenumber="57">
1890
1914
 
1891
1915
 
1892
1916
  <code class="ruby"></code>
1893
1917
  </li>
1894
1918
 
1895
- <li class="covered" data-hits="1" data-linenumber="66">
1919
+ <li class="covered" data-hits="1" data-linenumber="58">
1896
1920
  <span class="hits">1</span>
1897
1921
 
1898
1922
  <code class="ruby"> def _run_sequential(tasks)</code>
1899
1923
  </li>
1900
1924
 
1901
- <li class="covered" data-hits="1" data-linenumber="67">
1925
+ <li class="covered" data-hits="1" data-linenumber="59">
1902
1926
  <span class="hits">1</span>
1903
1927
 
1904
1928
  <code class="ruby"> tasks.map(&amp;:call).map(&amp;:state)</code>
1905
1929
  </li>
1906
1930
 
1907
- <li class="never" data-hits="" data-linenumber="68">
1931
+ <li class="never" data-hits="" data-linenumber="60">
1908
1932
 
1909
1933
 
1910
1934
  <code class="ruby"> end</code>
1911
1935
  </li>
1912
1936
 
1913
- <li class="never" data-hits="" data-linenumber="69">
1937
+ <li class="never" data-hits="" data-linenumber="61">
1914
1938
 
1915
1939
 
1916
1940
  <code class="ruby"> end</code>
1917
1941
  </li>
1918
1942
 
1919
- <li class="never" data-hits="" data-linenumber="70">
1943
+ <li class="never" data-hits="" data-linenumber="62">
1920
1944
 
1921
1945
 
1922
1946
  <code class="ruby">end</code>
@@ -3389,7 +3413,7 @@
3389
3413
  <li class="covered" data-hits="1" data-linenumber="10">
3390
3414
  <span class="hits">1</span>
3391
3415
 
3392
- <code class="ruby"> result.should eq [&quot;initialized123&quot;]</code>
3416
+ <code class="ruby"> result.should eq [&quot;zerostate123&quot;]</code>
3393
3417
  </li>
3394
3418
 
3395
3419
  <li class="never" data-hits="" data-linenumber="11">
@@ -4103,7 +4127,7 @@
4103
4127
  <li class="covered" data-hits="1" data-linenumber="129">
4104
4128
  <span class="hits">1</span>
4105
4129
 
4106
- <code class="ruby"> task.call.state.should eq &quot;initialized123&quot;</code>
4130
+ <code class="ruby"> task.call.state.should eq &quot;zerostate123&quot;</code>
4107
4131
  </li>
4108
4132
 
4109
4133
  <li class="never" data-hits="" data-linenumber="130">
@@ -6,10 +6,11 @@ module Cascadence
6
6
  puts "El Psy Congroo"
7
7
  end
8
8
 
9
- desc "flow", "Runs the flow specified in the given file. If given a directory, runs all the flows in the directory."
9
+ desc "flow [FILEPATH]", "Runs the flow specified in the given file. If given a directory, runs all the flows in the directory."
10
10
  def flow(filepath=Dir.pwd)
11
- files = _get_files_from_filepath _absolutize_filepath filepath
12
- _setup_environment_from_filepath!(filepath)
11
+ abs_file_path = _absolutize_filepath filepath
12
+ files = _get_files_from_filepath abs_file_path
13
+ _setup_environment_from_filepath!(_absolutize_filepath filepath)
13
14
  tasks = files.map { |file| _get_task_from_file file }
14
15
  _run_tasks tasks
15
16
  end
data/lib/cascadence.rb CHANGED
@@ -11,8 +11,12 @@ module Cascadence
11
11
  autoload :Runner, File.join( File.dirname(__FILE__), "cascadence", "runner")
12
12
  autoload :Config, File.join( File.dirname(__FILE__), "cascadence", "config")
13
13
  autoload :Task, File.join( File.dirname(__FILE__), "cascadence", "task")
14
- def self.config
15
- Config.instance
14
+ def self.config(&block)
15
+ if block_given?
16
+ yield Config.instance
17
+ else
18
+ Config.instance
19
+ end
16
20
  end
17
21
 
18
22
  def self.runner
@@ -7,7 +7,7 @@ describe Cascadence::Commander do
7
7
  describe "#flow" do
8
8
  let(:result) { lolcat.flow File.join(RSpec::FixturePath, "amazon", "madeira_flow.rb") }
9
9
  it "should run the flow stated" do
10
- result.should eq ["initialized123"]
10
+ result.should eq ["zerostate123"]
11
11
  end
12
12
  end
13
13
  end
@@ -126,7 +126,7 @@ describe Cascadence::Commander do
126
126
  end
127
127
 
128
128
  it "should run and give me the correct result" do
129
- task.call.state.should eq "initialized123"
129
+ task.call.state.should eq "zerostate123"
130
130
  end
131
131
  end
132
132
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cascadence
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Chen