File: statements.js

package info (click to toggle)
kjs 5.103.0-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 3,020 kB
  • sloc: cpp: 36,704; javascript: 5,079; yacc: 790; perl: 191; sh: 52; makefile: 7
file content (76 lines) | stat: -rw-r--r-- 1,369 bytes parent folder | download | duplicates (2)
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
74
75
76
function testSwitch(v) {
  var result = "";
  switch (v) {
     case 0:
        result += 'a';
     case 1:
	result += 'b';
     case 1:
        result += 'c';
     case 2:
        result += 'd';
        break;
  }
  return result;
}

shouldBe("testSwitch(0)", "'abcd'");
shouldBe("testSwitch(1)", "'bcd'"); // IE agrees, NS disagrees
shouldBe("testSwitch(2)", "'d'");
shouldBe("testSwitch(false)", "''");

function testSwitch2(v) {
  var result = "";
  switch (v) {
     case 1:
        result += 'a';
        break;
     case 2:
	result += 'b';
        break;
     default:
        result += 'c';
     case 3:
        result += 'd';
        break;
  }
  return result;
}

shouldBe("testSwitch2(1)", "'a'");
shouldBe("testSwitch2(2)", "'b'");
shouldBe("testSwitch2(3)", "'d'");
shouldBe("testSwitch2(-1)", "'cd'");
shouldBe("testSwitch2('x')", "'cd'");

function testSwitch3(v) {
  var result = "";
  switch (v) {
     default:
        result += 'c';
     case 3:
        result += 'd';
     case 4:
        result += 'e';
        break;
  }
  return result;
};

shouldBe("testSwitch3(0)", "'cde'");
shouldBe("testSwitch3(3)", "'de'");
shouldBe("testSwitch3(4)", "'e'");

function testSwitch4(v) {
  var result = "";
  switch (v) {
     case 0:
        result += 'a';
        result += 'b';
        break;
  }
  return result;
};

shouldBe("testSwitch4(0)", "'ab'");