sapphire 0.5.3 → 0.5.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (108) hide show
  1. data/lib/sapphire/Adapters/Selenium/RubySeleniumWebDriver.rb +190 -190
  2. data/lib/sapphire/DSL/Browser/ExecuteAgainstControl.rb +34 -45
  3. data/lib/sapphire/DSL/Browser/Extensions/Class.rb +29 -0
  4. data/lib/sapphire/DSL/Browser/Extensions/Hash.rb +11 -0
  5. data/lib/sapphire/DSL/Browser/Extensions/Numeric.rb +7 -0
  6. data/lib/sapphire/DSL/Browser/Extensions/Symbol.rb +37 -0
  7. data/lib/sapphire/DSL/Browser/{By.rb → Fluff/By.rb} +10 -10
  8. data/lib/sapphire/DSL/Browser/{To.rb → Fluff/To.rb} +10 -10
  9. data/lib/sapphire/DSL/Browser/{With.rb → Fluff/With.rb} +10 -10
  10. data/lib/sapphire/DSL/Browser/For.rb +10 -10
  11. data/lib/sapphire/DSL/Browser/{AlertBox.rb → Nouns/AlertBox.rb} +14 -14
  12. data/lib/sapphire/DSL/Browser/{Browser.rb → Nouns/Browser.rb} +17 -17
  13. data/lib/sapphire/DSL/Browser/{Day.rb → Nouns/Day.rb} +24 -24
  14. data/lib/sapphire/DSL/Browser/{Keys → Nouns}/Enter.rb +10 -10
  15. data/lib/sapphire/DSL/Browser/{Month.rb → Nouns/Month.rb} +24 -24
  16. data/lib/sapphire/DSL/Browser/{Popup.rb → Nouns/Popup.rb} +0 -0
  17. data/lib/sapphire/DSL/Browser/Should.rb +42 -42
  18. data/lib/sapphire/DSL/Browser/Tracker.rb +15 -15
  19. data/lib/sapphire/DSL/Browser/{Accept.rb → Verbs/Accept.rb} +9 -9
  20. data/lib/sapphire/DSL/Browser/Verbs/Check.rb +11 -0
  21. data/lib/sapphire/DSL/Browser/{IsHidden.rb → Verbs/Clear.rb} +9 -10
  22. data/lib/sapphire/DSL/Browser/Verbs/Click.rb +11 -0
  23. data/lib/sapphire/DSL/Browser/{Close.rb → Verbs/Close.rb} +11 -12
  24. data/lib/sapphire/DSL/Browser/{Compare.rb → Verbs/Compare.rb} +18 -18
  25. data/lib/sapphire/DSL/Browser/Verbs/Complete.rb +10 -0
  26. data/lib/sapphire/DSL/Browser/{Differ.rb → Verbs/Differ.rb} +18 -18
  27. data/lib/sapphire/DSL/Browser/{Disable.rb → Verbs/Disable.rb} +0 -0
  28. data/lib/sapphire/DSL/Browser/{Error.rb → Verbs/Error.rb} +25 -26
  29. data/lib/sapphire/DSL/Browser/{Exists.rb → Verbs/Exists.rb} +22 -22
  30. data/lib/sapphire/DSL/Browser/{Hide.rb → Verbs/Hide.rb} +25 -26
  31. data/lib/sapphire/DSL/Browser/Verbs/MouseOver.rb +11 -0
  32. data/lib/sapphire/DSL/Browser/{Navigate.rb → Verbs/Navigate.rb} +11 -11
  33. data/lib/sapphire/DSL/Browser/{Press.rb → Verbs/Press.rb} +8 -10
  34. data/lib/sapphire/DSL/Browser/{Reload.rb → Verbs/Reload.rb} +11 -11
  35. data/lib/sapphire/DSL/Browser/Verbs/Set.rb +10 -0
  36. data/lib/sapphire/DSL/Browser/{Show.rb → Verbs/Show.rb} +25 -26
  37. data/lib/sapphire/DSL/Browser/{Start.rb → Verbs/Start.rb} +16 -16
  38. data/lib/sapphire/DSL/Browser/{Switch.rb → Verbs/Switch.rb} +0 -0
  39. data/lib/sapphire/DSL/Browser/{Transition.rb → Verbs/Transition.rb} +25 -26
  40. data/lib/sapphire/DSL/Browser/Verbs/Uncheck.rb +11 -0
  41. data/lib/sapphire/DSL/Browser/{Virtually.rb → Verbs/Virtually.rb} +0 -0
  42. data/lib/sapphire/DSL/Browser/{Wait.rb → Verbs/Wait.rb} +2 -2
  43. data/lib/sapphire/DSL/Configuration/ConfiguredBrowser.rb +12 -12
  44. data/lib/sapphire/DSL/Configuration/ConfiguredUser.rb +10 -10
  45. data/lib/sapphire/DSL/Configuration/Use.rb +15 -15
  46. data/lib/sapphire/DSL/Data/Exist.rb +27 -27
  47. data/lib/sapphire/DSL/Data/Find.rb +10 -10
  48. data/lib/sapphire/DSL/Data/GetPageField.rb +17 -17
  49. data/lib/sapphire/DSL/Data/Underscore.rb +8 -8
  50. data/lib/sapphire/DSL/Data/Validate.rb +26 -26
  51. data/lib/sapphire/DSL/Data/Verify.rb +10 -10
  52. data/lib/sapphire/DSL/Scenarios/Is.rb +9 -9
  53. data/lib/sapphire/DSL/Scenarios/Pending.rb +28 -28
  54. data/lib/sapphire/DSL/Scenarios/and.rb +25 -25
  55. data/lib/sapphire/DSL/Scenarios/background.rb +33 -33
  56. data/lib/sapphire/DSL/Scenarios/dsl.rb +59 -59
  57. data/lib/sapphire/DSL/Scenarios/finally.rb +33 -33
  58. data/lib/sapphire/DSL/Scenarios/given.rb +57 -57
  59. data/lib/sapphire/DSL/Scenarios/runner.rb +40 -40
  60. data/lib/sapphire/DSL/Scenarios/scenario.rb +53 -53
  61. data/lib/sapphire/DSL/Scenarios/then.rb +34 -34
  62. data/lib/sapphire/DSL/Scenarios/when.rb +47 -47
  63. data/lib/sapphire/DSL.rb +10 -6
  64. data/lib/sapphire/Data.rb +1 -1
  65. data/lib/sapphire/DataAbstractions/Database.rb +57 -57
  66. data/lib/sapphire/DataAbstractions/Query.rb +19 -19
  67. data/lib/sapphire/JobAbstractions/Job.rb +32 -32
  68. data/lib/sapphire/Strategies/ClassStrategy.rb +1 -1
  69. data/lib/sapphire/Strategies/Strategy.rb +1 -2
  70. data/lib/sapphire/Strategies.rb +1 -1
  71. data/lib/sapphire/TeamCity.rb +8 -8
  72. data/lib/sapphire/Testing/Executable.rb +30 -30
  73. data/lib/sapphire/Testing/RakeTask.rb +108 -108
  74. data/lib/sapphire/Testing/ResultList.rb +18 -18
  75. data/lib/sapphire/Testing/ResultTree.rb +44 -44
  76. data/lib/sapphire/Testing/ScenarioResult.rb +36 -36
  77. data/lib/sapphire/Testing/TestResult.rb +21 -21
  78. data/lib/sapphire/Testing/TestRunnerAdapter.rb +69 -69
  79. data/lib/sapphire/Testing.rb +2 -2
  80. data/lib/sapphire/Virtualization.rb +7 -7
  81. data/lib/sapphire/Web.rb +2 -2
  82. data/lib/sapphire/WebAbstractions/Browsers/Chrome.rb +21 -21
  83. data/lib/sapphire/WebAbstractions/Browsers/FireFox.rb +22 -22
  84. data/lib/sapphire/WebAbstractions/Browsers/InternetExplorer.rb +21 -21
  85. data/lib/sapphire/WebAbstractions/Controls/Base/Control.rb +58 -59
  86. data/lib/sapphire/WebAbstractions/Controls/Base/Page.rb +61 -62
  87. data/lib/sapphire/WebAbstractions/Controls/Button.rb +7 -9
  88. data/lib/sapphire/WebAbstractions/Controls/CheckBox.rb +28 -28
  89. data/lib/sapphire/WebAbstractions/Controls/Date.rb +11 -11
  90. data/lib/sapphire/WebAbstractions/Controls/DropDown.rb +26 -26
  91. data/lib/sapphire/WebAbstractions/Controls/Hyperlink.rb +8 -8
  92. data/lib/sapphire/WebAbstractions/Controls/Image.rb +9 -9
  93. data/lib/sapphire/WebAbstractions/Controls/Label.rb +8 -8
  94. data/lib/sapphire/WebAbstractions/Controls/RadioButton.rb +18 -18
  95. data/lib/sapphire/WebAbstractions/Controls/TextBox.rb +31 -31
  96. data/lib/sapphire/WebAbstractions/Controls/Title.rb +12 -12
  97. data/lib/sapphire/version.rb +3 -3
  98. data/lib/sapphire.rb +38 -38
  99. metadata +46 -45
  100. data/lib/sapphire/DSL/Browser/Check.rb +0 -12
  101. data/lib/sapphire/DSL/Browser/Clear.rb +0 -13
  102. data/lib/sapphire/DSL/Browser/Click.rb +0 -12
  103. data/lib/sapphire/DSL/Browser/Complete.rb +0 -15
  104. data/lib/sapphire/DSL/Browser/CurrentUrl.rb +0 -11
  105. data/lib/sapphire/DSL/Browser/IsVisible.rb +0 -33
  106. data/lib/sapphire/DSL/Browser/MouseOver.rb +0 -12
  107. data/lib/sapphire/DSL/Browser/Set.rb +0 -18
  108. data/lib/sapphire/DSL/Browser/Uncheck.rb +0 -12
