mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/Cite
synced 2024-09-23 10:20:12 +00:00
[Cypress] Streamline page edit and VE Cite setup
Change-Id: I4818b662e16f8d70a7d59dcfa29348e9468100df
This commit is contained in:
parent
1a67a23fbc
commit
b4f4dc7fb7
|
@ -6,9 +6,9 @@ const refText1 = 'This is citation #1 for reference #1 and #2';
|
|||
const refText2 = 'This is citation #2 for reference #3';
|
||||
|
||||
const wikiText = `This is reference #1: <ref name="a">${ refText1 }</ref><br> ` +
|
||||
'This is reference #2 <ref name="a" /><br>' +
|
||||
`This is reference #3 <ref>${ refText2 }</ref><br>` +
|
||||
'<references />';
|
||||
'This is reference #2 <ref name="a" /><br>' +
|
||||
`This is reference #3 <ref>${ refText2 }</ref><br>` +
|
||||
'<references />';
|
||||
|
||||
let usesCitoid;
|
||||
|
||||
|
@ -17,25 +17,17 @@ describe( 'Re-using refs in Visual Editor', () => {
|
|||
const title = helpers.getTestString( 'CiteTest-reuseRefs' );
|
||||
|
||||
cy.clearCookies();
|
||||
cy.visit( '/index.php' );
|
||||
|
||||
helpers.editPage( title, wikiText );
|
||||
|
||||
cy.window().then( async ( win ) => {
|
||||
await win.mw.loader.using( 'mediawiki.base' ).then( async function () {
|
||||
await win.mw.hook( 'wikipage.content' ).add( function () { } );
|
||||
} );
|
||||
usesCitoid = win.mw.loader.getModuleNames().includes( 'ext.citoid.visualEditor' );
|
||||
win.localStorage.setItem( 've-beta-welcome-dialog', 1 );
|
||||
win.localStorage.setItem( 've-hideusered', 1 );
|
||||
} );
|
||||
|
||||
helpers.visitTitle( title );
|
||||
|
||||
helpers.waitForMWLoader();
|
||||
cy.window().then( async ( win ) => {
|
||||
await win.mw.loader.using( 'mediawiki.base' ).then( async function () {
|
||||
await win.mw.hook( 'wikipage.content' ).add( function () {} );
|
||||
} );
|
||||
|
||||
} );
|
||||
|
||||
veHelpers.openVEForEditingReferences( title, usesCitoid );
|
||||
} );
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
import * as helpers from './../../utils/functions.helper.js';
|
||||
import * as veHelpers from './../../utils/ve.helper.js';
|
||||
|
||||
function getTestString( prefix = 'CiteTest-templates' ) {
|
||||
return prefix;
|
||||
}
|
||||
const title = getTestString( 'CiteTest-title' );
|
||||
|
||||
const wikiText1 = 'This is reference #1:';
|
||||
const refText1 = 'This is citation #1 for reference #1';
|
||||
|
||||
const wikiText = `${ wikiText1 } <ref name="a">${ refText1 }</ref><br> ` +
|
||||
const wikiText = `This is reference #1: <ref name="a">${ refText1 }</ref><br> ` +
|
||||
'<references />';
|
||||
|
||||
let usesCitoid;
|
||||
|
@ -20,48 +14,26 @@ describe( 'Re-using refs in Visual Editor using templates', () => {
|
|||
cy.clearCookies();
|
||||
helpers.loginAsAdmin();
|
||||
|
||||
helpers.waitForMWLoader();
|
||||
cy.window().then( async ( win ) => {
|
||||
await win.mw.loader.using( 'mediawiki.api' );
|
||||
const response = await new win.mw.Api().postWithEditToken( {
|
||||
action: 'edit',
|
||||
title: title,
|
||||
text: wikiText,
|
||||
formatversion: '2'
|
||||
} );
|
||||
|
||||
expect( response.edit.result ).to.equal( 'Success' );
|
||||
|
||||
await new win.mw.Api().postWithEditToken( {
|
||||
action: 'edit',
|
||||
title: 'MediaWiki:Cite-tool-definition.json',
|
||||
|
||||
text: JSON.stringify(
|
||||
[
|
||||
{
|
||||
name: 'Webseite',
|
||||
icon: 'ref-cite-web',
|
||||
template: 'Internetquelle'
|
||||
},
|
||||
{
|
||||
name: 'Literatur',
|
||||
icon: 'ref-cite-book',
|
||||
template: 'Literatur'
|
||||
}
|
||||
] ),
|
||||
formatversion: '2'
|
||||
} );
|
||||
expect( response.edit.result ).to.equal( 'Success' );
|
||||
cy.log( 'SUCCESS' );
|
||||
} );
|
||||
|
||||
// Logout Admin account
|
||||
cy.clearCookies();
|
||||
helpers.editPage( 'MediaWiki:Cite-tool-definition.json', JSON.stringify( [
|
||||
{
|
||||
name: 'Webseite',
|
||||
icon: 'ref-cite-web',
|
||||
template: 'Internetquelle'
|
||||
},
|
||||
{
|
||||
name: 'Literatur',
|
||||
icon: 'ref-cite-book',
|
||||
template: 'Literatur'
|
||||
}
|
||||
] ) );
|
||||
} );
|
||||
|
||||
beforeEach( () => {
|
||||
helpers.visitTitle( title );
|
||||
helpers.waitForMWLoader();
|
||||
const title = helpers.getTestString( 'CiteTest-templates' );
|
||||
|
||||
cy.clearCookies();
|
||||
helpers.editPage( title, wikiText );
|
||||
|
||||
cy.window().then( async ( win ) => {
|
||||
await win.mw.loader.using( 'mediawiki.base' ).then( async function () {
|
||||
await win.mw.hook( 'wikipage.content' ).add( function () { } );
|
||||
|
|
|
@ -15,7 +15,6 @@ let usesCitoid;
|
|||
|
||||
describe( 'Visual Editor Cite Integration', () => {
|
||||
before( () => {
|
||||
cy.visit( '/index.php' );
|
||||
helpers.editPage( title, wikiText );
|
||||
} );
|
||||
|
||||
|
@ -24,6 +23,9 @@ describe( 'Visual Editor Cite Integration', () => {
|
|||
helpers.waitForMWLoader();
|
||||
|
||||
cy.window().then( async ( win ) => {
|
||||
await win.mw.loader.using( 'mediawiki.base' ).then( async function () {
|
||||
await win.mw.hook( 'wikipage.content' ).add( function () { } );
|
||||
} );
|
||||
usesCitoid = win.mw.loader.getModuleNames().includes( 'ext.citoid.visualEditor' );
|
||||
win.localStorage.setItem( 've-beta-welcome-dialog', 1 );
|
||||
win.localStorage.setItem( 've-hideusered', 1 );
|
||||
|
|
|
@ -35,11 +35,18 @@ export function waitForMWLoader() {
|
|||
}
|
||||
|
||||
export function editPage( title, wikiText ) {
|
||||
visitTitle( '' );
|
||||
waitForMWLoader();
|
||||
cy.window().then( async ( win ) => {
|
||||
await win.mw.loader.using( 'mediawiki.api' );
|
||||
const response = await new win.mw.Api().create( title, {}, wikiText );
|
||||
expect( response.result ).to.equal( 'Success' );
|
||||
const response = await new win.mw.Api().postWithEditToken( {
|
||||
action: 'edit',
|
||||
title: title,
|
||||
text: wikiText,
|
||||
formatversion: '2'
|
||||
} );
|
||||
|
||||
expect( response.edit.result ).to.equal( 'Success' );
|
||||
} );
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue