Commit graph

507 commits

Author SHA1 Message Date
David Lynch d97b734352 MWWikitextStringTransferHandler: Perform Parsoid cleanup on result
Parsoid markup delivered as a result of a paste was being handled differently.

Bug: T183173
Change-Id: Ic563d2c5cd1f663f35860892b369fb7ba34b9c55
2018-01-22 14:43:19 -08:00
James D. Forrester 0a7a845a42 doc: Bump copyright year
Change-Id: I0b299c840ede1a1b8552cecfc70c5760ab036181
2018-01-03 17:45:07 +00:00
Ed Sanders 169ce28c44 Remove duplication from browser whitelist
The whitelist isn't checked for blacklisted browsers,
so if all non-blacklisted browsers are whitelisted,
set the whitelist definition to all (null).

Change-Id: I8ee3569d9d5be2eda9153f1b087c1be385f93d9c
2017-10-12 16:54:46 +01:00
Željko Filipin fe09c22e33 Delete Ruby Selenium tests
Tests are broken most of the time. Ruby framework will be deprecated next month. Selenium tests
that are needed should be implemented in Node.js.

Bug: T164479
Change-Id: I8ec1d9b19b9538936c508daf2b50249a705b3170
2017-09-29 16:55:12 +02:00
James D. Forrester 2c70792c4f Replace constructive with progressive UI flag
Change-Id: Iae36e978978ed6642f44606a934c540cf5f8537f
2017-09-26 15:14:32 -04:00
Arlo Breault 3e96d8ed5a Use figure-inline instead of span for inline media
Bug: T118520
Depends-On: I0681c39301e52a3368b53d38ed518ac66e18f0d6
Change-Id: Id8ec5b77207f43fc7c379b35859dc09f264e2c04
2017-09-05 12:17:14 -04:00
David Chan c87abccdf9 MWLinkAction: Don't annotate close tags
Change-Id: I273838eba4cb259cf053ce88378da10b0e241155
2017-08-13 11:33:43 -04:00
Timo Tijhof d8a532c87e tests: Remove QUnit.newMwEnvironment from ve.test.utils.mwEnvironment
Two problems:
* At least one caller already calls QUnit.newMwEnvironment(), which means
  it runs twice which is unsupported and breaks If4141df10eae55 in core.
* It assumes the return will contain 'setup' and 'teardown', which
  is internal and also changes with If4141df10eae55 in core.

Using 'setup' and 'teardown' for this within VE-MW is fine.

First attempt is to simply remove it. Uses that already called
QUnit.newMwEnvironment are effectively unchanged. Uses that didn't
and only pass ve.test.utils.mwEnvironment to QUnit.module directly
will now run without core's QUnit.newMwEnvironment() setup/teardown.

If that breaks anything, we can add it back to those tests that actually
need it.

Change-Id: I9ef0368ba58daf1c7dc92d083ae79c108cc27638
2017-07-20 00:15:51 +00:00
Ed Sanders 835a775a49 build: Upgrade grunt-eslint from 19.0.0 to 20.0.0
Mostly indent and regex fixes.

Change-Id: Iaf9d02363c78cb71deec5c4cab53a05b67f60600
2017-07-18 12:55:33 +01:00
David Lynch 7e678dc81a Update VE core submodule to master (b528a5321)
New changes:
44d2d666c Remove custom icon sizing from block slugs
793d131f9 Ignore covering annotations when looking for plain text pastes
b0025f3ab dm.Document fixupInsertion: check suggestedParents as well
73ce638f1 ve.ui.TableLineContext: Fancier popups
9d54d531e Visual Diff: add internal list diff
4f4e121b5 DiffElement: Add hacky support for template-defined references

Local changes:

dm.SurfaceFragment tests: exercise fixupInsertion for mwHeadings

Core VE doesn't have any elements with suggestedParents, so make sure this is
properly tested.

