mediawiki-extensions-Visual.../modules/ve-mw/tests/ui/datatransferhandlers/ve.ui.UrlStringTransferHandler.test.js
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

44 lines
1.2 KiB
JavaScript

/*!
* VisualEditor UserInterface UrlStringTransferHandler tests.
*
* @copyright 2011-2016 VisualEditor Team and others; see http://ve.mit-license.org
*/
/* global runUrlStringHandlerTest */
QUnit.module( 've.ui.UrlStringTransferHandler (MW)' );
/* Tests */
QUnit.test( 'paste', function ( assert ) {
var i,
cases = [
{
msg: 'External link converts to internal link',
pasteString: location.origin + mw.Title.newFromText( 'Main Page' ).getUrl(),
pasteType: 'text/plain',
expectedData: function () {
// Explicitly create an internal link so we can assert this behaviour is working
// eslint-disable-next-line new-cap
var a = ve.dm.MWInternalLinkAnnotation.static.newFromTitle( new mw.Title.newFromText( 'Main Page' ) ).element;
return [
[ 'M', [ a ] ],
[ 'a', [ a ] ],
[ 'i', [ a ] ],
[ 'n', [ a ] ],
[ ' ', [ a ] ],
[ 'P', [ a ] ],
[ 'a', [ a ] ],
[ 'g', [ a ] ],
[ 'e', [ a ] ]
];
}
}
];
QUnit.expect( cases.length );
for ( i = 0; i < cases.length; i++ ) {
runUrlStringHandlerTest( assert, cases[ i ].pasteString, cases[ i ].pasteHtml, cases[ i ].pasteType, cases[ i ].expectedData, cases[ i ].msg );
}
} );