mediawiki_selenium 1.5.0 → 1.6.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.
- checksums.yaml +4 -4
- data/.rubocop.yml +6 -0
- data/.yardopts +1 -0
- data/README.md +43 -318
- data/RELEASES.md +353 -0
- data/features/login_helper.feature +15 -0
- data/features/rspec.feature +64 -0
- data/features/saucelabs.feature +7 -2
- data/features/screenshots.feature +21 -0
- data/features/step_definitions/browser_steps.rb +4 -0
- data/features/step_definitions/environment_steps.rb +2 -2
- data/features/step_definitions/login_helper_steps.rb +11 -0
- data/features/step_definitions/rspec_steps.rb +32 -0
- data/features/step_definitions/saucelabs_steps.rb +18 -0
- data/features/step_definitions/screenshot_steps.rb +3 -0
- data/lib/mediawiki_selenium.rb +6 -3
- data/lib/mediawiki_selenium/browser_factory/base.rb +5 -1
- data/lib/mediawiki_selenium/cucumber.rb +4 -0
- data/lib/mediawiki_selenium/{support → cucumber}/env.rb +2 -4
- data/lib/mediawiki_selenium/cucumber/hooks.rb +73 -0
- data/lib/mediawiki_selenium/cucumber/sauce.rb +22 -0
- data/lib/mediawiki_selenium/{support/modules → cucumber}/strict_pending.rb +0 -0
- data/lib/mediawiki_selenium/environment.rb +41 -20
- data/lib/mediawiki_selenium/{support/modules → helpers}/api_helper.rb +15 -0
- data/lib/mediawiki_selenium/{support/modules → helpers}/headless_helper.rb +21 -13
- data/lib/mediawiki_selenium/helpers/login_helper.rb +36 -0
- data/lib/mediawiki_selenium/helpers/screenshot_helper.rb +58 -0
- data/lib/mediawiki_selenium/{support/modules → helpers}/user_factory_helper.rb +0 -0
- data/lib/mediawiki_selenium/pages.rb +3 -0
- data/lib/mediawiki_selenium/{support/pages → pages}/login_page.rb +0 -0
- data/lib/mediawiki_selenium/{support/pages → pages}/random_page.rb +0 -0
- data/lib/mediawiki_selenium/{support/pages → pages}/reset_preferences_page.rb +0 -0
- data/lib/mediawiki_selenium/remote_browser_factory.rb +12 -3
- data/lib/mediawiki_selenium/rspec.rb +51 -0
- data/lib/mediawiki_selenium/rspec/environment.rb +36 -0
- data/lib/mediawiki_selenium/rspec/features.rb +49 -0
- data/lib/mediawiki_selenium/step_definitions/login_steps.rb +1 -3
- data/lib/mediawiki_selenium/version.rb +1 -1
- data/mediawiki_selenium.gemspec +2 -2
- data/spec/environment_spec.rb +12 -0
- data/spec/screenshot_helper_spec.rb +95 -0
- data/templates/tests/browser/features/support/env.rb +2 -1
- metadata +52 -38
- data/lib/mediawiki_selenium/support.rb +0 -4
- data/lib/mediawiki_selenium/support/hooks.rb +0 -92
- data/lib/mediawiki_selenium/support/pages.rb +0 -3
- data/lib/mediawiki_selenium/support/sauce.rb +0 -26
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1ff49ed757245b3019e90d0e6c97a2b1f50d0798
|
4
|
+
data.tar.gz: 30e39088a9deffa94072fb2d6f1b8768548c6d9c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1d2176c6a4c894d9d7e0198c5afb248a7b3a41a1f1a6d667612517133bfc3863f9f129c0d776d988196ec49c276ebae6043d6b75fe607a6909709a89fefa9c4b
|
7
|
+
data.tar.gz: fd7d44415b1ea8397629c44fde70f300b390924c78a33735590c211bb7b2e9413bb9686eeee73d54dda70b276b036014af2152b55147098f57de0d9c90bde510
|
data/.rubocop.yml
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
AllCops:
|
2
2
|
StyleGuideCopsOnly: true
|
3
|
+
Exclude:
|
4
|
+
- 'vendor/**/*'
|
5
|
+
# Features syntax is a vendor file imported from Capybara. Ignore it.
|
6
|
+
- 'lib/mediawiki_selenium/rspec/features.rb'
|
7
|
+
# Ignore anything left around in `tmp`
|
8
|
+
- 'tmp/**/*'
|
3
9
|
|
4
10
|
Metrics/LineLength:
|
5
11
|
Max: 100
|
data/.yardopts
CHANGED
data/README.md
CHANGED
@@ -46,8 +46,8 @@ system wide Ruby.)
|
|
46
46
|
|
47
47
|
## Upgrading
|
48
48
|
|
49
|
-
Please read
|
50
|
-
|
49
|
+
Please read {file:UPGRADE.md} for documentation on how to upgrade from one
|
50
|
+
major release to another.
|
51
51
|
|
52
52
|
## Getting Started
|
53
53
|
|
@@ -221,343 +221,68 @@ For a list of MediaWiki repositories that use this gem, see the [Repositories wi
|
|
221
221
|
|
222
222
|
See https://www.mediawiki.org/wiki/Gerrit
|
223
223
|
|
224
|
-
##
|
225
|
-
|
226
|
-
### 1.5.0 2015-07-23
|
227
|
-
* Video recording of headless browser sessions are now saved to
|
228
|
-
`HEADLESS_CAPTURE_PATH` for failed scenarios
|
229
|
-
* Page objects can now reference the current `Environment` object as `env` in
|
230
|
-
their page URL ERb
|
231
|
-
|
232
|
-
### 1.4.0 2015-06-26
|
233
|
-
* New user factory module provides account fixtures for a greater level of
|
234
|
-
isolation/atomicity between scenarios
|
235
|
-
* Updated MediaWiki API client and Cucumber dependencies for various fixes
|
236
|
-
* Fixed `PageFactory#on` for cases where it's used before browser
|
237
|
-
initialization
|
238
|
-
* Implemented integration tests that run against a MediaWiki instance in CI
|
239
|
-
|
240
|
-
### 1.3.0 2015-06-10
|
241
|
-
* Added `Environment#override` for overriding environment configuration at
|
242
|
-
runtime
|
243
|
-
* Removed deprecated `APIPage` page object and updated upgrade docs
|
244
|
-
|
245
|
-
### 1.2.1 2015-06-02
|
246
|
-
* Fixed issue with inconsistent JSON output in Raita logger when using
|
247
|
-
scenario outlines
|
248
|
-
|
249
|
-
### 1.2.0 2015-05-28
|
250
|
-
* Support logging to a [Raita](http://git.wikimedia.org/summary/integration%2Fraita.git)
|
251
|
-
Elasticsearch database by setting `RAITA_URL`
|
252
|
-
* Removed deprecated support for `MEDIAWIKI_PASSWORD_VARIABLE`
|
253
|
-
|
254
|
-
### 1.1.0 2015-04-06
|
255
|
-
* Support for `browser_http_proxy` in Firefox, Chrome, and Phantomjs
|
256
|
-
* Renamed browser factory `bind` method to `configure`
|
257
|
-
|
258
|
-
### 1.0.2 2015-03-26
|
259
|
-
* Fixed double yield bug in `PageFactory#on`
|
260
|
-
* Implemented loading of a `default` configuration from `environments.yml`
|
261
|
-
* Improved readme with configuration examples
|
262
|
-
|
263
|
-
### 1.0.1 2015-03-05
|
264
|
-
* Fixed regex pattern in shared "I am logged in" step
|
265
|
-
|
266
|
-
### 1.0.0 2015-01-16
|
267
|
-
* Substantial refactoring and backwards incompatible changes
|
268
|
-
* Implemented an "environment abstraction layer" with the aim to:
|
269
|
-
* Improve test determinism by sourcing environment-specific default
|
270
|
-
configurations and enforcing an immutable runtime configuration
|
271
|
-
* Simplify test patterns by providing DSL constructs around commonly tested
|
272
|
-
MediaWiki resources
|
273
|
-
* Manage multiple isolated browser sessions within a single test scenario
|
274
|
-
* Serve more advanced use cases by supporting ad hoc browser customization
|
275
|
-
* Cleaned up the global object space by moving methods into the new
|
276
|
-
`Environment` and `BrowserFactory` classes
|
277
|
-
* Further decoupled core framework from Cucumber, allowing for the possibility
|
278
|
-
of its use under other Ruby test frameworks like RSpec
|
279
|
-
* Established test suite with coverage for all newly implemented EAL modules
|
280
|
-
and classes
|
281
|
-
* Improved high level and inline documentation with examples and links to
|
282
|
-
upstream resources
|
283
|
-
|
284
|
-
### 0.4.1 2014-11-11
|
285
|
-
* Additional headless environment variables: HEADLESS_DISPLAY, HEADLESS_REUSE, HEADLESS_DESTROY_AT_EXIT.
|
286
|
-
|
287
|
-
### 0.4.0 2014-09-23
|
288
|
-
|
289
|
-
* Stricter pending behavior for falsely passing steps
|
290
|
-
* Fixed interoperability of custom browser settings and Sauce sessions
|
291
|
-
|
292
|
-
### 0.3.2 2014-08-26
|
293
|
-
|
294
|
-
* Bumped runtime dependency for mediawiki_api
|
295
|
-
|
296
|
-
### 0.3.1 2014-08-12
|
297
|
-
|
298
|
-
* Fixed API request for wiki extensions in dependency check
|
299
|
-
* Updated readme to include documentation on MEDIAWIKI_API_URL
|
300
|
-
|
301
|
-
### 0.3.0 2014-08-08
|
302
|
-
|
303
|
-
* Support for MediaWiki extension dependencies via `@extension-<name>` tags
|
304
|
-
* World `api` helper method for direct access to a pre-authenticated API client
|
305
|
-
* Gem dependency fixes
|
306
|
-
* Updated readme
|
307
|
-
|
308
|
-
### 0.2.26 2014-07-18
|
309
|
-
|
310
|
-
* Added runtime dependency on mediawiki_api
|
311
|
-
* Added call to #protect from mediawiki_api
|
312
|
-
|
313
|
-
### 0.2.25 2014-06-27
|
314
|
-
|
315
|
-
* Make the check for complete login independent of language
|
316
|
-
|
317
|
-
### 0.2.24 2014-06-12
|
318
|
-
|
319
|
-
* No longer using net-http-persistent Ruby gem. Looks like net-http-persistent is causing failures sometimes. Testing if
|
320
|
-
things will be more stable without it.
|
321
|
-
|
322
|
-
### 0.2.23 2014-06-05
|
323
|
-
|
324
|
-
* Take screen shot only if browser is opened
|
325
|
-
* Upgrade to page-object gem 1.0. New version has better debugging.
|
326
|
-
|
327
|
-
### 0.2.22 2014-04-23
|
328
|
-
|
329
|
-
* Fixed "File name too long" error message
|
330
|
-
|
331
|
-
### 0.2.21 2014-04-22
|
332
|
-
|
333
|
-
* Do not output link to Sauce Labs when running a local browser
|
334
|
-
|
335
|
-
### 0.2.20 2014-04-15
|
336
|
-
|
337
|
-
* Updated readme file with release notes
|
338
|
-
* `APIPage#create` should use `title` and `content` variables when creating a page
|
339
|
-
|
340
|
-
### 0.2.19 2014-04-11
|
341
|
-
|
342
|
-
* APIPage can create pages via API
|
343
|
-
|
344
|
-
### 0.2.18 2014-04-11
|
345
|
-
|
346
|
-
* If environment variable HEADLESS is set to true, run a local browser
|
347
|
-
|
348
|
-
### 0.2.17 2014-04-08
|
349
|
-
|
350
|
-
* File needed for file upload steps was not required
|
351
|
-
* Login sometimes takes >5s to complete
|
352
|
-
* Updated readme file
|
353
|
-
|
354
|
-
### 0.2.16 2014-03-21
|
355
|
-
|
356
|
-
* MobileFrontend and UploadWizard should share upload steps
|
357
|
-
|
358
|
-
### 0.2.15 2014-03-19
|
359
|
-
|
360
|
-
* Fixed setting a cookie when starting the browser
|
361
|
-
|
362
|
-
### 0.2.14 2014-03-19
|
363
|
-
|
364
|
-
* A cookie can optionally be set when starting the browser
|
365
|
-
|
366
|
-
### 0.2.13 2014-03-18
|
367
|
-
|
368
|
-
* The gem should be able to start local and remote browsers with optional browser setup
|
369
|
-
|
370
|
-
### 0.2.12 2014-03-13
|
371
|
-
|
372
|
-
* Make "page has no ResourceLoader errors" Cucumber step available
|
373
|
-
|
374
|
-
### 0.2.11 2014-03-10
|
224
|
+
## Releasing the gem
|
375
225
|
|
376
|
-
|
377
|
-
* Wrapped README.md to 80 chars for readability
|
226
|
+
### Step 1
|
378
227
|
|
379
|
-
|
228
|
+
When you're ready to cut a new release, increase the major/minor/patch version (the gem uses [semantic versioning](http://semver.org/)) and add release notes. Release notes should include:
|
380
229
|
|
381
|
-
|
382
|
-
|
230
|
+
- What has changed
|
231
|
+
- New features
|
232
|
+
- Bug fixes
|
233
|
+
- Possible incompatibilities
|
383
234
|
|
384
|
-
|
235
|
+
Update gem version in `README.md`, `UPGRADE.md` and `lib/mediawiki_selenium/version.rb`. Add release notes to `RELEASES.md`.
|
385
236
|
|
386
|
-
|
237
|
+
### Step 2
|
387
238
|
|
388
|
-
|
239
|
+
Push the commit to Gerrit. Wait for review and merge.
|
389
240
|
|
390
|
-
|
391
|
-
* Moved Jenkins doc to jenkins-job-builder-config repo
|
392
|
-
* Updated Ruby version from 2.1.0 to 2.1.1
|
393
|
-
* Cloudbees Jenkins jobs are now created using Jenkins Job Builder
|
241
|
+
### Step 3
|
394
242
|
|
395
|
-
|
243
|
+
When the commit is merged into master branch, fetch it and verify the commit is HEAD, for example:
|
396
244
|
|
397
|
-
|
398
|
-
|
399
|
-
|
245
|
+
$ git fetch
|
246
|
+
$ git log --oneline --decorate
|
247
|
+
123abcd (HEAD, origin/master, origin/HEAD, master, T108873) Release minor version 1.5.1
|
248
|
+
...
|
400
249
|
|
401
|
-
###
|
250
|
+
### Step 4
|
402
251
|
|
403
|
-
|
252
|
+
Tag the commit, for example:
|
404
253
|
|
405
|
-
|
254
|
+
$ git fetch --tags
|
255
|
+
$ git log --oneline --decorate
|
256
|
+
123abcd (HEAD, origin/master, origin/HEAD, master, T108873) Release minor version 1.5.1
|
257
|
+
...
|
258
|
+
$ git tag 1.5.1 123abcd
|
259
|
+
$ git push --tags
|
406
260
|
|
407
|
-
###
|
261
|
+
### Step 5
|
408
262
|
|
409
|
-
|
263
|
+
Build the gem, for example:
|
410
264
|
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
* Moved files to support folder
|
265
|
+
$ gem build mediawiki_selenium.gemspec
|
266
|
+
Successfully built RubyGem
|
267
|
+
Name: mediawiki_selenium
|
268
|
+
Version: 1.5.1
|
269
|
+
File: mediawiki_selenium-1.5.1.gem
|
417
270
|
|
418
|
-
|
271
|
+
The above gem assumes you have working Ruby and RubyGems.
|
419
272
|
|
420
|
-
|
421
|
-
* Add a Gemfile to force a good version of Ruby
|
422
|
-
* Fixed several "gem build" warnings
|
423
|
-
* Renamed mediawiki-selenium Ruby gem to mediawiki_selenium
|
424
|
-
* Added missing contributors
|
273
|
+
### Step 6
|
425
274
|
|
426
|
-
|
275
|
+
Push the gem to RubyGems.org, for example:
|
427
276
|
|
428
|
-
|
277
|
+
$ gem push mediawiki_selenium-1.5.1.gem
|
278
|
+
...
|
429
279
|
|
430
|
-
|
280
|
+
The last step assumes you have RubyGems.org account and are owner of the gem at the site.
|
431
281
|
|
432
|
-
|
282
|
+
### Step 7
|
433
283
|
|
434
|
-
|
284
|
+
Announce the new release at [QA](https://lists.wikimedia.org/mailman/listinfo/qa) mailing list.
|
435
285
|
|
436
|
-
|
437
|
-
* Display error message if browser is not started for some reason
|
438
|
-
|
439
|
-
### 0.1.18 2014-01-30
|
440
|
-
|
441
|
-
* Increases verbosity of Cucumber output
|
442
|
-
* Run browsers headlessly if HEADLESS environment variable is set to true
|
443
|
-
* Moved Sauce Labs browser configuration to the gem
|
444
|
-
* Removed debugging code from Jenkins jobs
|
445
|
-
|
446
|
-
### 0.1.17 2014-01-28
|
447
|
-
|
448
|
-
### 0.1.16 2014-01-17
|
449
|
-
|
450
|
-
* Resize PhantomJS to 1280x1024 when the browser opens
|
451
|
-
* Removed code that is no longer needed
|
452
|
-
* Send e-mail for every unstable Jenkins job
|
453
|
-
* All "bundle exec cucumber" should end in "|| echo "Failure in cucumber""
|
454
|
-
* Use new e-mail template
|
455
|
-
* Added build schedule option for Jenkins builds
|
456
|
-
* Deleted unused "branch" option
|
457
|
-
* Added --backtrace to cucumber
|
458
|
-
* Updated Ruby
|
459
|
-
* Replacing single quotes with double quotes
|
460
|
-
* Fix Accept-Language feature for PhantomJS
|
461
|
-
|
462
|
-
### 0.1.15 2013-12-13
|
463
|
-
|
464
|
-
### 0.1.14 2013-12-09
|
465
|
-
|
466
|
-
* Make it possible to run tests on Cloudbees using PhantomJS
|
467
|
-
* Merging the readme files of other repositories with this one
|
468
|
-
* Prefer double-quoted strings in Ruby code
|
469
|
-
* Added links to Jenkins jobs
|
470
|
-
|
471
|
-
### 0.1.13 2013-11-14
|
472
|
-
|
473
|
-
* Resize browser at Sauce Labs to maximum supported size
|
474
|
-
|
475
|
-
### 0.1.12 2013-11-04
|
476
|
-
|
477
|
-
* Introduce new variable that points to the variable that holds the password
|
478
|
-
|
479
|
-
### 0.1.11 2013-11-04
|
480
|
-
|
481
|
-
* Passwords are in environment variables but not displayed in Jenkins console log
|
482
|
-
* Set up Code Climate for all repositories that have Ruby code
|
483
|
-
* Deleted Jenkins jobs that are known to fail
|
484
|
-
* Updated documentation
|
485
|
-
|
486
|
-
### 0.1.10 2013-10-21
|
487
|
-
|
488
|
-
* Updated Jenkins documentation
|
489
|
-
* Moving gems that all repositories need to the gem
|
490
|
-
* Deleted unused files
|
491
|
-
* The gem homepage now points to Gerrit repository
|
492
|
-
* Moved documentation from qa/browsertests repository
|
493
|
-
* Updated readme file with usage instructions and links to repositories that use the gem
|
494
|
-
* Add .gitreview
|
495
|
-
|
496
|
-
### 0.1.9 2013-10-21
|
497
|
-
|
498
|
-
### 0.1.8 2013-10-04
|
499
|
-
|
500
|
-
* Use rest_client instead of curl when using Sauce Labs API
|
501
|
-
* Set build number when running tests at Sauce Labs
|
502
|
-
|
503
|
-
### 0.1.7 2013-10-04
|
504
|
-
|
505
|
-
* MobileFrontend repository uses @user_agent tag
|
506
|
-
|
507
|
-
### 0.1.6 2013-10-04
|
508
|
-
|
509
|
-
* Added code needed for CirrusSearch repository
|
510
|
-
|
511
|
-
### 0.1.5 2013-10-04
|
512
|
-
|
513
|
-
* Move UniversalLanguageSelector hooks back to it's repository
|
514
|
-
|
515
|
-
### 0.1.4 2013-10-03
|
516
|
-
|
517
|
-
* Remove debugging code committed by mistake
|
518
|
-
|
519
|
-
### 0.1.3 2013-10-03
|
520
|
-
|
521
|
-
* Moved Cucumber hooks used only for UniversalLanguageSelector to a separate file
|
522
|
-
|
523
|
-
### 0.1.2 2013-10-03
|
524
|
-
|
525
|
-
* Forgot to require hooks file
|
526
|
-
|
527
|
-
### 0.1.1 2013-10-03
|
528
|
-
|
529
|
-
* Moved Cucumber hooks to hooks.rb file
|
530
|
-
|
531
|
-
### 0.1.0 2013-10-03
|
532
|
-
|
533
|
-
* The gem is working, I think it is time to move from 0.0.x
|
534
|
-
|
535
|
-
### 0.0.7 2013-10-02
|
536
|
-
|
537
|
-
* Moved code from UniversalLanguageSelector repository
|
538
|
-
|
539
|
-
### 0.0.6 2013-10-02
|
540
|
-
|
541
|
-
* Updated env.rb file to the latest version
|
542
|
-
* Added license headers to all files that did not have it
|
543
|
-
|
544
|
-
### 0.0.5 2013-10-02
|
545
|
-
|
546
|
-
* Imported sauce.rb file from browsertests repository
|
547
|
-
|
548
|
-
### 0.0.4 2013-10-02
|
549
|
-
|
550
|
-
* Include env.rb file from browsertests repository
|
551
|
-
|
552
|
-
### 0.0.3 2013-10-02
|
553
|
-
|
554
|
-
* Changed license to GPL-2
|
555
|
-
|
556
|
-
### 0.0.2 2013-10-02
|
557
|
-
|
558
|
-
* Fixed a couple of "gem build" warnings
|
559
|
-
|
560
|
-
### 0.0.1 2013-10-02
|
286
|
+
## Release notes
|
561
287
|
|
562
|
-
|
563
|
-
* Auto generated gem by RubyMine
|
288
|
+
See {file:RELEASES.md}.
|
data/RELEASES.md
ADDED
@@ -0,0 +1,353 @@
|
|
1
|
+
## Release notes
|
2
|
+
|
3
|
+
### 1.6.0 2015-09-25
|
4
|
+
* Factored out all Cucumber specific functionality from the main framework
|
5
|
+
classes to make way for alternative test harnesses
|
6
|
+
* Generalized setup/teardown hooks
|
7
|
+
* Reorganized support files to reflect their Cucumber specificity
|
8
|
+
* Refactored remote test annotation
|
9
|
+
* Moved screenshot-ing to its own helper
|
10
|
+
* Experimental support for plain RSpec based tests (see
|
11
|
+
[T108273](https://phabricator.wikimedia.org/T108273#1520544) for example
|
12
|
+
usage)
|
13
|
+
* Implemented API based authentication via the `LoginHelper` and ported the
|
14
|
+
Cucumber login step to use it
|
15
|
+
|
16
|
+
### 1.5.0 2015-07-23
|
17
|
+
* Video recording of headless browser sessions are now saved to
|
18
|
+
`HEADLESS_CAPTURE_PATH` for failed scenarios
|
19
|
+
* Page objects can now reference the current `Environment` object as `env` in
|
20
|
+
their page URL ERb
|
21
|
+
|
22
|
+
### 1.4.0 2015-06-26
|
23
|
+
* New user factory module provides account fixtures for a greater level of
|
24
|
+
isolation/atomicity between scenarios
|
25
|
+
* Updated MediaWiki API client and Cucumber dependencies for various fixes
|
26
|
+
* Fixed `PageFactory#on` for cases where it's used before browser
|
27
|
+
initialization
|
28
|
+
* Implemented integration tests that run against a MediaWiki instance in CI
|
29
|
+
|
30
|
+
### 1.3.0 2015-06-10
|
31
|
+
* Added `Environment#override` for overriding environment configuration at
|
32
|
+
runtime
|
33
|
+
* Removed deprecated `APIPage` page object and updated upgrade docs
|
34
|
+
|
35
|
+
### 1.2.1 2015-06-02
|
36
|
+
* Fixed issue with inconsistent JSON output in Raita logger when using
|
37
|
+
scenario outlines
|
38
|
+
|
39
|
+
### 1.2.0 2015-05-28
|
40
|
+
* Support logging to a [Raita](http://git.wikimedia.org/summary/integration%2Fraita.git)
|
41
|
+
Elasticsearch database by setting `RAITA_URL`
|
42
|
+
* Removed deprecated support for `MEDIAWIKI_PASSWORD_VARIABLE`
|
43
|
+
|
44
|
+
### 1.1.0 2015-04-06
|
45
|
+
* Support for `browser_http_proxy` in Firefox, Chrome, and Phantomjs
|
46
|
+
* Renamed browser factory `bind` method to `configure`
|
47
|
+
|
48
|
+
### 1.0.2 2015-03-26
|
49
|
+
* Fixed double yield bug in `PageFactory#on`
|
50
|
+
* Implemented loading of a `default` configuration from `environments.yml`
|
51
|
+
* Improved readme with configuration examples
|
52
|
+
|
53
|
+
### 1.0.1 2015-03-05
|
54
|
+
* Fixed regex pattern in shared "I am logged in" step
|
55
|
+
|
56
|
+
### 1.0.0 2015-01-16
|
57
|
+
* Substantial refactoring and backwards incompatible changes
|
58
|
+
* Implemented an "environment abstraction layer" with the aim to:
|
59
|
+
* Improve test determinism by sourcing environment-specific default
|
60
|
+
configurations and enforcing an immutable runtime configuration
|
61
|
+
* Simplify test patterns by providing DSL constructs around commonly tested
|
62
|
+
MediaWiki resources
|
63
|
+
* Manage multiple isolated browser sessions within a single test scenario
|
64
|
+
* Serve more advanced use cases by supporting ad hoc browser customization
|
65
|
+
* Cleaned up the global object space by moving methods into the new
|
66
|
+
`Environment` and `BrowserFactory` classes
|
67
|
+
* Further decoupled core framework from Cucumber, allowing for the possibility
|
68
|
+
of its use under other Ruby test frameworks like RSpec
|
69
|
+
* Established test suite with coverage for all newly implemented EAL modules
|
70
|
+
and classes
|
71
|
+
* Improved high level and inline documentation with examples and links to
|
72
|
+
upstream resources
|
73
|
+
|
74
|
+
### 0.4.1 2014-11-11
|
75
|
+
* Additional headless environment variables: HEADLESS_DISPLAY, HEADLESS_REUSE, HEADLESS_DESTROY_AT_EXIT.
|
76
|
+
|
77
|
+
### 0.4.0 2014-09-23
|
78
|
+
|
79
|
+
* Stricter pending behavior for falsely passing steps
|
80
|
+
* Fixed interoperability of custom browser settings and Sauce sessions
|
81
|
+
|
82
|
+
### 0.3.2 2014-08-26
|
83
|
+
|
84
|
+
* Bumped runtime dependency for mediawiki_api
|
85
|
+
|
86
|
+
### 0.3.1 2014-08-12
|
87
|
+
|
88
|
+
* Fixed API request for wiki extensions in dependency check
|
89
|
+
* Updated readme to include documentation on MEDIAWIKI_API_URL
|
90
|
+
|
91
|
+
### 0.3.0 2014-08-08
|
92
|
+
|
93
|
+
* Support for MediaWiki extension dependencies via `@extension-<name>` tags
|
94
|
+
* World `api` helper method for direct access to a pre-authenticated API client
|
95
|
+
* Gem dependency fixes
|
96
|
+
* Updated readme
|
97
|
+
|
98
|
+
### 0.2.26 2014-07-18
|
99
|
+
|
100
|
+
* Added runtime dependency on mediawiki_api
|
101
|
+
* Added call to #protect from mediawiki_api
|
102
|
+
|
103
|
+
### 0.2.25 2014-06-27
|
104
|
+
|
105
|
+
* Make the check for complete login independent of language
|
106
|
+
|
107
|
+
### 0.2.24 2014-06-12
|
108
|
+
|
109
|
+
* No longer using net-http-persistent Ruby gem. Looks like net-http-persistent is causing failures sometimes. Testing if
|
110
|
+
things will be more stable without it.
|
111
|
+
|
112
|
+
### 0.2.23 2014-06-05
|
113
|
+
|
114
|
+
* Take screen shot only if browser is opened
|
115
|
+
* Upgrade to page-object gem 1.0. New version has better debugging.
|
116
|
+
|
117
|
+
### 0.2.22 2014-04-23
|
118
|
+
|
119
|
+
* Fixed "File name too long" error message
|
120
|
+
|
121
|
+
### 0.2.21 2014-04-22
|
122
|
+
|
123
|
+
* Do not output link to Sauce Labs when running a local browser
|
124
|
+
|
125
|
+
### 0.2.20 2014-04-15
|
126
|
+
|
127
|
+
* Updated readme file with release notes
|
128
|
+
* `APIPage#create` should use `title` and `content` variables when creating a page
|
129
|
+
|
130
|
+
### 0.2.19 2014-04-11
|
131
|
+
|
132
|
+
* APIPage can create pages via API
|
133
|
+
|
134
|
+
### 0.2.18 2014-04-11
|
135
|
+
|
136
|
+
* If environment variable HEADLESS is set to true, run a local browser
|
137
|
+
|
138
|
+
### 0.2.17 2014-04-08
|
139
|
+
|
140
|
+
* File needed for file upload steps was not required
|
141
|
+
* Login sometimes takes >5s to complete
|
142
|
+
* Updated readme file
|
143
|
+
|
144
|
+
### 0.2.16 2014-03-21
|
145
|
+
|
146
|
+
* MobileFrontend and UploadWizard should share upload steps
|
147
|
+
|
148
|
+
### 0.2.15 2014-03-19
|
149
|
+
|
150
|
+
* Fixed setting a cookie when starting the browser
|
151
|
+
|
152
|
+
### 0.2.14 2014-03-19
|
153
|
+
|
154
|
+
* A cookie can optionally be set when starting the browser
|
155
|
+
|
156
|
+
### 0.2.13 2014-03-18
|
157
|
+
|
158
|
+
* The gem should be able to start local and remote browsers with optional browser setup
|
159
|
+
|
160
|
+
### 0.2.12 2014-03-13
|
161
|
+
|
162
|
+
* Make "page has no ResourceLoader errors" Cucumber step available
|
163
|
+
|
164
|
+
### 0.2.11 2014-03-10
|
165
|
+
|
166
|
+
* Add optional argument wait_for_logout_element to login_with method
|
167
|
+
* Wrapped README.md to 80 chars for readability
|
168
|
+
|
169
|
+
### 0.2.10 2014-03-10
|
170
|
+
|
171
|
+
* Added "I am at a random page" step to the gem
|
172
|
+
* Make it possible to check for ResourceLoader errors anywhere
|
173
|
+
|
174
|
+
### 0.2.9 2014-03-06
|
175
|
+
|
176
|
+
* Fixed login method, instead of waiting for link with text in English, wait for link with href
|
177
|
+
|
178
|
+
### 0.2.8 2014-03-06
|
179
|
+
|
180
|
+
* Moved BROWSER_TIMEOUT implementation to the gem
|
181
|
+
* Moved Jenkins doc to jenkins-job-builder-config repo
|
182
|
+
* Updated Ruby version from 2.1.0 to 2.1.1
|
183
|
+
* Cloudbees Jenkins jobs are now created using Jenkins Job Builder
|
184
|
+
|
185
|
+
### 0.2.7 2014-02-21
|
186
|
+
|
187
|
+
* Wait for login process to complete
|
188
|
+
* Added support for @custom-browser Cucumber tag
|
189
|
+
* Removed configuration of Sauce Labs browsers from the gem
|
190
|
+
|
191
|
+
### 0.2.6 2014-02-18
|
192
|
+
|
193
|
+
### 0.2.5 2014-02-17
|
194
|
+
|
195
|
+
### 0.2.4 2014-02-17
|
196
|
+
|
197
|
+
### 0.2.3 2014-02-13
|
198
|
+
|
199
|
+
### 0.2.2 2014-02-10
|
200
|
+
|
201
|
+
* `SCREENSHOT_FAILURES_PATH` environment variable lets you override the destination path for screenshots
|
202
|
+
* Moved resetting preferences to the gem
|
203
|
+
* Moved Given(/^I am logged in$/) step to the gem
|
204
|
+
* Renamed remaining instances of mediawiki-selenium to mediawiki_selenium
|
205
|
+
* Moved LoginPage class and URL module to the gem
|
206
|
+
* Moved files to support folder
|
207
|
+
|
208
|
+
### 0.2.1 2014-02-07
|
209
|
+
|
210
|
+
* Get screenshots on failures by setting the environment variable `SCREENSHOT_FAILURES` to `true`
|
211
|
+
* Add a Gemfile to force a good version of Ruby
|
212
|
+
* Fixed several "gem build" warnings
|
213
|
+
* Renamed mediawiki-selenium Ruby gem to mediawiki_selenium
|
214
|
+
* Added missing contributors
|
215
|
+
|
216
|
+
### 0.2.0 2014-02-07
|
217
|
+
|
218
|
+
### 0.1.21 2014-02-07
|
219
|
+
|
220
|
+
### 0.1.20 2014-01-30
|
221
|
+
|
222
|
+
* Added the most recent versions of all runtime dependencies
|
223
|
+
|
224
|
+
### 0.1.19 2014-01-30
|
225
|
+
|
226
|
+
* Fixed warning message displayed while building the gem
|
227
|
+
* Display error message if browser is not started for some reason
|
228
|
+
|
229
|
+
### 0.1.18 2014-01-30
|
230
|
+
|
231
|
+
* Increases verbosity of Cucumber output
|
232
|
+
* Run browsers headlessly if HEADLESS environment variable is set to true
|
233
|
+
* Moved Sauce Labs browser configuration to the gem
|
234
|
+
* Removed debugging code from Jenkins jobs
|
235
|
+
|
236
|
+
### 0.1.17 2014-01-28
|
237
|
+
|
238
|
+
### 0.1.16 2014-01-17
|
239
|
+
|
240
|
+
* Resize PhantomJS to 1280x1024 when the browser opens
|
241
|
+
* Removed code that is no longer needed
|
242
|
+
* Send e-mail for every unstable Jenkins job
|
243
|
+
* All "bundle exec cucumber" should end in "|| echo "Failure in cucumber""
|
244
|
+
* Use new e-mail template
|
245
|
+
* Added build schedule option for Jenkins builds
|
246
|
+
* Deleted unused "branch" option
|
247
|
+
* Added --backtrace to cucumber
|
248
|
+
* Updated Ruby
|
249
|
+
* Replacing single quotes with double quotes
|
250
|
+
* Fix Accept-Language feature for PhantomJS
|
251
|
+
|
252
|
+
### 0.1.15 2013-12-13
|
253
|
+
|
254
|
+
### 0.1.14 2013-12-09
|
255
|
+
|
256
|
+
* Make it possible to run tests on Cloudbees using PhantomJS
|
257
|
+
* Merging the readme files of other repositories with this one
|
258
|
+
* Prefer double-quoted strings in Ruby code
|
259
|
+
* Added links to Jenkins jobs
|
260
|
+
|
261
|
+
### 0.1.13 2013-11-14
|
262
|
+
|
263
|
+
* Resize browser at Sauce Labs to maximum supported size
|
264
|
+
|
265
|
+
### 0.1.12 2013-11-04
|
266
|
+
|
267
|
+
* Introduce new variable that points to the variable that holds the password
|
268
|
+
|
269
|
+
### 0.1.11 2013-11-04
|
270
|
+
|
271
|
+
* Passwords are in environment variables but not displayed in Jenkins console log
|
272
|
+
* Set up Code Climate for all repositories that have Ruby code
|
273
|
+
* Deleted Jenkins jobs that are known to fail
|
274
|
+
* Updated documentation
|
275
|
+
|
276
|
+
### 0.1.10 2013-10-21
|
277
|
+
|
278
|
+
* Updated Jenkins documentation
|
279
|
+
* Moving gems that all repositories need to the gem
|
280
|
+
* Deleted unused files
|
281
|
+
* The gem homepage now points to Gerrit repository
|
282
|
+
* Moved documentation from qa/browsertests repository
|
283
|
+
* Updated readme file with usage instructions and links to repositories that use the gem
|
284
|
+
* Add .gitreview
|
285
|
+
|
286
|
+
### 0.1.9 2013-10-21
|
287
|
+
|
288
|
+
### 0.1.8 2013-10-04
|
289
|
+
|
290
|
+
* Use rest_client instead of curl when using Sauce Labs API
|
291
|
+
* Set build number when running tests at Sauce Labs
|
292
|
+
|
293
|
+
### 0.1.7 2013-10-04
|
294
|
+
|
295
|
+
* MobileFrontend repository uses @user_agent tag
|
296
|
+
|
297
|
+
### 0.1.6 2013-10-04
|
298
|
+
|
299
|
+
* Added code needed for CirrusSearch repository
|
300
|
+
|
301
|
+
### 0.1.5 2013-10-04
|
302
|
+
|
303
|
+
* Move UniversalLanguageSelector hooks back to it's repository
|
304
|
+
|
305
|
+
### 0.1.4 2013-10-03
|
306
|
+
|
307
|
+
* Remove debugging code committed by mistake
|
308
|
+
|
309
|
+
### 0.1.3 2013-10-03
|
310
|
+
|
311
|
+
* Moved Cucumber hooks used only for UniversalLanguageSelector to a separate file
|
312
|
+
|
313
|
+
### 0.1.2 2013-10-03
|
314
|
+
|
315
|
+
* Forgot to require hooks file
|
316
|
+
|
317
|
+
### 0.1.1 2013-10-03
|
318
|
+
|
319
|
+
* Moved Cucumber hooks to hooks.rb file
|
320
|
+
|
321
|
+
### 0.1.0 2013-10-03
|
322
|
+
|
323
|
+
* The gem is working, I think it is time to move from 0.0.x
|
324
|
+
|
325
|
+
### 0.0.7 2013-10-02
|
326
|
+
|
327
|
+
* Moved code from UniversalLanguageSelector repository
|
328
|
+
|
329
|
+
### 0.0.6 2013-10-02
|
330
|
+
|
331
|
+
* Updated env.rb file to the latest version
|
332
|
+
* Added license headers to all files that did not have it
|
333
|
+
|
334
|
+
### 0.0.5 2013-10-02
|
335
|
+
|
336
|
+
* Imported sauce.rb file from browsertests repository
|
337
|
+
|
338
|
+
### 0.0.4 2013-10-02
|
339
|
+
|
340
|
+
* Include env.rb file from browsertests repository
|
341
|
+
|
342
|
+
### 0.0.3 2013-10-02
|
343
|
+
|
344
|
+
* Changed license to GPL-2
|
345
|
+
|
346
|
+
### 0.0.2 2013-10-02
|
347
|
+
|
348
|
+
* Fixed a couple of "gem build" warnings
|
349
|
+
|
350
|
+
### 0.0.1 2013-10-02
|
351
|
+
|
352
|
+
* Added description and summary to gemspec file
|
353
|
+
* Auto generated gem by RubyMine
|