@@ -1,34 +1,34 @@
1
- class Background
2
- include Sapphire::Testing::Executable
3
-
4
- attr_reader :value
5
- attr_reader :text
6
- attr_reader :block
7
- attr_reader :parent
8
- attr_reader :results
9
- attr_reader :and
10
-
11
- def initialize(parent, pre, text, &block)
12
- @block = block
13
- @value = text
14
- @text = pre + text.to_s
15
- @parent = parent
16
- @results = []
17
- @and = []
18
- end
19
-
20
- def AddResult(result)
21
- result.item = self
22
- @results << result
23
- self.parent.result.AddChild(result)
24
- end
25
-
26
- def add_and(pre, text, &block)
27
- if(self.value.is_a? Pending)
28
- self.and << And.new(self, Pending.new(pre + text), &block)
29
- else
30
- self.and << And.new(self, pre + text, &block)
31
- end
32
- end
33
-
1
+ class Background
2
+ include Sapphire::Testing::Executable
3
+
4
+ attr_reader :value
5
+ attr_reader :text
6
+ attr_reader :block
7
+ attr_reader :parent
8
+ attr_reader :results
9
+ attr_reader :and
10
+
11
+ def initialize(parent, pre, text, &block)
12
+ @block = block
13
+ @value = text
14
+ @text = pre + text.to_s
15
+ @parent = parent
16
+ @results = []
17
+ @and = []
18
+ end
19
+
20
+ def AddResult(result)
21
+ result.item = self
22
+ @results << result
23
+ self.parent.result.AddChild(result)
24
+ end
25
+
26
+ def add_and(pre, text, &block)
27
+ if(self.value.is_a? Pending)
28
+ self.and << And.new(self, Pending.new(pre + text), &block)
29
+ else
30
+ self.and << And.new(self, pre + text, &block)
31
+ end
32
+ end
33
+
34
34
  end
