Uploaded Test files
This commit is contained in:
parent
f584ad9d97
commit
2e81cb7d99
16627 changed files with 2065359 additions and 102444 deletions
116
venv/Lib/site-packages/notebook/tests/notebook/dualmode.js
Normal file
116
venv/Lib/site-packages/notebook/tests/notebook/dualmode.js
Normal file
|
@ -0,0 +1,116 @@
|
|||
// Test the notebook dual mode feature.
|
||||
|
||||
// Test
|
||||
casper.notebook_test(function () {
|
||||
var a = 'print("a")';
|
||||
var index = this.append_cell(a);
|
||||
this.execute_cell_then(index);
|
||||
|
||||
var b = 'print("b")';
|
||||
index = this.append_cell(b);
|
||||
this.execute_cell_then(index);
|
||||
|
||||
var c = 'print("c")';
|
||||
index = this.append_cell(c);
|
||||
this.execute_cell_then(index);
|
||||
|
||||
this.then(function () {
|
||||
if (this.slimerjs) {
|
||||
// When running in xvfb, the Slimer window doesn't always have focus
|
||||
// immediately. By clicking on a new element on the page we can force
|
||||
// it to gain focus.
|
||||
this.click_cell_editor(1);
|
||||
this.click_cell_editor(0);
|
||||
}
|
||||
|
||||
this.validate_notebook_state('initial state', 'edit', 0);
|
||||
this.trigger_keydown('esc');
|
||||
this.validate_notebook_state('esc', 'command', 0);
|
||||
this.trigger_keydown('down');
|
||||
this.validate_notebook_state('down', 'command', 1);
|
||||
this.trigger_keydown('enter');
|
||||
this.validate_notebook_state('enter', 'edit', 1);
|
||||
this.trigger_keydown('j');
|
||||
this.validate_notebook_state('j in edit mode', 'edit', 1);
|
||||
this.trigger_keydown('esc');
|
||||
this.validate_notebook_state('esc', 'command', 1);
|
||||
this.trigger_keydown('j');
|
||||
this.validate_notebook_state('j in command mode', 'command', 2);
|
||||
this.click_cell_editor(0);
|
||||
this.validate_notebook_state('click cell 0', 'edit', 0);
|
||||
this.click_cell_editor(3);
|
||||
this.validate_notebook_state('click cell 3', 'edit', 3);
|
||||
this.trigger_keydown('esc');
|
||||
this.validate_notebook_state('esc', 'command', 3);
|
||||
|
||||
// Open keyboard help
|
||||
this.evaluate(function(){
|
||||
$('#keyboard_shortcuts a').click();
|
||||
}, {});
|
||||
});
|
||||
|
||||
// Wait for the dialog to fade in completely.
|
||||
this.waitForSelector('div.modal', function() {
|
||||
this.evaluate(function(){
|
||||
IPython.modal_shown = false;
|
||||
$('div.modal').on('shown.bs.modal', function (){
|
||||
IPython.modal_shown = true;
|
||||
});
|
||||
$('div.modal').on('hidden.bs.modal', function (){
|
||||
IPython.modal_shown = false;
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
this.waitFor(function () {
|
||||
return this.evaluate(function(){
|
||||
return IPython.modal_shown;
|
||||
});
|
||||
},
|
||||
function() {
|
||||
this.trigger_keydown('k');
|
||||
this.validate_notebook_state('k in command mode while keyboard help is up', 'command', 3);
|
||||
|
||||
// Close keyboard help
|
||||
this.evaluate(function(){
|
||||
$('div.modal-footer button.btn-default').click();
|
||||
}, {});
|
||||
});
|
||||
|
||||
// Wait for the dialog to fade out completely.
|
||||
this.waitFor(function () {
|
||||
return this.evaluate(function(){
|
||||
return !IPython.modal_shown;
|
||||
});
|
||||
},
|
||||
function() {
|
||||
|
||||
this.trigger_keydown('k');
|
||||
this.validate_notebook_state('k in command mode', 'command', 2);
|
||||
this.click_cell_editor(0);
|
||||
this.validate_notebook_state('click cell 0', 'edit', 0);
|
||||
this.focus_notebook();
|
||||
this.validate_notebook_state('focus #notebook', 'command', 0);
|
||||
this.click_cell_editor(0);
|
||||
this.validate_notebook_state('click cell 0', 'edit', 0);
|
||||
this.focus_notebook();
|
||||
this.validate_notebook_state('focus #notebook', 'command', 0);
|
||||
this.click_cell_editor(3);
|
||||
this.validate_notebook_state('click cell 3', 'edit', 3);
|
||||
|
||||
// Cell deletion
|
||||
this.trigger_keydown('esc', 'd', 'd');
|
||||
this.test.assertEquals(this.get_cells_length(), 3, 'dd actually deletes a cell');
|
||||
this.validate_notebook_state('dd', 'command', 2);
|
||||
|
||||
// Make sure that if the time between d presses is too long, nothing gets removed.
|
||||
this.trigger_keydown('d');
|
||||
});
|
||||
this.wait(1000);
|
||||
this.then(function () {
|
||||
this.trigger_keydown('d');
|
||||
this.test.assertEquals(this.get_cells_length(), 3, "d, 1 second wait, d doesn't delete a cell");
|
||||
this.validate_notebook_state('d, 1 second wait, d', 'command', 2);
|
||||
});
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue