meeane-page-object 0.1.8 → 0.1.10

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -1,141 +1,141 @@
1
- # meeane-page-object
2
-
3
- A simple fork of Jeff Morgan's page-object gem that assists in creating flexible page objects for testing Columbus Direct websites. The goal is to facilitate creating abstraction layers in your tests to decouple the tests from the items they are testing and to provide a simple interface to the elements on a page. It works with both watir-webdriver and selenium-webdriver.
4
-
5
- The main additions over the original page-object gem are to extend the accessors to find and interact with the particular style of radio buttons used on the Columbus Direct websites. Also, I have extended the _populate_page_with_ method to work with these page element and wait for any AJAX requests these initiate. They work in the same way as the normal radio buttons but rather than using _select_ we use _choose_.
6
-
7
- ## Additional Methods Added
8
-
9
- You can declare these label elements using:
10
-
11
- ````ruby
12
- label(:has_legal_expenses_cover_yes, :for => 'HasLegalExpensesCover_Yes')
13
- ````
14
-
15
- This will add a _choose_ method in addition to the usual methods PageObjects creates for labels which allow you to select the element as you would a normal radio button. Call this using:
16
-
17
- ````ruby
18
- choose_has_legal_expenses_cover_yes
19
- ````
20
-
21
- The _populate_page_with method will pick these elements in exactly the same way as normal radio buttons. This means you can complete each page in the normal way using _populate_page_with_ without having to write any extra code.
22
-
23
- ````ruby
24
- populate_page_with = data_for(:my_details, data)
25
- ````
26
-
27
- #### Additional Setup
28
- Many of the labels on the Columbus Direct websites (including Household & Travel) initiate an AJAX call using jQuery so the _choose_ methods generated call _wait_for_ajax_ to check the page has been updated before moving on. For this to work you need to declare the javascript library your website is using. Add the following to your env.rb file for the Columbus Direct websites:
29
-
30
- ````ruby
31
- PageObject.javascript_framework = :jquery
32
- ````
33
-
34
- ## Improvements
35
-
36
- Suggested improvements would be to add a facility to interact with the address widgets on the Columbus Direct pages. I'll look to add these at a later date but will use a different approach rather than forking the master as page-object gem already has an extension point that allows us to define our own Element types and register them with the gem. This would seem a better approach.
37
-
38
- ## Documentation
39
-
40
- The project [wiki](https://github.com/cheezy/page-object/wiki/page-object) is the first place to go to learn about how to use page-object.
41
-
42
- The rdocs for this project can be found at [rubydoc.info](http://rubydoc.info/gems/page-object/frames).
43
-
44
- To see the changes from release to release please look at the [ChangeLog](https://raw.github.com/cheezy/page-object/master/ChangeLog)
45
-
46
- To read about the motivation for this gem please read this [blog entry](http://www.cheezyworld.com/2010/11/19/ui-tests-introducing-a-simple-dsl/)
47
-
48
- There is a book that describes in detail how to use this gem and others to create a complete view of testing web and other types of applications. The book is named [Cucumber & Cheese](http://leanpub.com/cucumber_and_cheese)
49
-
50
- ## Support
51
-
52
- If you need help using the page-object gem please ask your questions on [Stack Overflow](http://stackoverflow.com). Please be sure to use the [page-object-gem](http://stackoverflow.com/questions/tagged/page-object-gem) tag. If you wish to report an issue or request a new feature use the [github issue tracking page](http://github.com/cheezy/page-object/issues).
53
-
54
- ## Basic Usage
55
-
56
- ### Defining your page object
57
-
58
- You define a new page object by including the PageObject module:
59
-
60
- ````ruby
61
- class LoginPage
62
- include PageObject
63
- end
64
- ````
65
-
66
- When you include this module numerous methods are added to your class that allow you to easily define your page. For the login page you might add the following:
67
-
68
- ````ruby
69
- class LoginPage
70
- include PageObject
71
-
72
- _(:username, :id => 'username')
73
- text_field(:password, :id => 'password')
74
- button(:login, :id => 'login')
75
- end
76
- ````
77
-
78
- Calling the _text_field_ and _button_ methods adds several methods to our page object that allow us to interact with the items on the page. To login using this page we could simply write the following code:
79
-
80
- ````ruby
81
- login_page.username = 'cheezy'
82
- login_page.password = 'secret'
83
- login_page.login
84
- ````
85
-
86
- Another approach might be to create higher level methods on our page object that hide the implementation details even further. Our page object might look like this:
87
-
88
- ````ruby
89
- class LoginPage
90
- include PageObject
91
-
92
- text_field(:username, :id => 'username')
93
- text_field(:password, :id => 'password')
94
- button(:login, :id => 'login')
95
-
96
- def login_with(username, password)
97
- self.username = username
98
- self.password = password
99
- login
100
- end
101
- end
102
- ````
103
-
104
- and your usage of the page would become:
105
-
106
- ````ruby
107
- login_page.login_with 'cheezy', 'secret'
108
- ````
109
-
110
- ### Creating your page object
111
- page-object supports both [watir-webdriver](https://github.com/jarib/watir-webdriver) and [selenium-webdriver](http://seleniumhq.org/docs/03_webdriver.html). The one used will be determined by which driver you pass into the constructor of your page object. The page object can be created like this:
112
-
113
- ````ruby
114
- browser = Watir::Browser.new :firefox
115
- my_page_object = MyPageObject.new(browser)
116
- ````
117
-
118
- or
119
-
120
- ````ruby
121
- browser = Selenium::WebDriver.for :firefox
122
- my_page_object = MyPageObject.new(browser)
123
- ````
124
-
125
- ## Known Issues
126
-
127
- See [http://github.com/cheezy/page-object/issues](http://github.com/cheezy/page-object/issues)
128
-
129
- ## Contribute
130
-
131
- * Fork the project.
132
- * Test drive your feature addition or bug fix. Adding specs is important and I will not accept a pull request that does not have tests.
133
- * Make sure you describe your new feature with a cucumber scenario.
134
- * Make sure you provide RDoc comments for any new public method you add. Remember, others will be using this gem.
135
- * Commit, do not mess with Rakefile, version, or ChangeLog.
136
- (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
137
- * Send me a pull request. Bonus points for topic branches.
138
-
139
- ## Copyright
140
-
141
- Copyright (c) 2011-2012 Jeffrey S. Morgan. See LICENSE for details.
1
+ # meeane-page-object
2
+
3
+ A simple fork of Jeff Morgan's page-object gem that assists in creating flexible page objects for testing Columbus Direct websites. The goal is to facilitate creating abstraction layers in your tests to decouple the tests from the items they are testing and to provide a simple interface to the elements on a page. It works with both watir-webdriver and selenium-webdriver.
4
+
5
+ The main additions over the original page-object gem are to extend the accessors to find and interact with the particular style of radio buttons used on the Columbus Direct websites. Also, I have extended the _populate_page_with_ method to work with these page element and wait for any AJAX requests these initiate. They work in the same way as the normal radio buttons but rather than using _select_ we use _choose_.
6
+
7
+ ## Additional Methods Added
8
+
9
+ You can declare these _label_ elements using:
10
+
11
+ ````ruby
12
+ label(:has_legal_expenses_cover_yes, :for => 'HasLegalExpensesCover_Yes')
13
+ ````
14
+
15
+ This will add a _choose_ method in addition to the usual methods PageObjects creates for labels which allow you to select the element as you would a normal radio button. Call this using:
16
+
17
+ ````ruby
18
+ choose_has_legal_expenses_cover_yes
19
+ ````
20
+
21
+ The _populate_page_with_ method will pick these elements in exactly the same way as normal radio buttons. This means you can complete each page in the normal way using _populate_page_with_ without having to write any extra code.
22
+
23
+ ````ruby
24
+ populate_page_with = data_for(:my_details, data)
25
+ ````
26
+
27
+ #### Additional Setup
28
+ Many of the labels on the Columbus Direct websites (including Household & Travel) initiate an AJAX call using jQuery so the _choose_ methods generated call _wait_for_ajax_ to check the page has been updated before moving on. For this to work you need to declare the javascript library your website is using. Add the following to your env.rb file for the Columbus Direct websites:
29
+
30
+ ````ruby
31
+ PageObject.javascript_framework = :jquery
32
+ ````
33
+
34
+ ## Improvements
35
+
36
+ Suggested improvements would be to add a facility to interact with the address widgets on the Columbus Direct pages. I'll look to add these at a later date but will use a different approach rather than forking the master as page-object gem already has an extension point that allows us to define our own Element types and register them with the gem. This would seem a better approach.
37
+
38
+ ## Documentation
39
+
40
+ The project [wiki](https://github.com/cheezy/page-object/wiki/page-object) is the first place to go to learn about how to use page-object.
41
+
42
+ The rdocs for this project can be found at [rubydoc.info](http://rubydoc.info/gems/page-object/frames).
43
+
44
+ To see the changes from release to release please look at the [ChangeLog](https://raw.github.com/cheezy/page-object/master/ChangeLog)
45
+
46
+ To read about the motivation for this gem please read this [blog entry](http://www.cheezyworld.com/2010/11/19/ui-tests-introducing-a-simple-dsl/)
47
+
48
+ There is a book that describes in detail how to use this gem and others to create a complete view of testing web and other types of applications. The book is named [Cucumber & Cheese](http://leanpub.com/cucumber_and_cheese)
49
+
50
+ ## Support
51
+
52
+ If you need help using the page-object gem please ask your questions on [Stack Overflow](http://stackoverflow.com). Please be sure to use the [page-object-gem](http://stackoverflow.com/questions/tagged/page-object-gem) tag. If you wish to report an issue or request a new feature use the [github issue tracking page](http://github.com/cheezy/page-object/issues).
53
+
54
+ ## Basic Usage
55
+
56
+ ### Defining your page object
57
+
58
+ You define a new page object by including the PageObject module:
59
+
60
+ ````ruby
61
+ class LoginPage
62
+ include PageObject
63
+ end
64
+ ````
65
+
66
+ When you include this module numerous methods are added to your class that allow you to easily define your page. For the login page you might add the following:
67
+
68
+ ````ruby
69
+ class LoginPage
70
+ include PageObject
71
+
72
+ _(:username, :id => 'username')
73
+ text_field(:password, :id => 'password')
74
+ button(:login, :id => 'login')
75
+ end
76
+ ````
77
+
78
+ Calling the _text_field_ and _button_ methods adds several methods to our page object that allow us to interact with the items on the page. To login using this page we could simply write the following code:
79
+
80
+ ````ruby
81
+ login_page.username = 'cheezy'
82
+ login_page.password = 'secret'
83
+ login_page.login
84
+ ````
85
+
86
+ Another approach might be to create higher level methods on our page object that hide the implementation details even further. Our page object might look like this:
87
+
88
+ ````ruby
89
+ class LoginPage
90
+ include PageObject
91
+
92
+ text_field(:username, :id => 'username')
93
+ text_field(:password, :id => 'password')
94
+ button(:login, :id => 'login')
95
+
96
+ def login_with(username, password)
97
+ self.username = username
98
+ self.password = password
99
+ login
100
+ end
101
+ end
102
+ ````
103
+
104
+ and your usage of the page would become:
105
+
106
+ ````ruby
107
+ login_page.login_with 'cheezy', 'secret'
108
+ ````
109
+
110
+ ### Creating your page object
111
+ page-object supports both [watir-webdriver](https://github.com/jarib/watir-webdriver) and [selenium-webdriver](http://seleniumhq.org/docs/03_webdriver.html). The one used will be determined by which driver you pass into the constructor of your page object. The page object can be created like this:
112
+
113
+ ````ruby
114
+ browser = Watir::Browser.new :firefox
115
+ my_page_object = MyPageObject.new(browser)
116
+ ````
117
+
118
+ or
119
+
120
+ ````ruby
121
+ browser = Selenium::WebDriver.for :firefox
122
+ my_page_object = MyPageObject.new(browser)
123
+ ````
124
+
125
+ ## Known Issues
126
+
127
+ See [http://github.com/cheezy/page-object/issues](http://github.com/cheezy/page-object/issues)
128
+
129
+ ## Contribute
130
+
131
+ * Fork the project.
132
+ * Test drive your feature addition or bug fix. Adding specs is important and I will not accept a pull request that does not have tests.
133
+ * Make sure you describe your new feature with a cucumber scenario.
134
+ * Make sure you provide RDoc comments for any new public method you add. Remember, others will be using this gem.
135
+ * Commit, do not mess with Rakefile, version, or ChangeLog.
136
+ (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
137
+ * Send me a pull request. Bonus points for topic branches.
138
+
139
+ ## Copyright
140
+
141
+ Copyright (c) 2011-2012 Jeffrey S. Morgan. See LICENSE for details.
@@ -200,6 +200,26 @@
200
200
  <img src="images/img_pulpit.jpg" alt="The Pulpit Rock" width="304" height="228">
201
201
  </figure>
202
202
 
203
+ <hr/>
204
+ <p>Collinson Style Radio Buttons</p>
205
+
206
+ <span class="form">
207
+
208
+ <input id="groupType_IND" value="IND" name="groupType" required="required" checked="checked" type="radio">
209
+ <label for="groupType_IND"><span>Individual</span></label>
210
+
211
+ <input id="groupType_CPL" value="CPL" name="groupType" required="required" type="radio">
212
+ <label for="groupType_CPL"><span>Couple</span></label>
213
+
214
+ <input id="groupType_FAM" value="FAM" name="groupType" required="required" type="radio">
215
+ <label for="groupType_FAM"><span>Family</span></label>
216
+
217
+ <input id="groupType_GRP" value="GRP" name="groupType" required="required" type="radio">
218
+ <label for="groupType_GRP"><span>Group</span></label>
219
+
220
+ </span>
221
+
222
+
203
223
  </body>
204
224
  </html>
205
225
 
@@ -0,0 +1,58 @@
1
+ Feature: Collinson Radio Buttons
2
+ In order to interact with radio buttons on the Collinson websites
3
+ Testers will need access and interrogation ability
4
+
5
+
6
+ Background:
7
+ Given I am on the static elements page
8
+
9
+ Scenario: Selecting and clearing a collinson radio button
10
+ When I select the "Individual" collinson radio button
11
+ # Then the "Individual" collinson radio button should be selected
12
+ # When I select the "Couple" collinson radio button
13
+ # Then the "Couple" collinson radio button should be selected
14
+
15
+ Scenario Outline: Locating collinson radio buttons on the Page
16
+ When I search for the collinson radio button by "<search_by>"
17
+ And I select the collinson radio button
18
+ Then the "Individual" collinson radio button should be selected
19
+
20
+ Scenarios:
21
+ | search_by |
22
+ | id |
23
+ | class |
24
+ | name |
25
+ | xpath |
26
+ | value |
27
+ | index |
28
+ | label |
29
+
30
+ @selenium_only
31
+ Scenario Outline: Locating collinson radio buttons on the Page
32
+ When I search for the collinson radio button by "<search_by>"
33
+ And I select the collinson radio button
34
+ Then the "Individual" collinson radio button should be selected
35
+
36
+ Scenarios:
37
+ | search_by |
38
+ | css |
39
+
40
+ Scenario Outline: Locating collinson radio buttons using multiple parameters
41
+ When I search for the collinson radio button by "<param1>" and "<param2>"
42
+ And I select the collinson radio button
43
+ Then the "Individual" collinson radio button should be selected
44
+
45
+ Scenarios:
46
+ | param1 | param2 |
47
+ | class | index |
48
+ | name | index |
49
+
50
+ Scenario: Retrieve a collinson radio button
51
+ When I retrieve a collinson radio button
52
+ Then I should know it exists
53
+ And I should know it is visible
54
+
55
+ Scenario: Finding a collinson radio button dynamically
56
+ When I select the collinson radio button while the script is executing
57
+ Then I should see that the collinson radio button exists
58
+ And the "Milk" collinson radio button should be selected
@@ -0,0 +1,47 @@
1
+ When /^I select the "([^\"]*)" collinson radio button$/ do |how|
2
+ @page.send "select_#{how.downcase}_id".to_sym
3
+ end
4
+
5
+ When /^I select the "([^\"]*)" collinson collinson radio button$/ do |how|
6
+ @page.send "choose_#{how.downcase}_id".to_sym
7
+ end
8
+
9
+ Then /^the "([^\"]*)" collinson radio button should be selected$/ do |how|
10
+ @page.send "#{how.downcase}_id_selected?".to_sym
11
+ end
12
+
13
+ Then /^the "([^\"]*)" collinson collinson radio button should be selected$/ do |how|
14
+ @page.send "#{how.downcase}_id_selected?".to_sym
15
+ end
16
+
17
+ When /^I search for the collinson radio button by "([^\"]*)"$/ do |how|
18
+ @how = how
19
+ end
20
+
21
+ When /^I search for the collinson radio button by "([^\"]*)"$/ do |how|
22
+ @how = how
23
+ end
24
+
25
+ When /^I search for the collinson radio button by "([^"]*)" and "([^"]*)"$/ do |param1, param2|
26
+ @how = "#{param1}_#{param2}"
27
+ end
28
+
29
+ When /^I search for the collinson radio button by "([^"]*)" and "([^"]*)"$/ do |param1, param2|
30
+ @how = "#{param1}_#{param2}"
31
+ end
32
+
33
+ When /^I select the collinson radio button$/ do
34
+ @page.send "select_milk_#{@how}".to_sym
35
+ end
36
+
37
+ When /^I select the collinson radio button$/ do
38
+ @page.send "select_milk_#{@how}".to_sym
39
+ end
40
+
41
+ When /^I select the collinson radio button while the script is executing$/ do
42
+ @page.collinson radio_button_element(:id => 'milk_id').select
43
+ end
44
+
45
+ Then /^I should see that the collinson radio button exists$/ do
46
+ @page.milk_id?.should == true
47
+ end
@@ -2,22 +2,42 @@ When /^I select the "([^\"]*)" radio button$/ do |how|
2
2
  @page.send "select_#{how.downcase}_id".to_sym
3
3
  end
4
4
 
5
+ When /^I select the "([^\"]*)" collinson radio button$/ do |how|
6
+ @page.send "choose_#{how.downcase}_id".to_sym
7
+ end
8
+
5
9
  Then /^the "([^\"]*)" radio button should be selected$/ do |how|
6
10
  @page.send "#{how.downcase}_id_selected?".to_sym
7
11
  end
8
12
 
13
+ Then /^the "([^\"]*)" collinson radio button should be selected$/ do |how|
14
+ @page.send "#{how.downcase}_id_selected?".to_sym
15
+ end
16
+
9
17
  When /^I search for the radio button by "([^\"]*)"$/ do |how|
10
18
  @how = how
11
19
  end
12
20
 
21
+ When /^I search for the collinson radio button by "([^\"]*)"$/ do |how|
22
+ @how = how
23
+ end
24
+
13
25
  When /^I search for the radio button by "([^"]*)" and "([^"]*)"$/ do |param1, param2|
14
26
  @how = "#{param1}_#{param2}"
15
27
  end
16
28
 
29
+ When /^I search for the collinson radio button by "([^"]*)" and "([^"]*)"$/ do |param1, param2|
30
+ @how = "#{param1}_#{param2}"
31
+ end
32
+
17
33
  When /^I select the radio button$/ do
18
34
  @page.send "select_milk_#{@how}".to_sym
19
35
  end
20
36
 
37
+ When /^I select the collinson radio button$/ do
38
+ @page.send "select_milk_#{@how}".to_sym
39
+ end
40
+
21
41
  When /^I select the radio button while the script is executing$/ do
22
42
  @page.radio_button_element(:id => 'milk_id').select
23
43
  end
@@ -7,6 +7,7 @@ module PageObject
7
7
  # choose the label
8
8
  #
9
9
  def choose
10
+ sleep 0.5
10
11
  element.click
11
12
  wait_for_ajax
12
13
  end
@@ -7,6 +7,7 @@ module PageObject
7
7
  # choose the label
8
8
  #
9
9
  def choose
10
+ sleep 0.5
10
11
  element.click
11
12
  wait_for_ajax
12
13
  end
@@ -1,4 +1,4 @@
1
1
  module PageObject
2
2
  # @private
3
- VERSION = "0.1.8"
3
+ VERSION = "0.1.10"
4
4
  end
metadata CHANGED
@@ -1,111 +1,126 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: meeane-page-object
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.10
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Jeff Morgan/Steven Hobbs
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2014-09-30 00:00:00.000000000 Z
12
+ date: 2014-10-06 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: watir-webdriver
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
- - - ">="
19
+ - - ! '>='
18
20
  - !ruby/object:Gem::Version
19
21
  version: 0.6.9
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
- - - ">="
27
+ - - ! '>='
25
28
  - !ruby/object:Gem::Version
26
29
  version: 0.6.9
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: selenium-webdriver
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
- - - ">="
35
+ - - ! '>='
32
36
  - !ruby/object:Gem::Version
33
37
  version: 2.42.0
34
38
  type: :runtime
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
- - - ">="
43
+ - - ! '>='
39
44
  - !ruby/object:Gem::Version
40
45
  version: 2.42.0
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: page_navigation
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
- - - ">="
51
+ - - ! '>='
46
52
  - !ruby/object:Gem::Version
47
53
  version: '0.9'
48
54
  type: :runtime
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
- - - ">="
59
+ - - ! '>='
53
60
  - !ruby/object:Gem::Version
54
61
  version: '0.9'
55
62
  - !ruby/object:Gem::Dependency
56
63
  name: rspec
57
64
  requirement: !ruby/object:Gem::Requirement
65
+ none: false
58
66
  requirements:
59
- - - "<"
67
+ - - <
60
68
  - !ruby/object:Gem::Version
61
69
  version: '3.0'
62
70
  type: :development
63
71
  prerelease: false
64
72
  version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
65
74
  requirements:
66
- - - "<"
75
+ - - <
67
76
  - !ruby/object:Gem::Version
68
77
  version: '3.0'
69
78
  - !ruby/object:Gem::Dependency
70
79
  name: cucumber
71
80
  requirement: !ruby/object:Gem::Requirement
81
+ none: false
72
82
  requirements:
73
- - - ">="
83
+ - - ! '>='
74
84
  - !ruby/object:Gem::Version
75
85
  version: 1.3.0
76
86
  type: :development
77
87
  prerelease: false
78
88
  version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
79
90
  requirements:
80
- - - ">="
91
+ - - ! '>='
81
92
  - !ruby/object:Gem::Version
82
93
  version: 1.3.0
83
94
  - !ruby/object:Gem::Dependency
84
95
  name: yard
85
96
  requirement: !ruby/object:Gem::Requirement
97
+ none: false
86
98
  requirements:
87
- - - ">="
99
+ - - ! '>='
88
100
  - !ruby/object:Gem::Version
89
101
  version: 0.7.2
90
102
  type: :development
91
103
  prerelease: false
92
104
  version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
93
106
  requirements:
94
- - - ">="
107
+ - - ! '>='
95
108
  - !ruby/object:Gem::Version
96
109
  version: 0.7.2
97
110
  - !ruby/object:Gem::Dependency
98
111
  name: rack
99
112
  requirement: !ruby/object:Gem::Requirement
113
+ none: false
100
114
  requirements:
101
- - - ">="
115
+ - - ! '>='
102
116
  - !ruby/object:Gem::Version
103
117
  version: '1.0'
104
118
  type: :development
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
107
122
  requirements:
108
- - - ">="
123
+ - - ! '>='
109
124
  - !ruby/object:Gem::Version
110
125
  version: '1.0'
111
126
  description: Page Object DSL that works with both Watir and Selenium
@@ -115,11 +130,11 @@ executables: []
115
130
  extensions: []
116
131
  extra_rdoc_files: []
117
132
  files:
118
- - ".gitignore"
119
- - ".rspec"
120
- - ".ruby-gemset"
121
- - ".ruby-version"
122
- - ".travis.yml"
133
+ - .gitignore
134
+ - .rspec
135
+ - .ruby-gemset
136
+ - .ruby-version
137
+ - .travis.yml
123
138
  - ChangeLog
124
139
  - Gemfile
125
140
  - Guardfile
@@ -186,6 +201,7 @@ files:
186
201
  - features/page_level_actions.feature
187
202
  - features/paragraph.feature
188
203
  - features/radio_button.feature
204
+ - features/radio_button_collinson.feature
189
205
  - features/radio_button_group.feature
190
206
  - features/sample-app/public/jquery-1.3.2.js
191
207
  - features/sample-app/public/jquery.html
@@ -223,6 +239,7 @@ files:
223
239
  - features/step_definitions/page_level_actions_steps.rb
224
240
  - features/step_definitions/page_traversal_steps.rb
225
241
  - features/step_definitions/paragraph_steps.rb
242
+ - features/step_definitions/radio_button_collinson_steps.rb
226
243
  - features/step_definitions/radio_button_group_steps.rb
227
244
  - features/step_definitions/radio_button_steps.rb
228
245
  - features/step_definitions/select_list_steps.rb
@@ -378,27 +395,27 @@ files:
378
395
  homepage: https://github.com/hobbs90/page-object
379
396
  licenses:
380
397
  - MIT
381
- metadata: {}
382
398
  post_install_message:
383
399
  rdoc_options: []
384
400
  require_paths:
385
401
  - lib
386
402
  required_ruby_version: !ruby/object:Gem::Requirement
403
+ none: false
387
404
  requirements:
388
- - - ">="
405
+ - - ! '>='
389
406
  - !ruby/object:Gem::Version
390
407
  version: '0'
391
408
  required_rubygems_version: !ruby/object:Gem::Requirement
409
+ none: false
392
410
  requirements:
393
- - - ">="
411
+ - - ! '>='
394
412
  - !ruby/object:Gem::Version
395
413
  version: '0'
396
414
  requirements: []
397
415
  rubyforge_project: meeane-page-object
398
- rubygems_version: 2.0.14
416
+ rubygems_version: 1.8.28
399
417
  signing_key:
400
- specification_version: 4
418
+ specification_version: 3
401
419
  summary: Page Object DSL for browser testing Columbus Direct websites based on Jeff
402
420
  Morgan's page-object gem (version 1.0.2
403
421
  test_files: []
404
- has_rdoc:
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: d854155df87a737f8d013f4a599e7c5c65b3a719
4
- data.tar.gz: 0eeca35bd2b3e6223cab2407537e38f988a507c6
5
- SHA512:
6
- metadata.gz: 567f25af15ab6275da05c9d99bfb7b20d2f00d448789fe55671da305a871ed5aacf72d5d19476553b3d542bfcc3f9b33ae58bcd2fec6a55608956555d52a1611
7
- data.tar.gz: b9acbbf3df6565e5e75447f581dbe23e10407db28de94a6e2b7788c8b7e7df67f9f37ced5444d354597c1ae64e90cb595d190d1b4022047a9232beebcaa77333