mediawiki_selenium 1.0.0.pre.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +23 -1
  3. data/.ruby-gemset +1 -0
  4. data/.ruby-version +1 -0
  5. data/Gemfile +1 -4
  6. data/UPGRADE.md +1 -1
  7. data/bin/mediawiki-selenium-init +1 -1
  8. data/lib/mediawiki_selenium/browser_factory/base.rb +8 -8
  9. data/lib/mediawiki_selenium/browser_factory/chrome.rb +1 -1
  10. data/lib/mediawiki_selenium/browser_factory/firefox.rb +4 -4
  11. data/lib/mediawiki_selenium/browser_factory/phantomjs.rb +2 -2
  12. data/lib/mediawiki_selenium/browser_factory.rb +5 -5
  13. data/lib/mediawiki_selenium/environment.rb +15 -14
  14. data/lib/mediawiki_selenium/initializer.rb +4 -4
  15. data/lib/mediawiki_selenium/page_factory.rb +1 -1
  16. data/lib/mediawiki_selenium/remote_browser_factory.rb +12 -8
  17. data/lib/mediawiki_selenium/step_definitions/login_steps.rb +0 -11
  18. data/lib/mediawiki_selenium/step_definitions/navigation_steps.rb +0 -11
  19. data/lib/mediawiki_selenium/step_definitions/preferences_steps.rb +0 -11
  20. data/lib/mediawiki_selenium/step_definitions/resource_loader_steps.rb +0 -11
  21. data/lib/mediawiki_selenium/step_definitions/upload_file_steps.rb +3 -3
  22. data/lib/mediawiki_selenium/step_definitions.rb +5 -5
  23. data/lib/mediawiki_selenium/support/env.rb +5 -16
  24. data/lib/mediawiki_selenium/support/hooks.rb +15 -26
  25. data/lib/mediawiki_selenium/support/modules/api_helper.rb +5 -7
  26. data/lib/mediawiki_selenium/support/pages/api_page.rb +6 -6
  27. data/lib/mediawiki_selenium/support/pages/login_page.rb +13 -12
  28. data/lib/mediawiki_selenium/support/pages/random_page.rb +2 -2
  29. data/lib/mediawiki_selenium/support/pages/reset_preferences_page.rb +3 -3
  30. data/lib/mediawiki_selenium/support/pages.rb +4 -4
  31. data/lib/mediawiki_selenium/support/sauce.rb +14 -18
  32. data/lib/mediawiki_selenium/support.rb +4 -4
  33. data/lib/mediawiki_selenium/version.rb +1 -12
  34. data/lib/mediawiki_selenium/warnings_formatter.rb +15 -15
  35. data/lib/mediawiki_selenium.rb +8 -19
  36. data/mediawiki_selenium.gemspec +35 -28
  37. data/spec/api_helper_spec.rb +25 -25
  38. data/spec/browser_factory/base_spec.rb +50 -46
  39. data/spec/browser_factory/chrome_spec.rb +11 -11
  40. data/spec/browser_factory/firefox_spec.rb +17 -17
  41. data/spec/browser_factory/phantomjs_spec.rb +11 -11
  42. data/spec/environment_spec.rb +194 -159
  43. data/spec/page_factory_spec.rb +12 -12
  44. data/spec/remote_browser_factory_spec.rb +15 -15
  45. data/spec/spec_helper.rb +2 -2
  46. data/templates/tests/browser/features/support/env.rb +3 -3
  47. metadata +9 -9
  48. data/.rubocop_todo.yml +0 -160
@@ -1,4 +1,4 @@
1
- require "spec_helper"
1
+ require 'spec_helper'
2
2
 
3
3
  module MediawikiSelenium
4
4
  describe PageFactory do
@@ -9,49 +9,49 @@ module MediawikiSelenium
9
9
  expect(env).to be_a(::PageObject::PageFactory)
10
10
  end
11
11
 
12
- describe "#on_page" do
12
+ describe '#on_page' do
13
13
  subject { env.on_page(page_class, { using_params: {} }, visit) }
14
14
 
15
- let(:browser) { double("Watir::Browser") }
15
+ let(:browser) { double('Watir::Browser') }
16
16
 