@@ -1,59 +1,59 @@
1
- module Sapphire
2
- module DSL
3
- module Scenarios
4
- def Background(text, &block)
5
- Runner.instance.last_scenario.add_background(Background.new(Runner.instance.last_scenario, "Assuming that ", text, &block))
6
- end
7
-
8
- def Given(text, &block)
9
- Runner.instance.last_scenario.add_given(Given.new(Runner.instance.last_scenario, "Given ", text, &block))
10
- end
11
-
12
- def When(text, &block)
13
- Runner.instance.last_scenario.last_given.add_when("When ", text, &block)
14
- end
15
-
16
- def Then(text, &block)
17
- Runner.instance.last_scenario.last_given.last_when.add_then("Then ", text, &block)
18
- end
19
-
20
- def And(text, &block)
21
-
22
- if(Runner.instance.last_scenario.last_given == nil && Runner.instance.last_scenario.last_background != nil)
23
- Runner.instance.last_scenario.last_background.add_and("And ", text, &block)
24
- return
25
- end
26
-
27
- if(Runner.instance.last_scenario.last_given.finally != nil)
28
- Runner.instance.last_scenario.last_given.finally.add_and("And ", text, &block)
29
- return
30
- end
31
-
32
- if(Runner.instance.last_scenario.last_given.last_when == nil)
33
- Runner.instance.last_scenario.last_given.add_and("And ", text, &block)
34
- return
35
- end
36
-
37
- if(Runner.instance.last_scenario.last_given.last_when.last_then == nil)
38
- Runner.instance.last_scenario.last_given.last_when.add_and("And ", text, &block)
39
- return
40
- end
41
-
42
- if (Runner.instance.last_scenario.last_given.last_when.last_then != nil)
43
- Runner.instance.last_scenario.last_given.last_when.last_then.add_and("And ", text, &block)
44
- end
45
- end
46
-
47
- def Finally(text, &block)
48
- Runner.instance.last_scenario.last_given.add_finally(Finally.new(Runner.instance.last_scenario.last_given, text, &block))
49
- end
50
-
51
- def Scenario(text, &block)
52
- Runner.instance.add_scenario(Scenario.new(text, &block))
53
- Runner.instance.last_scenario.block.call
54
- end
55
- end
56
- end
57
- end
58
-
59
-
1
+ module Sapphire
2
+ module DSL
3
+ module Scenarios
4
+ def Background(text, &block)
5
+ Runner.instance.last_scenario.add_background(Background.new(Runner.instance.last_scenario, "Assuming that ", text, &block))
6
+ end
7
+
8
+ def Given(text, &block)
9
+ Runner.instance.last_scenario.add_given(Given.new(Runner.instance.last_scenario, "Given ", text, &block))
10
+ end
11
+
12
+ def When(text, &block)
13
+ Runner.instance.last_scenario.last_given.add_when("When ", text, &block)
14
+ end
15
+
16
+ def Then(text, &block)
17
+ Runner.instance.last_scenario.last_given.last_when.add_then("Then ", text, &block)
18
+ end
19
+
20
+ def And(text, &block)
21
+
22
+ if(Runner.instance.last_scenario.last_given == nil && Runner.instance.last_scenario.last_background != nil)
23
+ Runner.instance.last_scenario.last_background.add_and("And ", text, &block)
24
+ return
25
+ end
26
+
27
+ if(Runner.instance.last_scenario.last_given.finally != nil)
28
+ Runner.instance.last_scenario.last_given.finally.add_and("And ", text, &block)
29
+ return
30
+ end
31
+
32
+ if(Runner.instance.last_scenario.last_given.last_when == nil)
33
+ Runner.instance.last_scenario.last_given.add_and("And ", text, &block)
34
+ return
35
+ end
36
+
37
+ if(Runner.instance.last_scenario.last_given.last_when.last_then == nil)
38
+ Runner.instance.last_scenario.last_given.last_when.add_and("And ", text, &block)
39
+ return
40
+ end
41
+
42
+ if (Runner.instance.last_scenario.last_given.last_when.last_then != nil)
43
+ Runner.instance.last_scenario.last_given.last_when.last_then.add_and("And ", text, &block)
44
+ end
45
+ end
46
+
47
+ def Finally(text, &block)
48
+ Runner.instance.last_scenario.last_given.add_finally(Finally.new(Runner.instance.last_scenario.last_given, text, &block))
49
+ end
50
+
51
+ def Scenario(text, &block)
52
+ Runner.instance.add_scenario(Scenario.new(text, &block))
53
+ Runner.instance.last_scenario.block.call
54
+ end
55
+ end
56
+ end
57
+ end
58
+
59
+
@@ -1,34 +1,34 @@
1
- class Finally
2
- include Sapphire::Testing::Executable
3
-
4
- attr_reader :value
5
- attr_reader :block
6
- attr_reader :text
7
- attr_reader :and
8
- attr_reader :parent
9
- attr_reader :results
10
-
11
- def initialize(parent, text, &block)
12
- @value = text
13
- @text = text.to_s
14
- @block = block
15
- @and = []
16
- @parent = parent
17
- @results = []
18
- end
19
-
20
- def add_and(pre, text, &block)
21
- if(self.value.is_a? Pending)
22
- self.and << And.new(self, Pending.new(pre + text), &block)
23
- else
24
- self.and << And.new(self, pre + text, &block)
25
- end
26
- end
27
-
28
- def AddResult(result)
29
- result.item = self
30
- @results << result
31
- self.parent.AddResult(result)
32
- end
33
-
1
+ class Finally
2
+ include Sapphire::Testing::Executable
3
+
4
+ attr_reader :value
5
+ attr_reader :block
6
+ attr_reader :text
7
+ attr_reader :and
8
+ attr_reader :parent
9
+ attr_reader :results
10
+
11
+ def initialize(parent, text, &block)
12
+ @value = text
13
+ @text = text.to_s
14
+ @block = block
15
+ @and = []
16
+ @parent = parent
17
+ @results = []
18
+ end
19
+
20
+ def add_and(pre, text, &block)
21
+ if(self.value.is_a? Pending)
22
+ self.and << And.new(self, Pending.new(pre + text), &block)
23
+ else
24
+ self.and << And.new(self, pre + text, &block)
25
+ end
26
+ end
27
+
28
+ def AddResult(result)
29
+ result.item = self
30
+ @results << result
31
+ self.parent.AddResult(result)
32
+ end
33
+
34
34
  end