Bug: T153315
Bug: T162819
Bug: T164017
Bug: T165865
Change-Id: I01489226d282abe71020e65358ead24fe07692f7
2017-06-28 20:57:19 +01:00
Ed Sanders c4f93b1411 Ensure MWInlineImages get the ve-ce-leafNode class
Without this class, offset calculations fail and model/view
sync can be lost.

Bug: T167009
Change-Id: Ie7b6551ac5a532949c14122b9ee7584a794af0f2
2017-06-26 12:43:23 +00:00
Ed Sanders 004ca16a8f Remove mobile browsers from the blacklist
They are already blacklisted by MW:
https://www.mediawiki.org/wiki/Compatibility#Browser_support_matrix_.28mobile.29

Change-Id: I8d6bfc415604a74b6da82d8c4b8f7d9ec7b9d89d
2017-05-22 14:58:54 +02:00
James D. Forrester 8e88db4232 Follow-up 7e72163ea: Fix CBN alien unit test I missed and force-merged
Whoops.

Change-Id: I21e30efd930458f6c1509e2f3d947f94d5ec5ad2
2017-05-21 16:32:08 +02:00
James D. Forrester 229d6cdf3b Update VE core submodule to master (fbeb0db2c)
New changes:
d61440346 Add logging to the rebase server and client
d1d2539ae rebaser: Add script to convert a log file to a test case
0896d5f05 lib: Update README files for OOjs and OOjs UI
045ae87fb Localisation updates from https://translatewiki.net.
04b276e16 VisualDiff: Make annotation whitespace trimming configurable
dd04912e5 Localisation updates from https://translatewiki.net.
11fc30709 MobileContext: fix button spacing
7898acd0b Fix typos and minor lint issues
4e3e2deb9 Avoid using the global namespace in test files
1ed81efa1 build: Update eslint to 0.4.0 and make a pass

Bug: T163473
Bug: T164166
Change-Id: I4bab4260d6b05ff0277cacd167186336acc02080
2017-05-10 10:02:54 -05:00
Ed Sanders 59b3f2e0dc Avoid global variables in tests and build
Change-Id: I44dd3c3980f88e660798962c4aa0229b62760796
2017-04-29 12:37:53 +01:00
Ed Sanders 381f143a27 QUnit: Remove all code for counting tests
Change-Id: Ifc20282a4da1aed9be2a9215c13f9a4e3e30168f
2017-04-28 17:03:20 +01:00
jenkins-bot 323f2479ea Merge "Add basic support for Parsoid HTML5 video/audio" 2017-04-28 15:26:44 +00:00
Ed Sanders 0c2bb3da9c Add basic support for Parsoid HTML5 video/audio
Change-Id: I30b787261c57e912e571170d8aa2d04726b6aa3a
2017-04-28 14:08:18 +01:00
David Lynch 88f3191926 tests: MWInternalLinkAnnotation getFragment
Also, fix docs for it. It could also return null for a missing fragment.

Change-Id: Ib6df379c5c3686a59026b6b66f26b3050ede231a
2017-04-27 11:21:58 -05:00
Ed Sanders a7477a869f Move out Cite-specific unit tests in WT transfer handler
Change-Id: Ibea6994a208e4b0b1022896eb31dd2f36f0fd6c6
2017-04-20 17:07:46 +01:00
James D. Forrester 3a382e6398 Update VE core submodule to master (fc46ed86f)
New changes:
719f8c667 ve.ce.DocumentNode: toggle all contentEditable properties, not just the outer one
35cadd7db Introduce single-line mode for surfaces
41fe321b2 Restore pointer-events comments for IE10 support
42f556820 Upgrade to jQuery v3
c1b8f142c Pass toolbarConfig position to actions toolbar by default
0d4c6a5fc Fix styling of table context in MW theme
db6eb4ebf Localisation updates from https://translatewiki.net.