17
- context "when told to visit a page" do
17
+ context 'when told to visit a page' do
18
18
  let(:visit) { true }
19
- let(:config) { { mediawiki_url: "http://an.example/wiki/" } }
19
+ let(:config) { { mediawiki_url: 'http://an.example/wiki/' } }
20
20
 
21
- let(:page_object_platform) { double("PageObject::WatirPageObject") }
21
+ let(:page_object_platform) { double('PageObject::WatirPageObject') }
22
22
 
23
23
  before do
24
24
  expect(env).to receive(:browser)
25
25
  allow_any_instance_of(page_class).to receive(:initialize_browser)
26
26
  end
27
27
 
28
- context "where the page URL is defined" do
28
+ context 'where the page URL is defined' do
29
29
  let(:page_class) do
30
30
  Class.new do
31
31
  include ::PageObject
32
- page_url "Special:RandomPage"
32
+ page_url 'Special:RandomPage'
33
33
  end
34
34
  end
35
35
 
36
- it "qualifies the path with the configured :mediawiki_url" do
36
+ it 'qualifies the path with the configured :mediawiki_url' do
37
37
  expect_any_instance_of(page_class).to receive(:platform).
38
38
  and_return(page_object_platform)
39
39
 
40
40
  expect(page_object_platform).to receive(:navigate_to).
41
- with("http://an.example/wiki/Special:RandomPage")
41
+ with('http://an.example/wiki/Special:RandomPage')
42
42
 
43
43
  subject
44
44
  end
45
45
  end
46
46
 
47
- context "where the page URL is undefined" do
47
+ context 'where the page URL is undefined' do
48
48
  let(:page_class) do
49
49
  Class.new do
50
50
  include ::PageObject
51
51
  end
52
52
  end
53
53
 
54
- it "never attempts to qualify one but still works" do
54
+ it 'never attempts to qualify one but still works' do
55
55
  expect { subject }.not_to raise_error
56
56
  end
57
57
  end
@@ -1,5 +1,5 @@
1
- require "spec_helper"
2
- require "mediawiki_selenium/browser_factory/base"
1
+ require 'spec_helper'
2
+ require 'mediawiki_selenium/browser_factory/base'
3
3
 
4
4
  module MediawikiSelenium
5
5
  describe RemoteBrowserFactory do
@@ -10,7 +10,7 @@ module MediawikiSelenium
10
10
 
11
11
  it { is_expected.to be_a(RemoteBrowserFactory) }
12
12
 
13
- describe "#browser_options" do
13
+ describe '#browser_options' do
14
14
  subject { factory.browser_options(config) }
15
15
 
16
16
  let(:config) { {} }
@@ -20,28 +20,28 @@ module MediawikiSelenium
20
20
  expect(Selenium::WebDriver::Remote::Capabilities).to receive(:foo).and_return(capabilities)
21
21
  end
22
22
 
23
- context "given a sauce_ondemand_username and sauce_ondemand_access_key" do
24
- let(:config) { { sauce_ondemand_username: "foo", sauce_ondemand_access_key: "bar" } }
23
+ context 'given a sauce_ondemand_username and sauce_ondemand_access_key' do
24
+ let(:config) { { sauce_ondemand_username: 'foo', sauce_ondemand_access_key: 'bar' } }
25
25
 
26
- it "configures the remote webdriver url" do
27
- expect(subject[:url]).to eq(URI.parse("http://foo:bar@ondemand.saucelabs.com/wd/hub"))
26
+ it 'configures the remote webdriver url' do
27
+ expect(subject[:url]).to eq(URI.parse('http://foo:bar@ondemand.saucelabs.com/wd/hub'))
28
28
  end
29
29
  end
30
30
 
31
- context "given a browser platform" do
32
- let(:config) { { platform: "foo" } }
31
+ context 'given a browser platform' do
32
+ let(:config) { { platform: 'foo' } }
33
33
 
34
- it "configures the browser platform" do
35
- expect(capabilities).to receive(:platform=).with("foo")
34
+ it 'configures the browser platform' do
35
+ expect(capabilities).to receive(:platform=).with('foo')
36
36
  subject
37
37
  end
38
38
  end
39
39
 