@@ -1,58 +1,58 @@
1
- class Given
2
- include Sapphire::Testing::Executable
3
-
4
- attr_reader :value
5
- attr_reader :text
6
- attr_reader :block
7
- attr_reader :finally
8
- attr_reader :when
9
- attr_reader :and
10
- attr_reader :parent
11
- attr_reader :results
12
-
13
- def initialize(parent, pre, text, &block)
14
- @value = text
15
- @text = pre + text.to_s
16
- @block = block
17
- @when = []
18
- @and = []
19
- @parent = parent
20
- @results = []
21
- end
22
-
23
- def add_when(pre, text, &block)
24
- if(self.value.is_a? Pending)
25
- @when << When.new(self, pre, Pending.new(text), &block)
26
- else
27
- x = When.new(self, pre, text, &block)
28
- @when << x
29
- end
30
- end
31
-
32
- def last_when()
33
- @when.last
34
- end
35
-
36
- def add_finally(finally)
37
- if(self.value.is_a? Pending)
38
- @finally = Finally.new(self, Pending.new(finally.text), &block)
39
- else
40
- @finally = finally
41
- end
42
- end
43
-
44
- def add_and(pre, text, &block)
45
- if(self.value.is_a? Pending)
46
- self.and << And.new(self, Pending.new(pre + text), &block)
47
- else
48
- self.and << And.new(self, pre + text, &block)
49
- end
50
- end
51
-
52
- def AddResult(result)
53
- result.item = self
54
- @results << result
55
- self.parent.result.AddChild(result)
56
- end
57
-
1
+ class Given
2
+ include Sapphire::Testing::Executable
3
+
4
+ attr_reader :value
5
+ attr_reader :text
6
+ attr_reader :block
7
+ attr_reader :finally
8
+ attr_reader :when
9
+ attr_reader :and
10
+ attr_reader :parent
11
+ attr_reader :results
12
+
13
+ def initialize(parent, pre, text, &block)
14
+ @value = text
15
+ @text = pre + text.to_s
16
+ @block = block
17
+ @when = []
18
+ @and = []
19
+ @parent = parent
20
+ @results = []
21
+ end
22
+
23
+ def add_when(pre, text, &block)
24
+ if(self.value.is_a? Pending)
25
+ @when << When.new(self, pre, Pending.new(text), &block)
26
+ else
27
+ x = When.new(self, pre, text, &block)
28
+ @when << x
29
+ end
30
+ end
31
+
32
+ def last_when()
33
+ @when.last
34
+ end
35
+
36
+ def add_finally(finally)
37
+ if(self.value.is_a? Pending)
38
+ @finally = Finally.new(self, Pending.new(finally.text), &block)
39
+ else
40
+ @finally = finally
41
+ end
42
+ end
43
+
44
+ def add_and(pre, text, &block)
45
+ if(self.value.is_a? Pending)
46
+ self.and << And.new(self, Pending.new(pre + text), &block)
47
+ else
48
+ self.and << And.new(self, pre + text, &block)
49
+ end
50
+ end
51
+
52
+ def AddResult(result)
53
+ result.item = self
54
+ @results << result
55
+ self.parent.result.AddChild(result)
56
+ end
57
+
58
58
  end
