-
Notifications
You must be signed in to change notification settings - Fork 0
/
pruebas.wtest
136 lines (99 loc) · 4.04 KB
/
pruebas.wtest
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
import directions.*
import wollok.game.*
import config.*
import characters.*
import elements.*
import level_1.*
describe "Movimientos de los Personajes" {
test "Fireboy - Movimiento a Izquierda Correcto" {
const fireboy = new Fireboy(
position = new MutablePosition (x=5, y=5),
lastMovement = null)
fireboy.move(left)
assert.equals(4, fireboy.position().x()) // Debería moverse 1 unidad a la izquierda
assert.equals(5, fireboy.position().y()) // La coordenada y no debería cambiar
}
test "Watergirl - Movimiento a Derecha Correcto" {
const watergirl = new Watergirl(
position = new MutablePosition (x=5, y=5),
lastMovement = null
)
watergirl.move(right)
assert.equals(6, watergirl.position().x()) // Debería moverse 1 unidad a la derecha
assert.equals(5, watergirl.position().y()) // La coordenada y no debería cambiar
}
test "Fireboy - No atraviesa los pisos intermedios"{
level1.setupCharcos ()
const fireboy = new Fireboy(
position = new MutablePosition (x=2, y=4),
lastMovement = null)
fireboy.move(downCharacter)
assert.equals(2, fireboy.position().x())
assert.equals(3, fireboy.position().y())
}
test "Watergirl - Respeta el descubrimiento de Newton" {
const watergirl = new Watergirl(
position = new MutablePosition (x=1, y=1),
lastMovement = null)
watergirl.jump()
assert.equals(1, watergirl.position().y()) // La coordenada y no debería cambiar
}
}
describe "Zonas Prohibidas" {
test "Fireboy muere al pasar por charco de distinto tipo" {
level1.setupCharcos() //necesario para cargar los charcos en la lista
const fireboy = new Fireboy(
position = new MutablePosition (x=19, y=1),
lastMovement = null)
fireboy.move(downCharacter)
assert.that(fireboy.murioPersonajeTest())}
test "Fireboy no muere al moverse a posiciones no peligrosas" {
level1.setupCharcos() //necesario para cargar los charcos en la lista
const fireboy = new Fireboy(
position = new MutablePosition(x=28, y=1),
lastMovement = null)
fireboy.move(right)
assert.notThat(fireboy.murioPersonajeTest())
}
}
describe "Diamantes" {
test "Fireboy puede agarrar diamantes Rojos" {
const diamante = new DiamanteRojo(posX = 2, posY = 1)
const fireboy = new Fireboy(
position = new MutablePosition (x=1, y=1),
lastMovement = null)
fireboy.move(right)
diamante.colision(fireboy)
assert.that(diamante.fuiRecolectado())
}
test "Watergirl no puede agarrar diamantes rojos" {
const diamante = new DiamanteRojo(posX = 2, posY = 1)
const watergirl = new Watergirl(
position = new MutablePosition (x=1, y=1),
lastMovement = null
)
watergirl.move(right)
diamante.colision(watergirl)
assert.notThat(diamante.fuiRecolectado())
}
test "Fireboy puede agarrar diamantes Grises" {
const diamante = new DiamanteGris(posX = 2, posY = 1)
const fireboy = new Fireboy(
position = new MutablePosition (x=1, y=1),
lastMovement = null
)
fireboy.move(right) // el movimiento no afecta ala colision y no la toma
diamante.colision(fireboy)
assert.that(diamante.fuiRecolectado())
}
test "Watergirl puede agarrar diamantes Azules en saltos" {
const diamante = new DiamanteAzul(posX = 1, posY = 2)
const watergirl = new Watergirl(
position = new MutablePosition (x=1, y=1),
lastMovement = null
)
watergirl.jump()
diamante.colision(watergirl)
assert.that(diamante.fuiRecolectado())
}
}