aboutsummaryrefslogtreecommitdiffstats
path: root/tests/api-testing/action/UserInfo.js
blob: 580b67a3d6230c932788f9de6f01525c7c11fa6f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
'use strict';

const { action, assert, utils } = require( 'api-testing' );

describe( "Changing a user's `editfont` option", function getUserOptions() {
	let Rick = action.getAnon();
	const randomPage = utils.title( 'random' );
	const text = 'Random text';

	before( async () => {
		Rick = await Rick.account( 'Rick_' );
	} );

	it( 'should make edits to a page and update the editcount', async () => {
		const result = await Rick.meta( 'userinfo', { uiprop: 'editcount' } );
		const editcount = result.editcount;

		await Rick.edit( randomPage, text );
		await Rick.edit( randomPage, text );
		await Rick.edit( randomPage, text );

		const updatedResult = await Rick.meta( 'userinfo', { uiprop: 'editcount' } );
		const updatedCount = updatedResult.editcount;

		assert.equal( updatedCount, editcount + 3 );
	} );

	it( 'should get users default editfont preference', async () => {
		const result = await Rick.meta( 'userinfo', { uiprop: 'options' } );
		assert.equal( result.options.editfont, 'monospace' );
	} );

	it( 'should change editfont preference from monospace to serif', async () => {
		const token = await Rick.token();
		const result = await Rick.action( 'options', { change: 'editfont=serif', token }, 'POST' );

		assert.equal( result.options, 'success' );
	} );

	it( 'should get users updated editfont preference', async () => {
		const result = await Rick.meta( 'userinfo', { uiprop: 'options' } );
		assert.equal( result.options.editfont, 'serif' );
	} );
} );