Bug: T161944
Bug: T162808
Bug: T162830
Change-Id: I9b11673b4a77b7aebcdc282953d83ade08a8d8bd
2017-04-17 11:25:00 -07:00
James D. Forrester ca6cf4e914 ve.test.utils: Don't try to write user options in test suites
Bug: T162810
Change-Id: I8c2588fe4f7577b962200b583efd68f9cb80367e
2017-04-13 00:42:51 +00:00
James D. Forrester d1c24ce226 Update VE core submodule to master (da9c49395)
New changes:
dc0cad28c tests: Factor out ve.dm.TestRebaseClient/Server into their own files
98061108b Convert RebaseServer tests to data provider
3e746a51b Update OOjs to v2.0.0
16231a812 [BREAKING CHANGE] Drop support for Internet Explorer 9
64daeb4b5 Localisation updates from https://translatewiki.net.
3310e876c Update DOMPurify to 0.8.5
579033a83 Follow-up 16231a81: Drop IE9 support in createDocumentFromHtmlUsingIframe

Bug: T162277
Change-Id: If17c6a3fac0920db29f80069f344ffd6be46c3c9
2017-04-10 08:32:51 -07:00
Bartosz Dziewoński 5afd15b2cc ve.ui.MWLinkAction: Use delayed sequence
The trailing space at the end of the regexp is no longer required to
prevent matching (and executing) too soon. We also don't need to know
about trailing punctuation.

However, to prevent the match from ending in the middle of typing, we
have to allow for ' ' and '-' at the end of the match.

Tweaked tests to better match the intent now that a trailing space is
not included, but they pass without changes too, the command is quite
permissive.

Bug: T117165
Depends-On: Ie36046fa43ce49f8a25c99f2de577eb296d68a51
Depends-On: I2af0a738afa43295bf6d7d612cac4349bc6cd20d
Change-Id: I7c28d5c93b1a441387ad05a75846af83d2b21b6a
2017-03-15 21:58:13 +00:00
Ed Sanders d85e8da9e2 Remove MSIE from blacklist, already blacklisted upstream
We support all versions of IE that MW supports, so no need
for additional blacklisting.

Bug: T160494
Change-Id: I771459b4d6a0e2d5781a69a905a51323369b3b66
2017-03-15 17:42:34 +00:00
James D. Forrester 6ab24fe9f0 Update VE core submodule to master (41134af2b)
New changes:
1e12d0174 Generalize DiffElement logic (improves lists and tables)
24e0c7a94 Localisation updates from https://translatewiki.net.
32759ae86 Allow variable-length sequences without a fake space terminator, use for autolinking
82c204ba0 QUnit.assert.equalHash: Correctly compare JSON representation
2e5462610 DiffElement: Allow a node change to be an attribute change *and* a linear diff
41134af2b ve.ui.LinkAction: Allow autolinking ranges including trailing spaces again

Local changes:
Updated tests for 32759ae86: the autolinkUrl command no longer expects
trailing whitespace to be included in the range.

Bug: T117165
Bug: T149537
Bug: T158518
Change-Id: I5c2d5b97894fc93f49ce6270a198f3dfdcd09986
2017-03-14 12:47:32 -07:00
Bartosz Dziewoński b109c3405f ve.ui.MWWikitextStringTransferHandler: Avoid API call for magic links
Updated tests to stop assuming that MWWikitextStringTransferHandler
always goes through an API request and Parsoid.

Bug: T117165
Change-Id: I24dffaaf3b4051b1b807ec29ac456d24da2f1fe9
2017-03-13 19:54:19 +01:00
James D. Forrester 9b4e27a91c MWWikitextStringTransferHandler.test: Don't pass around an invalid doc
Even if it sounds cool, it isn't.

