-
Notifications
You must be signed in to change notification settings - Fork 50
Expand file tree
/
Copy pathtests.js
More file actions
162 lines (121 loc) · 4.42 KB
/
Copy pathtests.js
File metadata and controls
162 lines (121 loc) · 4.42 KB
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
const chai = window.chai;
const expect = chai.expect;
describe("Variables en JS", () => {
it("Completa todas las constantes que faltan", () => {
const a = 10;
expect(a).to.equal(10);
expect(b).to.equal(1.34);
expect(c).to.equal(true);
expect(d).to.equal("Buenos días");
expect(e).to.equal("Pepe");
expect(f).to.equal("Buenos días, pepe");
})
it("Completa todas las variables que faltan para que las operaciones resulten correctamente", () => {
let a = 11;
expect(a + b).to.equal(11.34);
expect(a * c).to.equal(110);
expect(d - e).to.equal(-340);
// investiga para qué sirven los operadores ** y %
expect(f ** g).to.equal(1000);
expect(x % 2).to.equal(0);
expect(y % 2).to.equal(1);
})
it("Completa todas las variables que faltan para que se cumplan las condiciones", () => {
let a = 10;
expect(a > 9).to.be.true;
expect(a < 11).to.be.true;
expect(b === 100).to.be.true;
expect(c === undefined).to.be.true;
expect(d !== "Hello").to.be.true;
expect(n.startsWith('A')).to.be.false;
})
})
describe("condicionales en javascript", () => {
it("completa el valor del resultado esperado (expected)", () => {
let name = "Pepe";
let result = "KO";
// https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Global_Objects/String/length
if (name.length === 6) {
result = "OK"
}
// substituye ??? por el valor que tiene la variable "result"
expect(result === "???").to.be.true;
})
it("comparando cadenas (strings)", () => {
let a = 'a';
let b = 'b';
let result;
if (a < b) {
result = 'pikachu';
} else {
result = 'charmander';
}
// substituye ??? por el valor que tiene la variable "result"
expect(result === "???").to.be.true;
})
it("Interpolación de cadenas (strings) (1)", () => {
let n = "Piña";
let m = "Pepperoni";
let q = 14;
let result;
// https://developer.mozilla.org/es/docs/Learn/JavaScript/First_steps/Math#operadores_aritm%C3%A9ticos
if (q % 5 === 0) {
result = "Pizza con " + n;
} else {
result = "Pizza con " + m;
}
// substituye ??? por el valor que tiene la variable "result"
expect(result === "???").to.be.true;
})
it("Interpolación de cadenas (strings) (2)", () => {
let n = "Piña";
let m = "Pepperoni";
let q = 14;
let result;
// https://developer.mozilla.org/es/docs/Learn/JavaScript/First_steps/Math#operadores_aritm%C3%A9ticos
if (q % 7 === 0) {
result = `Pizza con ${n}`;
} else {
result = `Pizza con ${m}`;
}
// substituye ??? por el valor que tiene la variable "result"
expect(result === "???").to.be.true;
})
})
describe("Funciones en JS", () => {
function f(a, b, c) {
return b - a + 4 * c;
}
function g(n, m) {
return `Son ${m} y ${n}`;
}
function h(name) {
// https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Global_Objects/String/length
if (name.length <= 4) {
return "too short";
} else if (name.length < 7) {
return "adecquate";
} else if (name.length < 12) {
return "long";
} else {
return "very long";
}
}
it("Cuál es el resultado de invocar la función? (1)", () => {
let result = f(10, 30, 2);
// substituye "???" por el valor que tiene la variable "result"
expect(result === "???").to.be.true;
})
it("Cuál es el resultado de invocar la función? (2)", () => {
let result = g("Cerebro", "Pinky");
// substituye "???" por el valor que tiene la variable "result"
expect(result === "???").to.be.true;
})
it("Cuál es el resultado de invocar la función? (3)", () => {
// substituye "???" por el resultado en cada caso
expect(h("khaleesi mother of dragons breaker of chains") === "???").to.be.true;
expect(h("sarah") === "???").to.be.true;
expect(h("bob") === "???").to.be.true;
expect(h("robertson") === "???").to.be.true;
})
})