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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
/* bender-tags: editor */
/* bender-ckeditor-plugins: button,toolbar */
var customCls = 'my_btn';
bender.editor = {
config: {
toolbar: [ [ 'custom_btn', 'expandable_btn', 'clickable_btn' ] ],
on: {
pluginsLoaded: function( evt ) {
var ed = evt.editor,
buttonCmd = new CKEDITOR.command( ed, {
exec: function() {}
} );
ed.addCommand( 'buttonCmd', buttonCmd );
ed.ui.addButton( 'custom_btn', {
label: 'button with custom class',
className: customCls
} );
ed.ui.addButton( 'expandable_btn', {
label: 'expandable button',
hasArrow: true
} );
ed.ui.addButton( 'clickable_btn', {
label: 'clickable button',
command: 'buttonCmd'
} );
}
}
}
};
bender.test( {
'test button class names': function() {
var btn = this.editor.ui.get( 'custom_btn' ),
btnEl = CKEDITOR.document.getById( btn._.id );
assert.isTrue( btnEl.hasClass( 'cke_button' ), 'check ui type class name' );
assert.isTrue( btnEl.hasClass( 'cke_button__custom_btn' ), 'check named ui type class name' );
assert.isTrue( btnEl.hasClass( customCls ), 'check ui item custom class name' );
// (#2483)
assert.isFalse( btnEl.hasClass( 'cke_button_expandable' ), 'check ui item expandable class name' );
},
// (#2483)
'test expandable button class name': function() {
var btn = this.editor.ui.get( 'expandable_btn' ),
btnEl = CKEDITOR.document.getById( btn._.id );
assert.isTrue( btnEl.hasClass( 'cke_button_expandable' ), 'check ui item expandable class name' );
},
// (#2565)
'test right-clicking button': function() {
if ( !CKEDITOR.env.ie ) {
assert.ignore();
}
var editor = this.editor,
btn = editor.ui.get( 'clickable_btn' ),
btnEl = CKEDITOR.document.getById( btn._.id ),
buttonCmd = editor.getCommand( 'buttonCmd' ),
spy = sinon.spy( buttonCmd, 'exec' );
bender.tools.dispatchMouseEvent( btnEl, 'mouseup', CKEDITOR.MOUSE_BUTTON_RIGHT );
assert.areSame( 0, spy.callCount );
}
} );
|