##// END OF EJS Templates
Make notebook tests play nicely with SlimerJS...
Make notebook tests play nicely with SlimerJS - notebook/dualmode_markdown.js - notebook/safe_append_output.js

File last commit:

r16831:e628bb16
r16831:e628bb16
Show More
dualmode_markdown.js
42 lines | 2.1 KiB | application/javascript | JavascriptLexer
// Test
casper.notebook_test(function () {
this.is_rendered = function(i) {
return this.evaluate(function(i) {
return !!IPython.notebook.get_cell(i).rendered;
}, {i:i});
};
var a = 'print("a")';
var index = this.append_cell(a);
this.execute_cell_then(index, function(index) {
// Markdown rendering / unredering
this.select_cell(index);
this.validate_notebook_state('select ' + index, 'command', index);
this.trigger_keydown('m');
this.test.assertEquals(this.get_cell(index).cell_type, 'markdown', 'm; cell is markdown');
this.test.assert(!this.is_rendered(index), 'm; cell is unrendered');
this.trigger_keydown('enter');
this.test.assert(!this.is_rendered(index), 'enter; cell is unrendered');
this.validate_notebook_state('enter', 'edit', index);
this.trigger_keydown('ctrl-enter');
this.test.assert(this.is_rendered(index), 'ctrl-enter; cell is rendered');
this.validate_notebook_state('enter', 'command', index);
this.trigger_keydown('enter');
this.test.assert(!this.is_rendered(index), 'enter; cell is unrendered');
this.select_cell(index-1);
this.test.assert(!this.is_rendered(index), 'select ' + (index-1) + '; cell ' + index + ' is still unrendered');
this.validate_notebook_state('select ' + (index-1), 'command', index-1);
this.select_cell(index);
this.validate_notebook_state('select ' + index, 'command', index);
this.trigger_keydown('ctrl-enter');
this.test.assert(this.is_rendered(index), 'ctrl-enter; cell is rendered');
this.select_cell(index-1);
this.validate_notebook_state('select ' + (index-1), 'command', index-1);
this.trigger_keydown('shift-enter');
this.validate_notebook_state('shift-enter', 'command', index);
this.test.assert(this.is_rendered(index), 'shift-enter; cell is rendered');
this.trigger_keydown('shift-enter'); // Creates one cell
this.validate_notebook_state('shift-enter', 'edit', index+1);
this.test.assert(this.is_rendered(index), 'shift-enter; cell is rendered');
});
});