symbiont 0.11.0 → 0.12.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.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: symbiont
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Nyman
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-05-07 00:00:00.000000000 Z
11
+ date: 2015-10-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.7'
19
+ version: '1.10'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.7'
26
+ version: '1.10'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -42,16 +42,16 @@ dependencies:
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '3.1'
47
+ version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '3.1'
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: pry
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -66,34 +66,62 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: simplecov
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rubocop
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
69
97
  - !ruby/object:Gem::Dependency
70
98
  name: colorize
71
99
  requirement: !ruby/object:Gem::Requirement
72
100
  requirements:
73
- - - "~>"
101
+ - - ">="
74
102
  - !ruby/object:Gem::Version
75
- version: '0.7'
103
+ version: '0'
76
104
  type: :runtime
77
105
  prerelease: false
78
106
  version_requirements: !ruby/object:Gem::Requirement
79
107
  requirements:
80
- - - "~>"
108
+ - - ">="
81
109
  - !ruby/object:Gem::Version
82
- version: '0.7'
110
+ version: '0'
83
111
  - !ruby/object:Gem::Dependency
84
112
  name: watir-webdriver
85
113
  requirement: !ruby/object:Gem::Requirement
86
114
  requirements:
87
- - - "~>"
115
+ - - ">="
88
116
  - !ruby/object:Gem::Version
89
- version: '0.6'
117
+ version: '0'
90
118
  type: :runtime
91
119
  prerelease: false
92
120
  version_requirements: !ruby/object:Gem::Requirement
93
121
  requirements:
94
- - - "~>"
122
+ - - ">="
95
123
  - !ruby/object:Gem::Version
96
- version: '0.6'
124
+ version: '0'
97
125
  - !ruby/object:Gem::Dependency
98
126
  name: watir-dom-wait
99
127
  requirement: !ruby/object:Gem::Requirement
@@ -152,6 +180,11 @@ extensions: []
152
180
  extra_rdoc_files: []
153
181
  files:
154
182
  - ".gitignore"
183
+ - ".hound.yml"
184
+ - ".rspec"
185
+ - ".rubocop.yml"
186
+ - ".travis.yml"
187
+ - CODE_OF_CONDUCT.md
155
188
  - Gemfile
156
189
  - LICENSE.txt
157
190
  - README.md
@@ -172,14 +205,13 @@ files:
172
205
  - lib/symbiont/service_objects.rb
173
206
  - lib/symbiont/soap_methods.rb
174
207
  - lib/symbiont/version.rb
175
- - lib/symbiont/workflows.rb
176
208
  - symbiont.gemspec
177
209
  homepage: https://github.com/jnyman/symbiont
178
210
  licenses:
179
211
  - MIT
180
212
  metadata: {}
181
213
  post_install_message: "\n(::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)\n\n
182
- \ Symbiont 0.11.0 has been installed.\n\n(::) (::) (::) (::) (::) (::) (::) (::)
214
+ \ Symbiont 0.12.0 has been installed.\n\n(::) (::) (::) (::) (::) (::) (::) (::)
183
215
  (::) (::) (::) (::)\n "
184
216
  rdoc_options: []
185
217
  require_paths:
@@ -194,9 +226,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
194
226
  - - ">="
195
227
  - !ruby/object:Gem::Version
196
228
  version: 1.8.29
197
- requirements: []
229
+ requirements:
230
+ - Watir-WebDriver, Savon
198
231
  rubyforge_project:
199
- rubygems_version: 2.4.5
232
+ rubygems_version: 2.4.5.1
200
233
  signing_key:
201
234
  specification_version: 4
202
235
  summary: An Endosymbiotic Facultative Semantically Clean Fluent Interface Test Framework
@@ -1,88 +0,0 @@
1
- module Symbiont
2
- module WorkflowPaths
3
- def paths
4
- @paths
5
- end
6
-
7
- def paths=(path)
8
- @paths = path
9
- end
10
-
11
- def path_data
12
- @path_data
13
- end
14
-
15
- def path_data=(data)
16
- @path_data = data
17
- end
18
- end
19
-
20
- module Workflow
21
- def self.included(caller)
22
- caller.extend WorkflowPaths
23
- @def_caller = caller
24
- end
25
-
26
- def self.def_caller
27
- @def_caller
28
- end
29
-
30
- # Provides a workflow for a given workflow path, using a specific
31
- # definition that is part of that workflow path.
32
- #
33
- # @param definition [Object] definition object using the workflow
34
- # @param path_name [Hash] the name of the path to be used
35
- # @param block [Proc] a block to be executed as part of the workflow
36
- # @return [Object] the definition being interacted with
37
- def workflow_for(definition, path_name = {:using => :default}, &block)
38
- path_name[:using] = :default unless path_name[:using]
39
- path_workflow = workflow_path_for(path_name)
40
-
41
- workflow_goal = work_item_index_for(path_workflow, definition) - 1
42
-
43
- if workflow_goal == -1
44
- return on(definition, &block)
45
- else
46
- workflow_start = path_name[:from] ? path_workflow.find_index { |item| item[0] == path_name[:from] } : 0
47
- perform_workflow(path_workflow[workflow_start..workflow_goal])
48
- end
49
-
50
- on(definition, &block)
51
- end
52
-
53
- private
54
-
55
- def perform_workflow(definitions)
56
- definitions.each do |definition, action, *args|
57
- active = on(definition)
58
-
59
- raise Symbiont::Errors::WorkflowActionNotFound,
60
- "Workflow action '#{action}' not defined on #{definition}." unless active.respond_to? action
61
-
62
- active.send action unless args
63
- active.send action, *args if args
64
- end
65
- end
66
-
67
- def workflow_path_for(path_name)
68
- # Since I'm dealing with an array that contains a hash that, in turn,
69
- # contains an array of arrays, I need to make sure that I index into
70
- # the array before keying into the hash. That's the purpose of the [0].
71
- path = Workflow.def_caller.paths[path_name[:using]]
72
-
73
- raise Symbiont::Errors::WorkflowPathNotFound,
74
- "Workflow path '#{path_name[:using].to_s}' not found." unless path
75
-
76
- if Workflow.def_caller.path_data
77
- file_to_load = Workflow.def_caller.path_data[path_name[:using]]
78
- DataBuilder.load "#{file_to_load.to_s}.yml" if file_to_load
79
- end
80
-
81
- path
82
- end
83
-
84
- def work_item_index_for(path_workflow, definition)
85
- path_workflow.find_index { |item| item[0] == definition }
86
- end
87
- end
88
- end