40
- context "given a browser version" do
41
- let(:config) { { version: "123" } }
40
+ context 'given a browser version' do
41
+ let(:config) { { version: '123' } }
42
42
 
43
- it "configures the browser version" do
44
- expect(capabilities).to receive(:version=).with("123")
43
+ it 'configures the browser version' do
44
+ expect(capabilities).to receive(:version=).with('123')
45
45
  subject
46
46
  end
47
47
  end
data/spec/spec_helper.rb CHANGED
@@ -1,4 +1,4 @@
1
- require "bundler/setup"
2
- require "mediawiki_selenium"
1
+ require 'bundler/setup'
2
+ require 'mediawiki_selenium'
3
3
 
4
4
  Bundler.require(:development)
@@ -1,4 +1,4 @@
1
- require "mediawiki_selenium"
1
+ require 'mediawiki_selenium'
2
2
 
3
- require "mediawiki_selenium/support"
4
- require "mediawiki_selenium/step_definitions"
3
+ require 'mediawiki_selenium/support'
4
+ require 'mediawiki_selenium/step_definitions'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mediawiki_selenium
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.pre.2
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris McMahon
@@ -13,7 +13,7 @@ authors:
13
13
  autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
- date: 2015-02-18 00:00:00.000000000 Z
16
+ date: 2015-02-26 00:00:00.000000000 Z
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
19
19
  name: cucumber
@@ -309,9 +309,8 @@ dependencies:
309
309
  - - ">="
310
310
  - !ruby/object:Gem::Version
311
311
  version: 2.14.4
312
- description: |-
313
- Several MediaWiki extensions share code that makes it easy to run Selenium tests. This gem
314
- makes it easy to update the shared code.
312
+ description: Several MediaWiki extensions share code that makes it easy to run Selenium
313
+ tests. This gem makes it easy to update the shared code.
315
314
  email:
316
315
  - cmcmahon@wikimedia.org
317
316
  - dduvall@wikimedia.org
@@ -328,7 +327,8 @@ files:
328
327
  - ".gitreview"
329
328
  - ".rspec"
330
329
  - ".rubocop.yml"
331
- - ".rubocop_todo.yml"
330
+ - ".ruby-gemset"
331
+ - ".ruby-version"
332
332
  - ".yardopts"
333
333
  - CREDITS
334
334
  - Gemfile
@@ -393,12 +393,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
393
393
  version: '0'
394
394
  required_rubygems_version: !ruby/object:Gem::Requirement
395
395
  requirements:
396
- - - ">"
396
+ - - ">="
397
397
  - !ruby/object:Gem::Version
398
- version: 1.3.1
398
+ version: '0'
399
399
  requirements: []
400
400
  rubyforge_project:
401
- rubygems_version: 2.2.2
401
+ rubygems_version: 2.4.3
402
402
  signing_key:
403
403
  specification_version: 4
404
404
  summary: An easy way to run MediaWiki Selenium tests.
