Commit graph

2783 commits

Author SHA1 Message Date
Stephen Niedzielski 9114981380 Update: show placeholder preview for more failures
Functional changes

- Show the default / error preview for all extract request failures
  except those due to network circumstances (such as CORS) or no
  connectivity (offline). Previously, the error preview was displayed
  only for missing pages.

- FETCH_COMPLETE was previously only dispatched after FETCH_END. Now
  it's also dispatched after FETCH_FAILED. The additional "fetch
  complete" is not expected to impact logging. The states of success
  are: START, END, COMPLETE. The new failure states are consistent with
  success: START, FAILED, COMPLETE.

Testing

Errors may be stimulated in a number of ways including:

- Timeout: add a timeout field to RESTBaseGateway /
  MediaWikiGateway.fetch().

  http://api.jquery.com/jquery.ajax/

- Bad request: change MediaWikiGateway.fetch's action field to
  `Math.random() > 0.5 ? 'query' : 'fail'` and RESTBaseGateway.fetch's
  url field to
  `RESTBASE_ENDPOINT + ( Math.random() > 0.5 ? encodeURIComponent( title ) : '%%%' )`.

- Desired Gateway can be configured in Gateway#createGateway().

- Note: T184534 describes a circumstance where cached previews may not
  appear when offline. Disable browser caching to avoid confusion.

Bug: T183151
Bug: T184534
Change-Id: I7332284da0e0fb1ecd234a6f1e146ebd9ad8d81f
2018-01-16 18:44:00 -06:00
Stephen Niedzielski d9d85ab971 Hygiene: add more fetch failure test cases
Add fetch failure tests for integration and preview state.

Bug: T183151
Change-Id: I1a541d96f3a83b99c26a5180ad5ee8626cda97d2
2018-01-16 18:37:03 -06:00
Stephen Niedzielski 6ba57786fb Update: missing preview copy
Update the placeholder extract and button text shown when a page preview
is unavailable from:

  "popups-preview-no-preview": "Looks like there isn't a preview for this page"
  "popups-preview-footer-read": "Read"

To:

  "popups-preview-no-preview": "There was an issue displaying this preview"
  "popups-preview-footer-read": "Go to this page"

Bug: T183151
Change-Id: I0600dbc2e4d51a13675041d3c0741a793f4eae37
2018-01-16 18:36:54 -06:00
Stephen Niedzielski 8ca0cf2088 Fix: preview page URL for 404 RESTBase responses
Functional changes:

- Require page URL when constructing a PreviewModel null object. These
  models have valid titles and are used to display a preview when an
  extract is unobtainable. When presented with an empty URL, their
  linkage incorrectly pointed to the browser's current URL. Additional
  tests were added to verify the fix.

- Check missing title in addition to falsy response in RESTBase gateway
  and update the test assertion to check title. It isn't clear if this
  can happen in the wild.

- Forbid state mutation in the conclusion of
  MediaWikiGateway.getPageSummary() with a call to Deferred.promise().
  This is consistent with the rest of repo including RESTBaseGateway.

  http://api.jquery.com/deferred.promise/

Nonfunctional changes:

- Collapse two RESTBase gateway 404 tests into one as the scenarios and
  expectations were very similar.

- Add failure HTTP status to 'MediaWiki API gateway handles API failure'
  test stub HTTP response for consistency with other cases.

- Add nullity expectations to JSDocs touched and fix a couple typos
  throughout.

- Make the gateway tests a little more consistent by collapsing Deferred
  variable usage where appropriate.

This change is necessary to the completion of T183151 which uses the
PreviewModel null objects for additional error cases.

Bug: T183151
Change-Id: Ib77627fb9c80d8e806208bbafcfc615b130e3278
2018-01-16 18:36:48 -06:00
Translation updater bot ba3ee4e737 Localisation updates from https://translatewiki.net.
Change-Id: Ia11a7bb86da0c2efc3a624045d08d2ddf0f0052f
2018-01-13 22:15:25 +01:00
jenkins-bot 4ba0335640 Merge "extension.json: Remove space before colon" 2018-01-10 14:41:45 +00:00
Fomafix 63f7dd2a1d extension.json: Remove space before colon
Change-Id: Iec606d9769b00e9653fa36e00a3798f80cd9c7f7
2018-01-10 14:38:30 +01:00
Translation updater bot ea23d457f8 Localisation updates from https://translatewiki.net.
Change-Id: I4b3a186144f858807e44602a75809ae7d1d8b598
2018-01-09 22:29:50 +01:00
Translation updater bot 1af082ce7e Localisation updates from https://translatewiki.net.
Change-Id: I725050165fc9d0eb6f79b53eadbb80b446577861
2018-01-08 22:36:12 +01:00
Translation updater bot 683da8bf10 Localisation updates from https://translatewiki.net.
Change-Id: If67921fd13b5bda8eafdfcd229040289e29f9a1e
2018-01-07 22:47:29 +01:00
jdlrobson ff49e7627b Better error handling for unexpected responses
Bug: T182639
Change-Id: Iea04fe41b4be8e15927e93f16cbb4bb44328374f
2018-01-02 10:42:12 -08:00
Translation updater bot cd2b0baaf8 Localisation updates from https://translatewiki.net.
Change-Id: I6e9e69050d141f1f0ffe2cb831a1c1be88eee472
2018-01-02 10:08:17 +01:00
libraryupgrader 9cccf15c43 build: Updating mediawiki/mediawiki-codesniffer to 15.0.0
The following sniffs are failing and were disabled:
* Squiz.Scope.MethodScope.Missing