Change-Id: Ib6612bc0ea8d66fc1964b3a782ad56356da65952
2017-03-02 05:43:10 +00:00
Željko Filipin f776983204 Update tests to Selenium 3
Bug: T158074
Change-Id: I784fc7bb85f32d5e50b5abb500c51493839ccebe
2017-02-28 14:39:00 +01:00
Bartosz Dziewoński 2c78411113 ve.test.utils.createSurfaceFromDocument: Actually attach surface to DOM
Bug: T158141
Change-Id: I999bcdc7095a3b9e2a86a7d5eca0e1f3ceb175ef
2017-02-16 01:17:17 +01:00
Ed Sanders 1d7f929a91 Update VE core submodule to master (139bdf7)
New changes:
d79138b Overwrite selected content when pasting via DataTransferItem
3c4737f Ensure clipboard is never empty text
3b1339e Create dummy platform and target for tests
4d63c8e Pass text as string to insertDocument when detected as plain text

Local change:
Remove VE standalone module

Flow used to use it, but not anymore. Going forward no one should
be using it in MW.

Bug: T154020
Bug: T156302
Bug: T156498
Depends-On: I078c244ef524669da477a43f9b37c847252e5ad7
Change-Id: Ifc4be16269f819890f2dcdddbbdebf9694ad2868
2017-01-29 18:50:47 +00:00
James D. Forrester 122f49b2dd build: Bump file copyright notices for 2017
Change-Id: I3c20809e71cc0da58123e1b5f29c4f3aac945496
2017-01-03 08:58:33 -08:00
Ed Sanders 2ee9e62a4d Use upstream media search widget from core
Bug: T140166
Depends-On: If53ef7f4b62c7a5d4da565c14dd2a353778694e5
Change-Id: I28845e9c143e78d3a377f067606c62da212e3bf1
2016-11-29 17:19:14 +00:00
Ed Sanders 37ccaca2ec eslint: Re-enable wrap-iife and partially enable dot-notation
Change-Id: I4420d66f528dcb18ebe2b9f63996661b2969f833
2016-11-12 14:43:43 +00:00
James D. Forrester 36befda61c build: Replace jscs and jshint with eslint
It's new, it's fresh, it's amazing, it's here.

Change-Id: I5dc784411f704685ed5cc763a2b2b1c5d3e5a610
2016-10-28 18:33:15 +00:00
Alex Monk 25933c09ec Strip RESTBase IDs from HTML generated when wikitext is pasted
Bug: T146054
Change-Id: I0013673a9e41ea191ea64f3208a06288efb2ecd3
2016-10-13 17:42:11 -07:00
Ed Sanders e1e02fa0d8 Update VE core submodule to master (90cbd62)
New changes:
abf8f41 Replace Array#concat with Array#push in converter
02aeb90 Localisation updates from https://translatewiki.net.
902ddda Use safer batchPush in converter
6368191 Use current surface's sequence registry in command help dialog
f7ce4b9 Optimize batchPush on small lists
fb43a0a ve.batchPush: add unit test to exercise long-array path
d6c7d24 Factor out RESTBase ID regular expression
ffcbf4b IndentationCommand: Use hasMatchingAncestor
d447023 Allow ommission of range from ve.dm.Document cloneFromRange
cfbc344 Don't strip empty paragraphs on paste if they are generated
01c918b Localisation updates from https://translatewiki.net.
1467947 Fix documentation of getMetadataIdRegExp

Local changes:
* Define RESTBase ID pattern in platform and fix slightly
* Bring in paste test from core, which requires platform switching.

Bug: T147607
Depends-On: Ifc1c15872a50f915e5ef8d561b3a363dc5f4d28f
Change-Id: I3eb21e115de92a67afa85b5675fcbca5b111adb6
2016-10-13 17:10:33 -07:00
Roan Kattouw bb45d984ca dm.MWInternalLinkAnnotation: Fix href normalization for special characters
<a href="Foo%3F"> would dirty-diff to <a href="Foo?"> and also render
as such, pointing to the wrong page.

We also called decodeURIComponent() on the href twice, which can't
have been good.

