dualmode_clipboard.js
54 lines
| 2.8 KiB
| application/javascript
|
JavascriptLexer
Jonathan Frederic
|
r15936 | ||
// 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 () { | |||
// Copy/paste/cut | |||
var num_cells = this.get_cells_length(); | |||
this.test.assertEquals(this.get_cell_text(1), a, 'Verify that cell 1 is a'); | |||
this.select_cell(1); | |||
this.trigger_keydown('x'); // Cut | |||
this.validate_notebook_state('x', 'command', 1); | |||
this.test.assertEquals(this.get_cells_length(), num_cells-1, 'Verify that a cell was removed.'); | |||
this.test.assertEquals(this.get_cell_text(1), b, 'Verify that cell 2 is now where cell 1 was.'); | |||
this.select_cell(2); | |||
this.trigger_keydown('v'); // Paste | |||
this.validate_notebook_state('v', 'command', 3); // Selection should move to pasted cell, below current cell. | |||
this.test.assertEquals(this.get_cell_text(3), a, 'Verify that cell 3 has the cut contents.'); | |||
this.test.assertEquals(this.get_cells_length(), num_cells, 'Verify a the cell was added.'); | |||
this.trigger_keydown('v'); // Paste | |||
this.validate_notebook_state('v', 'command', 4); // Selection should move to pasted cell, below current cell. | |||
this.test.assertEquals(this.get_cell_text(4), a, 'Verify that cell 4 has the cut contents.'); | |||
this.test.assertEquals(this.get_cells_length(), num_cells+1, 'Verify a the cell was added.'); | |||
this.select_cell(1); | |||
this.trigger_keydown('c'); // Copy | |||
this.validate_notebook_state('c', 'command', 1); | |||
this.test.assertEquals(this.get_cell_text(1), b, 'Verify that cell 1 is b'); | |||
this.select_cell(2); | |||
this.trigger_keydown('c'); // Copy | |||
this.validate_notebook_state('c', 'command', 2); | |||
this.test.assertEquals(this.get_cell_text(2), c, 'Verify that cell 2 is c'); | |||
this.select_cell(4); | |||
this.trigger_keydown('v'); // Paste | |||
this.validate_notebook_state('v', 'command', 5); | |||
this.test.assertEquals(this.get_cell_text(2), c, 'Verify that cell 2 still has the copied contents.'); | |||
this.test.assertEquals(this.get_cell_text(5), c, 'Verify that cell 5 has the copied contents.'); | |||
this.test.assertEquals(this.get_cells_length(), num_cells+2, 'Verify a the cell was added.'); | |||
this.select_cell(0); | |||
Jonathan Frederic
|
r15946 | this.trigger_keydown('shift-v'); // Paste | |
this.validate_notebook_state('shift-v', 'command', 0); | |||
Jonathan Frederic
|
r15936 | this.test.assertEquals(this.get_cell_text(0), c, 'Verify that cell 0 has the copied contents.'); | |
this.test.assertEquals(this.get_cells_length(), num_cells+3, 'Verify a the cell was added.'); | |||
}); | |||
}); |