|
187
|
1 var something = null;
|
|
|
2
|
|
|
3 TEST('return value', function()
|
|
|
4 {
|
|
|
5 var fn_1 = function(){
|
|
|
6 };
|
|
|
7
|
|
|
8 something = undefined;
|
|
|
9 assert( fn_1() === something );
|
|
|
10
|
|
|
11 var fn_2 = function(){
|
|
|
12 // start
|
|
|
13 return 42;
|
|
|
14 // end
|
|
|
15 };
|
|
|
16
|
|
|
17 something = undefined;
|
|
|
18 assert( fn_2() === 42 );
|
|
|
19 });
|
|
188
|
20
|
|
|
21
|
|
|
22 TEST('parameters', function()
|
|
|
23 {
|
|
|
24 var something = null;
|
|
|
25
|
|
|
26 var fn = function(a, b, c){
|
|
|
27 // start
|
|
|
28 return b;
|
|
|
29 // stop
|
|
|
30 };
|
|
|
31
|
|
|
32 assert( fn(1, 2, 3) === 2 );
|
|
|
33 assert( fn(4, 5, 6) === 5 );
|
|
|
34
|
|
|
35 something = 8;
|
|
|
36 assert( fn(7, 8) === something );
|
|
|
37
|
|
|
38 something = 10;
|
|
|
39 assert( fn(9, 10, 11, 12) === something );
|
|
|
40
|
|
|
41 something = undefined;
|
|
|
42 assert( fn(13) === something );
|
|
|
43
|
|
|
44 something = undefined;
|
|
|
45 assert( fn() === something );
|
|
|
46 });
|
|
189
|
47
|
|
|
48
|
|
|
49 TEST('arguments', function()
|
|
|
50 {
|
|
|
51 var something = null;
|
|
|
52
|
|
|
53 // 1
|
|
|
54 var fn_1 = function(){
|
|
|
55 return arguments.length;
|
|
|
56 };
|
|
|
57
|
|
|
58 something = 0;
|
|
|
59 assert( fn_1() === 0 );
|
|
|
60 something = 1;
|
|
|
61 assert( fn_1(0) === something );
|
|
|
62 something = 2;
|
|
|
63 assert( fn_1(0, 0) === something );
|
|
|
64 something = 3;
|
|
|
65 assert( fn_1(0, 0, 0) === something );
|
|
|
66
|
|
|
67
|
|
|
68 // 2
|
|
|
69 var fn_2 = function(i){
|
|
|
70 return arguments[i];
|
|
|
71 };
|
|
|
72
|
|
|
73 something = 0;
|
|
|
74 assert( fn_2(0) === something );
|
|
|
75 something = 1;
|
|
|
76 assert( fn_2(1, 1, 2) === something );
|
|
|
77 something = 11;
|
|
|
78 assert( fn_2(2, 10, 11) === something );
|
|
|
79 });
|