Page Menu
Home
WickedGov Phorge
Search
Configure Global Search
Log In
Files
F4139294
codemirror.wikieditor.test.js
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
1 KB
Referenced Files
None
Subscribers
None
codemirror.wikieditor.test.js
View Options
mw
.
loader
=
{
getState
:
jest
.
fn
()
};
const
CodeMirrorWikiEditor
=
require
(
'../../resources/codemirror.wikieditor.js'
),
$textarea
=
$
(
'<textarea>'
)
.
text
(
'The Smashing Pumpkins'
),
cmWe
=
new
CodeMirrorWikiEditor
(
$textarea
);
beforeEach
(
()
=>
{
// Simulate the button that enables/disables CodeMirror as WikiEditor doesn't exist here.
const
btn
=
document
.
createElement
(
'span'
);
btn
.
id
=
'mw-editbutton-codemirror'
;
btn
.
classList
.
add
(
'tool'
);
btn
.
setAttribute
(
'rel'
,
'CodeMirror'
);
document
.
body
.
appendChild
(
btn
);
// Add WikiEditor context to the textarea.
cmWe
.
$textarea
.
data
=
jest
.
fn
().
mockReturnValue
(
{
modules
:
{
toolbar
:
{
$toolbar
:
$
(
btn
)
}
}
}
);
// Initialize CodeMirror.
cmWe
.
initialize
();
}
);
describe
(
'addCodeMirrorToWikiEditor'
,
()
=>
{
cmWe
.
$textarea
.
wikiEditor
=
jest
.
fn
();
it
(
'should add the button to the toolbar'
,
()
=>
{
cmWe
.
addCodeMirrorToWikiEditor
();
expect
(
cmWe
.
$textarea
.
wikiEditor
).
toHaveBeenCalledWith
(
'addToToolbar'
,
expect
.
objectContaining
(
{
groups
:
{
codemirror
:
expect
.
any
(
Object
)
}
}
)
);
}
);
it
(
'should be readonly when the textarea is also readonly'
,
()
=>
{
const
textarea
=
document
.
createElement
(
'textarea'
);
textarea
.
readOnly
=
true
;
const
cmWe2
=
new
CodeMirrorWikiEditor
(
textarea
);
cmWe2
.
initialize
();
cmWe2
.
addCodeMirrorToWikiEditor
();
expect
(
cmWe2
.
readOnly
).
toEqual
(
true
);
expect
(
cmWe2
.
state
.
readOnly
).
toEqual
(
true
);
}
);
}
);
describe
(
'updateToolbarButton'
,
()
=>
{
it
(
'should update the toolbar button based on the current CodeMirror state'
,
()
=>
{
const
btn
=
document
.
getElementById
(
'mw-editbutton-codemirror'
);
cmWe
.
setCodeMirrorPreference
(
false
);
cmWe
.
updateToolbarButton
();
expect
(
btn
.
classList
.
contains
(
'mw-editbutton-codemirror-active'
)
).
toBeFalsy
();
cmWe
.
setCodeMirrorPreference
(
true
);
cmWe
.
updateToolbarButton
();
expect
(
btn
.
classList
.
contains
(
'mw-editbutton-codemirror-active'
)
).
toBeTruthy
();
}
);
}
);
File Metadata
Details
Attached
Mime Type
text/x-asm
Expires
Wed, Aug 19, 15:00 (3 w, 5 d ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
f7/ee/58f5829c8b6fa11eb52615000122
Default Alt Text
codemirror.wikieditor.test.js (1 KB)
Attached To
Mode
rMWPROD MediaWiki Production
Attached
Detach File
Event Timeline
Log In to Comment