Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 /* vim: set ts=2 et sw=2 tw=80: */
2 /* Any copyright is dedicated to the Public Domain.
3 http://creativecommons.org/publicdomain/zero/1.0/ */
5 "use strict";
7 function test() {
8 waitForExplicitFinish();
9 setup((ed, win) => {
10 var simpleProg = "function foo() {\n let i = 1;\n let j = 2;\n return bar;\n}";
11 ed.setText(simpleProg);
13 // Move first line up
14 ed.setCursor({ line: 0, ch: 0 });
15 ed.moveLineUp();
16 is(ed.getText(0), "function foo() {", "getText(num)");
17 ch(ed.getCursor(), { line: 0, ch: 0 }, "getCursor");
19 // Move last line down
20 ed.setCursor({ line: 4, ch: 0 });
21 ed.moveLineDown();
22 is(ed.getText(4), "}", "getText(num)");
23 ch(ed.getCursor(), { line: 4, ch: 0 }, "getCursor");
25 // Move line 2 up
26 ed.setCursor({ line: 1, ch: 5});
27 ed.moveLineUp();
28 is(ed.getText(0), " let i = 1;", "getText(num)");
29 is(ed.getText(1), "function foo() {", "getText(num)");
30 ch(ed.getCursor(), { line: 0, ch: 5 }, "getCursor");
32 // Undo previous move by moving line 1 down
33 ed.moveLineDown();
34 is(ed.getText(0), "function foo() {", "getText(num)");
35 is(ed.getText(1), " let i = 1;", "getText(num)");
36 ch(ed.getCursor(), { line: 1, ch: 5 }, "getCursor");
38 // Move line 2 and 3 up
39 ed.setSelection({ line: 1, ch: 0 }, { line: 2, ch: 0 });
40 ed.moveLineUp();
41 is(ed.getText(0), " let i = 1;", "getText(num)");
42 is(ed.getText(1), " let j = 2;", "getText(num)");
43 is(ed.getText(2), "function foo() {", "getText(num)");
44 ch(ed.getCursor("start"), { line: 0, ch: 0 }, "getCursor(string)");
45 ch(ed.getCursor("end"), { line: 1, ch: 0 }, "getCursor(string)");
47 // Move line 1 to 3 down twice
48 ed.dropSelection();
49 ed.setSelection({ line: 0, ch: 7 }, { line: 2, ch: 5 });
50 ed.moveLineDown();
51 ed.moveLineDown();
52 is(ed.getText(0), " return bar;", "getText(num)");
53 is(ed.getText(1), "}", "getText(num)");
54 is(ed.getText(2), " let i = 1;", "getText(num)");
55 is(ed.getText(3), " let j = 2;", "getText(num)");
56 is(ed.getText(4), "function foo() {", "getText(num)");
57 ch(ed.getCursor("start"), { line: 2, ch: 7 }, "getCursor(string)");
58 ch(ed.getCursor("end"), { line: 4, ch: 5 }, "getCursor(string)");
60 teardown(ed, win);
61 });
62 }