Change-Id: I163626b66b33cb185bbcedb8f00d85890628f9dc
2017-12-30 02:19:18 +00:00
jenkins-bot 76bfe72d97 Merge "Clean up ESLint configuration" 2017-12-28 09:52:02 +00:00
Translation updater bot 330513f569 Localisation updates from https://translatewiki.net.
Change-Id: Ic8bf900933fbf6244cbbfdec96ee91d5931c17f1
2017-12-28 09:59:58 +01:00
Umherirrender 3515b32cfe Use absolute class name in @covers
Namespaced classes need to be absolutely named.

Fixed one @covers of testEventHandling
Change-Id: I92ae621ac35992c3dd6070528e255fafdaa1af76
2017-12-27 20:53:07 +01:00
Translation updater bot 97043e46b9 Localisation updates from https://translatewiki.net.
Change-Id: I6b53e0835a2500b1fd216eb261f06ac5ad1b254a
2017-12-23 22:27:08 +01:00
Željko Filipin b174a6f298 Clean up ESLint configuration
parserOptions is redundant sice env is already set to es6.

Bug: T177262
Change-Id: If478a0aaeb7fef184be965645fbd2cb276b630c8
2017-12-22 16:12:54 +01:00
Translation updater bot 819ef7da76 Localisation updates from https://translatewiki.net.
Change-Id: I9eed9d811de908d38dc32b5f2d3f4ef3023dfe79
2017-12-21 23:15:24 +01:00
Željko Filipin c175cffe9b Fix location of LocalSettings.php
It used to be in tests/browser, now it's in tests/selenium.

Bug: T177262
Change-Id: I102c77834f4c63da06fcc6140a28de9dba231ae6
2017-12-19 13:35:46 +01:00
Translation updater bot 1333f3be9c Localisation updates from https://translatewiki.net.
Change-Id: I2e3ba0da60873bcffc676eba8fd8523418582efe
2017-12-18 23:06:58 +01:00
Translation updater bot 12b2fffaf2 Localisation updates from https://translatewiki.net.
Change-Id: Icb50e3790daa805ae8df7676864123a4a5705047
2017-12-17 22:26:11 +01:00
Sam Smith 7258be717c instrumentation: Bump schema revision
Following on from I6643168a, the client-side JSONSchema validation does
handle the integer type [0] so we can enforce that timestamps are integers
on the client as well as on the server.

[0] https://github.com/wikimedia/mediawiki-extensions-EventLogging/blob/3d0837e5/modules/ext.eventLogging.core.js#L102-L103

Bug: T182000
Change-Id: I79af7975388d50a570e209b212c0c90322e4a23a
2017-12-14 17:27:42 +00:00
Translation updater bot 4420a97533 Localisation updates from https://translatewiki.net.
Change-Id: I8ed4141412a50fb7d75938d7db0d6abfa2aaefcd
2017-12-13 23:34:28 +01:00
libraryupgrader affc1924e3 build: Updating mediawiki/minus-x to 0.2.1
Change-Id: I867b61066087d4b2161f1ca7d43efcc05440d4b2
2017-12-11 01:41:06 +00:00
Translation updater bot 67ddbd9552 Localisation updates from https://translatewiki.net.
Change-Id: I62a8b2dfe20aaf30c6b925f0ad6e4092ba556fbc
2017-12-07 23:07:51 +01:00
Albert221 8feedf8368 Fix $.fn.hover is deprecated
Bug: T180861
Change-Id: I6a2cfbd26535c3e778a811e2f8ed5939123d6571
2017-12-06 00:52:19 +01:00
jenkins-bot e0687ca3f3 Merge "Schema: convert timestamp into integer" 2017-12-05 18:22:48 +00:00
Translation updater bot 9250cbc241 Localisation updates from https://translatewiki.net.
Change-Id: I5312f27847b8ca6ffdc46749bf7edd998266a89a
2017-12-05 09:41:27 +01:00
Baha 38a7978edb Schema: convert timestamp into integer
Mixed types such as integers and floats are causing issues with Hive.

Bug: T182000
Change-Id: I6643168a67207a59d56d7d39b2408587a5bb3524
2017-12-04 15:47:31 -05:00
Translation updater bot 1e31d95c56 Localisation updates from https://translatewiki.net.
Change-Id: Ieda772beb2bd07043a0d092e7b733bc984765e6a
2017-11-30 23:52:52 +01:00
Volker E c93074931a BetaFeatures logo: Merge logo and title path
In the process of updating BetaFeatures logo it got
identified that the logo is better marked up as one
`<path>` element.
Follows up Id5acd5e918dfa895210a622612f4a1cda5bef985