data/.rubocop_todo.yml DELETED
@@ -1,160 +0,0 @@
1
- # This configuration was generated by `rubocop --auto-gen-config`
2
- # on 2014-10-20 16:46:25 +0200 using RuboCop version 0.26.1.
3
- # The point is for the user to remove these configuration records
4
- # one by one as the offenses are removed from the code base.
5
- # Note that changes in the inspected code, or installation of new
6
- # versions of RuboCop, may require this file to be generated again.
7
-
8
- # Offense count: 1
9
- # Cop supports --auto-correct.
10
- Lint/UnusedBlockArgument:
11
- Enabled: false
12
-
13
- # Offense count: 4
14
- # Cop supports --auto-correct.
15
- Lint/UnusedMethodArgument:
16
- Enabled: false
17
-
18
- # Offense count: 1
19
- Lint/UselessAccessModifier:
20
- Enabled: false
21
-
22
- # Offense count: 2
23
- Metrics/CyclomaticComplexity:
24
- Max: 16
25
-
26
- # Offense count: 36
27
- # Configuration parameters: AllowURI, URISchemes.
28
- Metrics/LineLength:
29
- Max: 187
30
-
31
- # Offense count: 2
32
- # Configuration parameters: CountComments.
33
- Metrics/MethodLength:
34
- Max: 37
35
-
36
- # Offense count: 2
37
- Metrics/PerceivedComplexity:
38
- Max: 17
39
-
40
- # Offense count: 1
41
- Style/AccessorMethodName:
42
- Enabled: false
43
-
44
- # Offense count: 5
45
- # Cop supports --auto-correct.
46
- # Configuration parameters: EnforcedStyle, SupportedStyles.
47
- Style/AndOr:
48
- Enabled: false
49
-
50
- # Offense count: 3
51
- # Cop supports --auto-correct.
52
- # Configuration parameters: EnforcedStyle, SupportedStyles.
53
- Style/BarePercentLiterals:
54
- Enabled: false
55
-
56
- # Offense count: 13
57
- # Cop supports --auto-correct.
58
- Style/BlockComments:
59
- Enabled: false
60
-
61
- # Offense count: 1
62
- # Configuration parameters: EnforcedStyle, SupportedStyles.
63
- Style/ClassAndModuleChildren:
64
- Enabled: false
65
-
66
- # Offense count: 10
67
- Style/Documentation:
68
- Enabled: false
69
-
70
- # Offense count: 8
71
- # Cop supports --auto-correct.
72
- # Configuration parameters: AllowAdjacentOneLineDefs.
73
- Style/EmptyLineBetweenDefs:
74
- Enabled: false
75
-
76
- # Offense count: 1
77
- # Cop supports --auto-correct.
78
- Style/EmptyLines:
79
- Enabled: false
80
-
81
- # Offense count: 1
82
- # Cop supports --auto-correct.
83
- Style/EmptyLinesAroundBody:
84
- Enabled: false
85
-
86
- # Offense count: 7
87
- # Configuration parameters: AllowedVariables.
88
- Style/GlobalVars:
89
- Enabled: false
90
-
91
- # Offense count: 2
92
- # Configuration parameters: MinBodyLength.
93
- Style/GuardClause:
94
- Enabled: false
95
-
96
- # Offense count: 12
97
- # Cop supports --auto-correct.
98
- # Configuration parameters: EnforcedStyle, SupportedStyles.
99
- Style/HashSyntax:
100
- Enabled: false
101
-
102
- # Offense count: 1
103
- # Cop supports --auto-correct.
104
- Style/IndentationWidth:
105
- Enabled: false
106
-
107
- # Offense count: 2
108
- # Cop supports --auto-correct.
109
- Style/LeadingCommentSpace:
110
- Enabled: false
111
-
112
- # Offense count: 3
113
- # Cop supports --auto-correct.
114
- Style/NilComparison:
115
- Enabled: false
116
-
117
- # Offense count: 5
118
- # Cop supports --auto-correct.
119
- # Configuration parameters: PreferredDelimiters.
120
- Style/PercentLiteralDelimiters:
121
- Enabled: false
122
-
123
- # Offense count: 1
124
- # Cop supports --auto-correct.
125
- # Configuration parameters: EnforcedStyle, SupportedStyles.
126
- Style/PercentQLiterals:
127
- Enabled: false
128
-
129
- # Offense count: 2
130
- # Cop supports --auto-correct.
131
- Style/RedundantSelf:
132
- Enabled: false
133
-
134
- # Offense count: 1
135
- # Cop supports --auto-correct.
136
- # Configuration parameters: EnforcedStyle, SupportedStyles.
137
- Style/SignalException:
138
- Enabled: false
139
-
140
- # Offense count: 6
141
- # Cop supports --auto-correct.
142
- # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces, SupportedStyles.
143
- Style/SpaceInsideHashLiteralBraces:
144
- Enabled: false
145
-
146
- # Offense count: 1
147
- # Cop supports --auto-correct.
148
- Style/SpecialGlobalVars:
149
- Enabled: false
150
-
151
- # Offense count: 192
152
- # Cop supports --auto-correct.
153
- # Configuration parameters: EnforcedStyle, SupportedStyles.
154
- Style/StringLiterals:
155
- Enabled: false
156
-
157
- # Offense count: 3
158
- # Cop supports --auto-correct.
159
- Style/UnneededPercentQ:
160
- Enabled: false