Skip to content

Commit c1c7362

Browse files
committed
Uncomment the already fixed test cases, and added some negative tests to improve the test coverage
Uncomment already fixed asserts, and added negative tests to the files below. JerryScript-DCO-1.0-Signed-off-by: Mate Dabis mdabis@inf.u-szeged.hu
1 parent e0e6363 commit c1c7362

File tree

9 files changed

+246
-8
lines changed

9 files changed

+246
-8
lines changed

tests/jerry/and-or.js

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,30 @@ if (false && fail()) {
2121
assert (0);
2222
}
2323

24+
if ((false && fail()) == true)
25+
{
26+
assert (0);
27+
}
28+
2429
if (true && false && fail()) {
2530
assert (0);
2631
}
2732

33+
if ((true && false && fail()) != false)
34+
{
35+
assert (0);
36+
}
37+
2838
if (true || fail()) {
2939
} else {
3040
assert (0);
3141
}
3242

43+
if ((true || fail()) != true)
44+
{
45+
assert (0);
46+
}
47+
3348
if (false || true || fail()) {
3449
} else {
3550
assert (0);

tests/jerry/arguments.js

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,17 @@ function f_arg (arguments)
1818
}
1919
assert (f_arg (1) === 1);
2020

21+
assert (f_arg (1) !== 2);
22+
assert (f_arg (1) !== 0);
23+
2124
function f (a, b, c)
2225
{
2326
return arguments;
2427
}
2528

2629
args = f();
2730
assert (args[0] === undefined);
31+
assert ((args[0] === undefined) != false);
2832

2933
args = f (1, 2, 3, 4, 5);
3034
assert (args[0] === 1);
@@ -34,6 +38,18 @@ assert (args[3] === 4);
3438
assert (args[4] === 5);
3539
assert (args[5] === undefined);
3640

41+
assert (args[0] !== 2);
42+
assert (args[1] !== 3);
43+
assert (args[2] !== 4);
44+
assert (args[3] !== 5);
45+
assert (args[4] !== 6);
46+
47+
assert (args[0] !== 0);
48+
assert (args[1] !== 1);
49+
assert (args[2] !== 2);
50+
assert (args[3] !== 3);
51+
assert (args[4] !== 4);
52+
3753
assert (args.callee === f);
3854
assert (typeof args.caller === 'undefined');
3955

@@ -51,6 +67,14 @@ function g (a, b, c)
5167
assert (arguments[1] === 'b');
5268
assert (arguments[2] === 'c');
5369

70+
assert (arguments[0] !== 'b');
71+
assert (arguments[1] !== 'c');
72+
assert (arguments[2] !== 'd');
73+
74+
assert (arguments[0] !== '`');
75+
assert (arguments[1] !== 'a');
76+
assert (arguments[2] !== 'b');
77+
5478
arguments [0] = 1;
5579
arguments [1] = 2;
5680
arguments [2] = 3;
@@ -59,10 +83,22 @@ function g (a, b, c)
5983
assert (b === 2);
6084
assert (c === 3);
6185

86+
assert (a !== 2);
87+
assert (b !== 3);
88+
assert (c !== 4);
89+
90+
assert (a !== 0);
91+
assert (b !== 1);
92+
assert (c !== 2);
93+
6294
delete arguments [0];
6395
arguments[0] = 'new value';
6496
assert (a === 1);
6597

98+
assert (a !== 0);
99+
100+
assert (a !== 2);
101+
66102
a = 'a';
67103
b = 'b';
68104
c = 'c';

tests/jerry/arithmetics-2.js

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,31 +19,69 @@ var c;
1919
c = a + b;
2020
assert(c == 31);
2121

22+
assert(c != 30);
23+
assert(c != 32);
24+
2225
c = a - b;
2326
assert(c == 11);
2427

28+
assert(c != 10);
29+
assert(c != 12);
30+
2531
c = a * b;
2632
assert(c == 210);
2733

34+
assert(c != 209);
35+
assert(c != 211);
36+
2837
c = a / b;
2938
assert(c >= 2.1 - 0.000001 && c <= 2.1 + 0.000001);
3039

40+
assert(c != 2.0);
41+
assert(c != 2.2);
42+
3143
c = a % b;
3244
assert(c == 1);
3345

46+
assert(c != 0);
47+
assert(c != 2);
48+
3449
c = a++;
3550
assert(c == 21);
3651

52+
assert(c != 22);
53+
assert(c != 20);
54+
55+
assert(a == 22);
56+
57+
assert(a != 21);
58+
assert(a != 23);
59+
3760
c = a--;
3861
assert(c == 22);
3962

63+
assert(c != 21);
64+
assert(c != 23);
65+
66+
assert(a == 21);
67+
68+
assert(a != 20);
69+
assert(a != 22);
70+
4071
var o = { p : 1 };
4172

4273
assert (++o.p === 2);
4374
assert (o.p === 2);
75+
76+
assert(o.p !== 1);
77+
assert(o.p !== 3);
78+
4479
assert (--o.p === 1);
4580
assert (o.p === 1);
4681