Bug: T180427
Change-Id: I2e566650a321a3a0f371ca9d71fc4328ee5e651a
2017-11-28 10:30:37 -08:00
Volker E 5f1bb03ea8 Unify BetaFeatures SVG screenshot markup
Unifying BetaFeatures SVG screenshot markup by:
- adding/changing `id`s for better readability,
- sorting attributes,
- using full pixel values where applicable and
- generalizing attributes on `g` where applicable.

Follows up I91e0495e922a1fcf094af14e424a410fad313ba0.

Bug: T180427
Change-Id: Id5acd5e918dfa895210a622612f4a1cda5bef985
2017-11-27 23:54:06 -08:00
Translation updater bot f6b2908bcd Localisation updates from https://translatewiki.net.
Change-Id: I25d0792bc275639b8714128651695ca4072ff59e
2017-11-24 23:18:36 +01:00
Prateek Saxena 027716dfd2 Update colors of betafeatures icons
* Light gray - Base80

Old: https://phabricator.wikimedia.org/F10912613
New: https://phabricator.wikimedia.org/F10912612

Bug: T180427
Change-Id: I91e0495e922a1fcf094af14e424a410fad313ba0
2017-11-21 12:03:02 +05:30
Translation updater bot 34a6fc86f0 Localisation updates from https://translatewiki.net.
Change-Id: I5506ae8d9ed09d97bc01df51662d5d3c78cfacac
2017-11-19 22:32:56 +01:00
Baha 58cdac8882 Schema:Popups - use revision 17430287
Event timestamp (as reported by `window.performance.now()`) is also sent
along with every action.

Bug: T180036
Change-Id: Ie3a648298005d51b8b4fbaa6a53e78caf50fa2d3
2017-11-17 12:49:22 -05:00
Translation updater bot e1be05d73f Localisation updates from https://translatewiki.net.
Change-Id: I63997e0626a5d67c42d4a9b9d885c93b072de649
2017-11-14 22:36:41 +01:00
Translation updater bot c3b63c74e5 Localisation updates from https://translatewiki.net.
Change-Id: I9bb67bd26311a0656e9e3e3981b425bf515369be
2017-11-10 22:47:58 +01:00
Umherirrender 49f0ec9d19 build: Always exclude vendor
Change-Id: I6b69379a57e0695d6183e34bca41653033a9da37
2017-11-10 17:42:04 +00:00
joakin 122332c66b Test: Update the test runner dependency
To 2.2 which just updates minor versions of dependencies (jsdom, sinon,
qunit).

See https://github.com/joakin/mw-node-qunit/blob/master/CHANGELOG.md#220

Change-Id: I26e6b060b0124d9f91aaa7ccc1d8be1981e5de1e
2017-11-10 17:10:59 +01:00
Translation updater bot deccd841c3 Localisation updates from https://translatewiki.net.
Change-Id: I3083afd7edc3429727dd64900c10d193209e813c
2017-11-07 22:45:27 +01:00
Translation updater bot 38f8038690 Localisation updates from https://translatewiki.net.
Change-Id: I35500445a9c7d276eb256c75cf363236c1cce622
2017-11-05 22:34:23 +01:00
Translation updater bot 99728f9672 Localisation updates from https://translatewiki.net.
Change-Id: Iacabb937570865e1c8ae2fc2a3a5d36287fec8ac
2017-11-04 22:50:53 +01:00
Kunal Mehta 74004f3bfc build: Adding MinusX
Change-Id: Ia4362098d86b2fdbf44ebd6e2ed7d462203b0ce8
2017-11-03 18:53:51 -07:00
Translation updater bot 15d4a4e4b6 Localisation updates from https://translatewiki.net.
Change-Id: I4db07d35fb26bd9e221f630b7d5f56557e998fb3
2017-11-02 22:59:35 +01:00
Translation updater bot ac436d510f Localisation updates from https://translatewiki.net.
Change-Id: I5e9ac5a5f110547be3e3c3e0a99422a51843e06f
2017-11-01 23:11:01 +01:00
jenkins-bot 305944a77a Merge "Port Popups browser tests to selenium" 2017-11-01 20:56:39 +00:00
jdlrobson cf774be88b Port Popups browser tests to selenium
Bug: T177262
Change-Id: Ie77cf7bc79f454904983ed5cf65dc9fe2b1ececc
2017-11-01 13:31:36 -07:00
Volker E dc8f9c118b Use standard close icon
Making use of standard close icon and add `opacity` transition
for slight user feedback on states.

Bug: T50067
Change-Id: I258a50452eba8f9d0bfb550c2ad1a90ef7b6dc1f
2017-11-01 17:00:11 +00:00