Move URI decoding and underscore normalization into
getTargetDataFromHref(), and add rawTitle for callers that need it.
Put rawTitle in the origTitle attribute, so that equivalence
comparisons (decode(origTitle) === title) work as intended.

Bug: T145978
Change-Id: I29331a4ab0f8f7ef059c109f6813fa670a2c7390
2016-09-22 09:10:41 -07:00
David Lynch 5bc54fd036 dm.MWInternalLinkAnnotation: Add some test cases
Change-Id: Ie338d5538959ea2cc296886b623e9dc2cd84fa8f
2016-09-21 09:57:45 -07:00
Željko Filipin f3f432e722 Disable failing Selenium tests
The tests are failing with RSpec::Expectations::ExpectationNotMetError
for 2-3 days in a row.

Bug: T145861
Change-Id: Ieec2a67857b90033cdd0ddf63025d2af9de504a5
2016-09-16 13:12:02 +02:00
Ed Sanders 5788340b49 Update VE core submodule to master (632f0a9)
New changes:
14b5fbc [BREAKING CHANGE] Move originalDomElements to the IV store and use MD5
c5d21f0 Provide methods to (de)serialize transactions

Local changes to move originalDomElements to IV store

Depends-On: I8a71c1a40ec35108d0a9a388da6f75632f8dc53c
Depends-On: I32c9b5f984fcf96e3354841ecfcd444149e8f159
Change-Id: I0fbb6324eede94558426178cbdad6b5daf0f8318
2016-08-24 18:14:14 +00:00
Željko Filipin 59d771e1ac Fix failing Selenium tests
There were a couple of pieces of language screenshots related Ruby code
left that was breaking Selenium tests.

Bug: T139613
Change-Id: I3d327b3cfd5f52e60fee07095eefdd8feecaba98
2016-08-24 16:47:14 +00:00
Željko Filipin 2fb5c18ced Upload language screenshot files using commons_upload Ruby gem
Use the latest version of commons_upload. Delete no longer needed files
from previous Ruby implementation.

Bug: T143563
Change-Id: I7c0ca64aeea54501c51eb56a950143d5af251cf7
2016-08-24 14:47:45 +00:00
Željko Filipin cbccba89a0 Remove Ruby implementation of language screenshots
It is now implemented in JavaScript/Node.js.

Bug: T132574
Change-Id: I299332ac4f849b951ba24564bd0282ca0e25afd2
2016-08-22 12:19:21 +02:00
Translation updater bot 7660980ab5 Localisation updates from https://translatewiki.net.
Change-Id: I75f5c71990c63b2a21c85ae9217476101b384cc5
2016-08-17 22:42:44 +02:00
Translation updater bot 567bc298c5 Localisation updates from https://translatewiki.net.
Change-Id: I77aca2aafa920a83a17af3e67e686f591c38c93a
2016-08-11 23:59:28 +02:00
James D. Forrester cad4066bc9 Gemfile: Bump mediawiki_api from 1.7.1 to 1.7.2
Bug: T129483
Change-Id: Ief831d41df9352a824f4bd7a2a030cc4681950a2
2016-08-08 10:54:21 -07:00
Translation updater bot 530d911dd5 Localisation updates from https://translatewiki.net.
Change-Id: I17eb6510ad35f8e60f892b10b4430432601b08ec
2016-08-02 22:47:12 +02:00
Translation updater bot 5a0b12bfb4 Localisation updates from https://translatewiki.net.
Change-Id: I92e686fa6e7018b506629fc857fb951f72e84447
2016-07-04 22:35:04 +02:00
Ed Sanders 40d606abdc Test removing all table classes
Bug: T138896
Depends-On: I2698428f0aa69e2dcec2680efed44d064bf6e542
Change-Id: I5df5d51fc5b69df6eae40ac29f6b82f446b26ae8
2016-06-30 17:41:42 +01:00