82+
assert(o.p !== 0);
83+
assert(o.p !== 2);
84+
4785
try {
4886
eval ('++ ++ a');
4987
assert (false);

tests/jerry/array.js

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,37 @@ assert (cars[0] === "Saab");
1818
assert (cars[1] === "Volvo");
1919
assert (cars[2] === "BMW");
2020

21+
assert (cars[0] !== undefined);
22+
assert (cars[1] !== undefined);
23+
assert (cars[2] !== undefined);
24+
25+
assert (cars[0] !== "Volvo");
26+
assert (cars[2] !== "Volvo");
27+
28+
assert (cars[0] !== "BMW");
29+
assert (cars[1] !== "BMW");
30+
31+
assert (cars[1] !== "Saab");
32+
assert (cars[2] !== "Saab");
33+
2134
var cars1 = new Array("Saab", "Volvo", "BMW");
2235
assert (cars[0] === cars1[0]);
2336
assert (cars[1] === cars1[1]);
2437
assert (cars[2] === cars1[2]);
2538

39+
assert (cars[0] !== cars1[1]);
40+
assert (cars[1] !== cars1[2]);
41+
assert (cars[2] !== cars1[0]);
42+
2643
var a = new Array();
2744
assert (typeof (a) === "object");
45+
46+
assert (typeof (a) !== "undefined");
47+
assert (typeof (a) !== "boolean");
48+
assert (typeof (a) !== "number");
49+
assert (typeof (a) !== "string");
50+
assert (typeof (a) !== "function");
51+
2852
assert (Array.isArray (a));
2953
assert (Array.isArray ([1, 2, 3]));
3054

@@ -78,6 +102,9 @@ assert (c[1] === undefined);
78102
assert (c[2] === undefined);
79103
assert (c[3] === '3');
80104

105+
assert (c[0] !== undefined);
106+
assert (c[3] !== undefined);
107+
81108
b[0] = 1;
82109
c[0] += b[0];
83110
assert (c[0] == 1);
@@ -151,6 +178,9 @@ var arr = [
151178
for (i = 0; i < 1024; i++)
152179
{
153180
assert (arr[i] === i + 1);
181+
182+
assert (arr[i] !== i + 0);
183+
assert (arr[i] !== i + 2);
154184
}
155185

156186
var elision = [0,,2 ,3];

tests/jerry/assignments.js

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,31 @@
1515
var b = 5;
1616

1717
assert((b += 10) == 15);
18+
19+
assert(b != 14);
20+
assert(b != 16);
21+
assert(!(b >16 || b < 14))
22+
1823
assert((b -= 3) == 12);
24+
25+
assert(b != 11);
26+
assert(b != 13);
27+
assert(!(b > 13 || b < 11));
28+
1929
assert((b *= 10) == 120);
30+
31+
assert(b != 119);
32+
assert(b != 121);
33+
assert(!(b > 121 || b < 119));
34+
2035
assert((b /= 10) == 12);
36+
37+
assert(b != 11);
38+
assert(b != 13);
39+
assert(!(b > 13 || b < 11));
40+
2141
assert((b %= 10) == 2);
42+
43+
assert(b != 1);
44+
assert(b != 3);
45+
assert(!(b > 3 || b < 1));

tests/jerry/date-setters.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,18 @@ assert (d.getHours() == 1);
9595
assert (d.getMinutes() == 1);
9696
assert (d.getSeconds() == 1);
9797
d.setTime(0);
98+
assert (d.setHours(1) == hour + d.getTimezoneOffset() * 60000);
99+
assert (d.getHours() == 1);
100+
d.setTime(0);
101+
assert (d.setHours(1, 1) == hour + min + d.getTimezoneOffset() * 60000);
102+
assert (d.getHours() == 1);
103+
assert (d.getMinutes() == 1);
104+
d.setTime(0);
105+
assert (d.setHours(1, 1, 1) == hour + min + sec + d.getTimezoneOffset() * 60000);
106+
assert (d.getHours() == 1);
107+
assert (d.getMinutes() == 1);
108+
assert (d.getSeconds() == 1)
109+
d.setTime(0);
98110
assert (d.setHours(1, 1, 1, 1) == hour + min + sec + ms + d.getTimezoneOffset() * 60000);
99111
assert (d.getHours() == 1);
100112
assert (d.getMinutes() == 1);

tests/jerry/equality.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,17 @@ assert((5 == 5) == true);
1616
assert((7 != 2) == true);
1717

1818
var num = 0;
19-
//var obj = new String("0");
19+
var obj = new String("0");
2020
var str = "0";
2121
var b = false;
2222

2323
assert(num === num);
24-
//assert(obj === obj);
24+
assert(obj === obj);
2525
assert(str === str);
2626

27-
//assert((num === obj) == false);
27+
assert((num === obj) == false);
2828
assert((num === str) == false);
29-
//assert((obj === str) == false);
30-
//assert((null === undefined) == false);
31-
//assert((obj === null) == false);
32-
//assert((obj === undefined) == false);
29+
assert((obj === str) == false);
30+
assert((null === undefined) == false);
31+
assert((obj === null) == false);
32+
assert((obj === undefined) == false);

tests/jerry/logical.js

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,39 @@
1414

1515
assert((!false) === true);
1616

17+
assert(false === false);
18+
assert(true === true);
19+
20+
assert(true !== false);
21+
assert(true !== undefined);
22+
assert(false !== undefined);
23+
1724
assert((true || true) === true);
1825
assert((false || true) === true);
1926
assert((false || false) === false);
2027
assert((true || false) === true);
2128

29+
assert((true || true) !== false);
30+
assert((false || true) !== false);
31+
assert((false || false) !== true);
32+
assert((true || false) !== false);
33+
34+
assert((true || true) !== undefined);
35+
assert((false || true) !== undefined);
36+
assert((false || false) !== undefined);
37+
assert((true || false) !== undefined);
38+
2239
assert((true && true) === true);
2340
assert((true && false) === false);
2441
assert((false && true) === false);
25-
assert((false && false) === false);
42+
assert((false && false) === false);
43+
44+
assert((true && true) !== false);
45+
assert((true && false) !== true);
46+
assert((false && true) !== true);
47+
assert((false && false) !== true);
48+
49+
assert((true && true) !== undefined);
50+
assert((true && false) !== undefined);
51+
assert((false && true) !== undefined);
52+
assert((false && false) !== undefined);

0 commit comments

Comments
 (0)