@@ -1,40 +1,40 @@
1
- module Sapphire
2
- module DSL
3
- module Scenarios
4
- class Runner
5
- attr_accessor :scenarios
6
- attr_accessor :test_plans
7
-
8
- def self.create
9
- @@instance ||= Runner.new
10
- end
11
-
12
- def self.instance
13
- @@instance ||= self.create
14
- end
15
-
16
- def initialize
17
- @scenarios = []
18
- @test_plans = []
19
- end
20
-
21
- def add_scenario(scenario)
22
- @scenarios << scenario
23
- end
24
-
25
- def last_scenario
26
- @scenarios.last
27
- end
28
-
29
- def add_test_plan(test_plan)
30
- @test_plans << test_plan
31
- end
32
-
33
- def last_test_plan
34
- @test_plans.last
35
- end
36
- end
37
- end
38
- end
39
- end
40
-
1
+ module Sapphire
2
+ module DSL
3
+ module Scenarios
4
+ class Runner
5
+ attr_accessor :scenarios
6
+ attr_accessor :test_plans
7
+
8
+ def self.create
9
+ @@instance ||= Runner.new
10
+ end
11
+
12
+ def self.instance
13
+ @@instance ||= self.create
14
+ end
15
+
16
+ def initialize
17
+ @scenarios = []
18
+ @test_plans = []
19
+ end
20
+
21
+ def add_scenario(scenario)
22
+ @scenarios << scenario
23
+ end
24
+
25
+ def last_scenario
26
+ @scenarios.last
27
+ end
28
+
29
+ def add_test_plan(test_plan)
30
+ @test_plans << test_plan
31
+ end
32
+
33
+ def last_test_plan
34
+ @test_plans.last
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
40
+
@@ -1,53 +1,53 @@
1
- module Sapphire
2
- module DSL
3
- module Scenarios
4
- class Scenario
5
- include Sapphire::Testing::TestRunnerAdapter
6
-
7
- attr_reader :block
8
- attr_reader :value
9
- attr_reader :text
10
- attr_reader :givens
11
- attr_reader :backgrounds
12
- attr_reader :result
13
- attr_accessor :file_name
14
-
15
- def initialize(text, &block)
16
- @value = text
17
- @text = text.to_s
18
- @block = block
19
- @givens = []
20
- @backgrounds = []
21
- @result = Testing::ScenarioResult.new(text)
22
- @file_name = ""
23
- end
24
-
25
- def add_given(given)
26
- if(self.value.is_a? Pending)
27
- @givens << Given.new(self, "", Pending.new(given.text), &block)
28
- else
29
- @givens << given
30
- end
31
- end
32
-
33
- def last_given
34
- @givens.last
35
- end
36
-
37
- def add_background(background)
38
- if(self.value.is_a? Pending)
39
- @backgrounds << Background.new(self, "", Pending.new(background.text), &block)
40
- else
41
- @backgrounds << background
42
- end
43
- end
44
-
45
- def last_background
46
- @backgrounds.last
47
- end
48
-
49
- end
50
- end
51
- end
52
- end
53
-
1
+ module Sapphire
2
+ module DSL
3
+ module Scenarios
4
+ class Scenario
5
+ include Sapphire::Testing::TestRunnerAdapter
6
+
7
+ attr_reader :block
8
+ attr_reader :value
9
+ attr_reader :text
10
+ attr_reader :givens
11
+ attr_reader :backgrounds
12
+ attr_reader :result
13
+ attr_accessor :file_name
14
+
15
+ def initialize(text, &block)
16
+ @value = text
17
+ @text = text.to_s
18
+ @block = block
19
+ @givens = []
20
+ @backgrounds = []
21
+ @result = Testing::ScenarioResult.new(text)
22
+ @file_name = ""
23
+ end
24
+
25
+ def add_given(given)
26
+ if(self.value.is_a? Pending)
27
+ @givens << Given.new(self, "", Pending.new(given.text), &block)
28
+ else
29
+ @givens << given
30
+ end
31
+ end
32
+
33
+ def last_given
34
+ @givens.last
35
+ end
36
+
37
+ def add_background(background)
38
+ if(self.value.is_a? Pending)
39
+ @backgrounds << Background.new(self, "", Pending.new(background.text), &block)
40
+ else
41
+ @backgrounds << background
42
+ end
43
+ end
44
+
45
+ def last_background
46
+ @backgrounds.last
47
+ end
48
+
49
+ end
50
+ end
51
+ end
52
+ end
53
+
@@ -1,35 +1,35 @@
1
- class Then
2
- include Sapphire::Testing::Executable
3
-
4
- attr_reader :value
5
- attr_accessor :text
6
- attr_reader :block
7
- attr_reader :and
8
- attr_reader :parent
9
- attr_reader :results
10
-
11
- def initialize(parent, pre, text, &block)
12
- @block = block
13
- @value = text
14
- @text = pre + text.to_s
15
- @and = []
16
- @parent = parent
17
- @results = []
18
- end
19
-
20
- def add_and(pre, text, &block)
21
- if(!self.value.instance_of? Pending)
22
- x = And.new(self, text, &block)
23
- self.and << x
24
- else
25
- self.and << And.new(self, Pending.new(pre + text), &block)
26
- end
27
- end
28
-
29
- def AddResult(result)
30
- result.item = self
31
- @results << result
32
- self.parent.results.last.AddChild(result)
33
- end
34
-
1
+ class Then
2
+ include Sapphire::Testing::Executable
3
+
4
+ attr_reader :value
5
+ attr_accessor :text
6
+ attr_reader :block
7
+ attr_reader :and
8
+ attr_reader :parent
9
+ attr_reader :results
10
+
11
+ def initialize(parent, pre, text, &block)
12
+ @block = block
13
+ @value = text
14
+ @text = pre + text.to_s
15
+ @and = []
16
+ @parent = parent
17
+ @results = []
18
+ end
19
+
20
+ def add_and(pre, text, &block)
21
+ if(!self.value.instance_of? Pending)
22
+ x = And.new(self, text, &block)
23
+ self.and << x
24
+ else
25
+ self.and << And.new(self, Pending.new(pre + text), &block)
26
+ end
27
+ end
28
+
29
+ def AddResult(result)
30
+ result.item = self
31
+ @results << result
32
+ self.parent.results.last.AddChild(result)
33
+ end
34
+
35
35
  end