1
00:00:00,210 --> 00:00:01,530
Bien, continuamos con la prueba nitaria.

2
00:00:01,620 --> 00:00:06,150
Ahora vamos a crear dos métodos en cuenta, así que con control TAB nos vamos acá.

3
00:00:06,240 --> 00:00:11,940
Implementar el método débito, que cuánto nos restan un monto del saldo, por ejemplo, cuando realizamos

4
00:00:11,940 --> 00:00:14,310
una transferencia o bien el crédito al revés.

5
00:00:14,340 --> 00:00:20,350
Cuando otra cuenta nos realiza una transferencia y agregamos el monto al saldo, es como sumar y restar.

6
00:00:20,380 --> 00:00:26,610
Entonces nos vamos por acá después de nyet saldo y comenzamos métodos públicos porque podemos acceder.

7
00:00:28,380 --> 00:00:37,590
Voy débito bien y por argumento vamos a pasar de un BID décima con el monto Civit decimal, con el monto

8
00:00:37,890 --> 00:00:38,200
listo.

9
00:00:38,280 --> 00:00:39,090
Ahí tenemos el método.

10
00:00:39,270 --> 00:00:39,960
Lo dejamos así.

11
00:00:40,140 --> 00:00:43,170
Solamente lo vamos a definir el Hermeto, pero sin implementar.

12
00:00:43,290 --> 00:00:44,100
Después lo implementamos.

13
00:00:44,310 --> 00:00:49,320
Recuerden que la idea de desarrollar primero impulsado a prioritaria primero es ВїCГіmo laprueba?

14
00:00:49,440 --> 00:00:51,870
Y después implementamos todo nuestro código.

15
00:00:52,080 --> 00:00:52,650
Lo mismo acá.

16
00:00:52,710 --> 00:00:59,130
Public voy crédito y lo mismo big decimal.

17
00:01:01,180 --> 00:01:02,080
Vamos a probar.

18
00:01:02,700 --> 00:01:03,290
Control TAF.

19
00:01:03,550 --> 00:01:04,360
Regresamos.

20
00:01:04,480 --> 00:01:06,700
Vamos a escribir otro método por acá.

21
00:01:06,970 --> 00:01:08,910
Recuerden con alt insert.

22
00:01:09,870 --> 00:01:10,030
Test.

23
00:01:10,200 --> 00:01:13,380
Método le vamos a llamar test débito, cuenta.

24
00:01:17,430 --> 00:01:26,790
Nio cuenta, por ejemplo, con ennombre nombre Andrés Bimos, dato que teníamos ante Andrés Koma, New

25
00:01:27,780 --> 00:01:35,010
Umpi Décima con el monto exactamente igual mil punto uno dos tres, cuatro, cinco.

26
00:01:35,550 --> 00:01:38,460
Punto y coma bien y en cuenta.

27
00:01:38,580 --> 00:01:43,470
Acá al control recortÃ le vamos a llamar cuenta.

28
00:01:43,530 --> 00:01:44,130
Perfecto.

29
00:01:44,260 --> 00:01:50,000
Ahí tenemos nuestros datos de prueba y probamos cuenta, punto débito.

30
00:01:50,310 --> 00:01:54,660
Vamos a probar débito y pasamos un monto a un new bit decimal.

31
00:01:54,900 --> 00:01:56,670
Por ejemplo, vamos a pasar 100.

32
00:01:57,510 --> 00:02:02,580
Esto quiere decir que a nuestra cuenta corriente se le va a restar 100 de los 1000.

33
00:02:02,700 --> 00:02:07,140
Por lo tanto, debería tener 900 punto uno, tres, cuatro, cinco.

34
00:02:07,380 --> 00:02:08,220
Eso es lo que tenemos que probar.

35
00:02:08,460 --> 00:02:11,080
Bajamos a ser iguales.

36
00:02:12,470 --> 00:02:14,630
Vamos a hacer dos pruebas, una con Ántero.

37
00:02:14,750 --> 00:02:16,910
Vamos a probar 900 Koma.

38
00:02:17,060 --> 00:02:20,870
Ese sería mi valor esperado como apetitiva y el valor actual.

39
00:02:21,020 --> 00:02:22,040
Débito, cuenta?

40
00:02:23,330 --> 00:02:24,530
Punto, inquiere.

41
00:02:24,530 --> 00:02:25,730
Saldo, ticket, saldo.

42
00:02:25,790 --> 00:02:26,540
Umpitas y Marsi.

43
00:02:26,540 --> 00:02:32,120
Qué punto int valeo se fijan entonces solamente no va a devolver la parte entera.

44
00:02:32,240 --> 00:02:33,380
Debiese ser 900, no?

45
00:02:33,380 --> 00:02:33,800
Cierto?

46
00:02:33,950 --> 00:02:35,090
Bien, ahí tenemos la primera prueba.

47
00:02:35,510 --> 00:02:36,710
Pero antes, claro.

48
00:02:36,740 --> 00:02:41,120
Qué pasa si el saldo acá pasaramos nul fuera null?

49
00:02:41,240 --> 00:02:48,810
También podríamos probar un cierto que no sea nulo alert not null actual.

50
00:02:48,960 --> 00:02:50,690
Entonces el actuar sería kuenta.

51
00:02:50,900 --> 00:02:58,490
Quetzal No, claro, porque si el nulo acá al tratar de invocar el método invadio, lanzarían no pointer

52
00:02:58,490 --> 00:02:58,940
exception.

53
00:02:59,240 --> 00:03:02,720
Bueno, de todas maneras, si lanzo una excepción, también falla nuestra prueba.

54
00:03:02,840 --> 00:03:05,630
Un cierto porque no cumple, pero igual es mejor.

55
00:03:05,810 --> 00:03:09,980
Not null lo programa de forma ilícita y después ya estamos seguro de que no es nulo.

56
00:03:10,220 --> 00:03:12,620
Lo probamos invocando el método Get saldo.

57
00:03:12,740 --> 00:03:16,040
Y eso también lo podríamos hacer acá también se portan en Texas.

58
00:03:16,070 --> 00:03:16,670
Lo cuenta?

59
00:03:16,850 --> 00:03:22,280
Claro, porque el saldo también podría ser nulo acá, porque está invocando métodos, incluso compartid.

60
00:03:22,700 --> 00:03:27,920
Sería bueno comprar acá que el saldo no fuese null en saldo, cuenta.

61
00:03:28,490 --> 00:03:29,630
De hecho, podríamos copiar esto.

62
00:03:30,080 --> 00:03:38,400
Lo seleccionamos completamente acá Acerte no null control C y lo pegamos acá, por acá.

63
00:03:39,410 --> 00:03:43,820
Como está todo muy relacionado, puede ir en un mismo test, pero también lo podemos colocar en métodos

64
00:03:43,820 --> 00:03:44,260
separados.

65
00:03:44,510 --> 00:03:50,060
Necesito comprobar que no sea nulo, comprobar con el equals, con el folks, con el truco.

66
00:03:50,150 --> 00:03:50,480
En fin.

67
00:03:50,690 --> 00:03:52,550
Y acá tambi��n se fijan qué pasa.

68
00:03:52,640 --> 00:03:53,840
Acá están operando con el nombre.

69
00:03:54,050 --> 00:03:56,960
De hecho acá estamos invocando real punto y quarts.

70
00:03:57,020 --> 00:03:58,400
Qué pasa si real?

71
00:03:58,550 --> 00:04:03,260
Recuerden que real viene de cuenta a punto de que en nombre qué pasa si el nulo la serie también un

72
00:04:03,260 --> 00:04:04,310
pulpo intercepta?

73
00:04:04,640 --> 00:04:10,190
También lo podemos probar que no sea nulo acá, pero eso sería hilar un poco más fino.

74
00:04:10,460 --> 00:04:12,770
Lo ponemos pegar en vez de cuenta.

75
00:04:12,860 --> 00:04:18,010
Colocamos acá real no puede ser null real.

76
00:04:18,290 --> 00:04:20,380
Así nos aseguramos antes invocar el licorera.

77
00:04:20,870 --> 00:04:21,400
Continuemos.

78
00:04:21,440 --> 00:04:27,440
Estamos acá ya programa quien no puede ser nulo y quas, pero también podríamos tener otra prueba muy

79
00:04:27,440 --> 00:04:29,500
similar a ser iguales.

80
00:04:29,750 --> 00:04:33,830
Ahora, en vez de probar un entero, podríamos probar un string no 1000.

81
00:04:34,280 --> 00:04:36,380
Punto uno, dos, tres, cuatro, cinco.

82
00:04:36,530 --> 00:04:37,670
Un string se fijan.

83
00:04:37,760 --> 00:04:38,870
Este es el miedo a lo esperado.

84
00:04:38,990 --> 00:04:39,350
Perdón.

85
00:04:39,440 --> 00:04:43,040
Entre paréntesis debe ser el mismo valor del bit decimal.

86
00:04:43,130 --> 00:04:46,580
Esto el punto 1, 3, 4, 5, pero menos 100.

87
00:04:46,640 --> 00:04:50,100
Entonces bueno, acá me equivoqué de set €900.

88
00:04:50,150 --> 00:04:51,140
Punto 1 2 3.

89
00:04:51,140 --> 00:04:51,680
4 5.

90
00:04:51,800 --> 00:04:55,670
Bueno, de esta forma después lo revisamos, cierre paréntesis y continuamos.

91
00:04:56,330 --> 00:05:02,260
Coma cuenta ponto get saldo ponto to string.

92
00:05:02,660 --> 00:05:05,200
Pero sería tu plain string.

93
00:05:05,870 --> 00:05:11,300
Tu plan devuelve el string plano con el valor del saldo.

94
00:05:11,780 --> 00:05:12,770
Debes hacer lo mismo.

95
00:05:13,070 --> 00:05:18,710
Te dejan, pero acá lo estamos verificando como un entero y acá como un string pero completo, incluyendo

96
00:05:18,710 --> 00:05:19,340
los decimales.

97
00:05:20,480 --> 00:05:21,020
Esta es la prueba.

98
00:05:21,470 --> 00:05:22,910
Bueno, vamos a probar.

99
00:05:23,240 --> 00:05:28,460
Obviamente la falla no es cierto, porque el método débito no lo tenemos implementado.

100
00:05:28,880 --> 00:05:29,330
Veamos.

101
00:05:32,350 --> 00:05:36,730
Se fijan, espera Novecento, pero en realidad de mil, porque en realidad nunca se descontó.

102
00:05:37,270 --> 00:05:40,330
De hecho, vamos a ejecutar todos, todos los métodos acá afuera.

103
00:05:40,390 --> 00:05:40,780
Listo.

104
00:05:41,320 --> 00:05:41,930
Todos pasan.

105
00:05:41,950 --> 00:05:44,110
Todo está perfecto, menos de débito, cuenta.

106
00:05:44,560 --> 00:05:49,760
Bueno, y acá estamos empezando a sarrollar orientado o impulsado a pruebas unitarias, no?

107
00:05:49,780 --> 00:05:49,990
Cierto?

108
00:05:50,020 --> 00:05:52,640
Primero probamos y después tenemos que implementar este método.

109
00:05:53,500 --> 00:05:56,830
Y algo muy similar también sería con test crédito, cuenta.

110
00:05:57,400 --> 00:06:03,980
Lo podríamos dejar implementado también muy parecido, pero en vez de débito sería crédito.

111
00:06:04,510 --> 00:06:06,220
De hecho, lo podríamos copiar.

112
00:06:06,340 --> 00:06:07,480
En realidad es parecido.

113
00:06:07,570 --> 00:06:11,290
Así que vale la pena copiarlo contra el CD

114
00:06:14,050 --> 00:06:14,980
y lo modificamos.

115
00:06:15,100 --> 00:06:21,010
Entonces, lo primero, en vez de débito, que acá lo seleccionamos y sería crédito.

116
00:06:22,270 --> 00:06:25,270
Y acá también, en vez de cuenta, débito.

117
00:06:25,330 --> 00:06:30,290
Acá crédito el método a esta crédito y todo lo demás.

118
00:06:30,430 --> 00:06:37,540
Estaría bien, pero bueno, vamos a agregar o nos transfirieron, nos depositaron 100 a nuestra cuenta.

119
00:06:37,690 --> 00:06:42,800
Entonces acá en realidad debería ser 1000 más 100 un cierto porque tengo 1000.

120
00:06:42,820 --> 00:06:44,140
Punto 1, 3, 4, 5, 12.

121
00:06:44,140 --> 00:06:46,600
Sería eso más bien mil 100?

122
00:06:46,690 --> 00:06:48,500
Ese sería nuestro valor esperado.

123
00:06:49,030 --> 00:06:50,350
Y acá también.

124
00:06:50,770 --> 00:06:53,770
Ese debería ser 1000 100 puntos 1, 3, 4, 5.

125
00:06:53,870 --> 00:06:55,510
Bien, tenemos la prueba para ambos.

126
00:06:55,750 --> 00:06:57,580
Obviamente estos dos método van a fallar.

127
00:06:57,820 --> 00:07:00,430
De otra forma lo volvemos a ejecutar.

128
00:07:01,440 --> 00:07:03,870
Te dejan acá falla todo, Methos.

129
00:07:05,280 --> 00:07:11,850
Esperado 1100 actual 1000, esperado 900, actual 1000 porque no está implementado, entonces oral sí

130
00:07:11,850 --> 00:07:14,250
que lo amas implementar bien, nos damos a cuenta.

131
00:07:15,470 --> 00:07:17,630
Cómo sería débito primero acá?

132
00:07:17,930 --> 00:07:21,200
Bueno, si no conocemos el API de vida.Si me podría pensar.

133
00:07:21,260 --> 00:07:23,300
Bueno, es súper simple asalto, no?

134
00:07:23,300 --> 00:07:25,070
Cierto punto.

135
00:07:25,280 --> 00:07:30,380
Restar y para restar sería con el método substrato restar el monto.

136
00:07:31,670 --> 00:07:34,880
Por cierto, eso podríamos pensar ya, pero no está correcto.

137
00:07:35,060 --> 00:07:36,180
Y después lo vamos a ver, por qué?

138
00:07:36,380 --> 00:07:38,600
Recuerden que sĂłlo es el atributo.

139
00:07:39,320 --> 00:07:42,380
De hecho, vamos a colocar Tiz de forma explícita.

140
00:07:42,860 --> 00:07:44,840
Salto, punto sūtra y acá.

141
00:07:44,880 --> 00:07:46,300
Bueno, sería al revés.

142
00:07:46,310 --> 00:07:53,600
También podemos pensar punto saldo, punto AB de su mano septo agregar un monto.

143
00:07:55,900 --> 00:07:57,490
Podríamos pensar eso ya.

144
00:07:57,520 --> 00:07:59,320
Pero no, no va a funcionar de otra forma.

145
00:07:59,410 --> 00:08:00,430
Estamos desarrollando.

146
00:08:00,490 --> 00:08:05,320
Supongamos que no conocemos bien el API y no sabemos que el bit decimal es inmutable.

147
00:08:05,410 --> 00:08:06,520
Y ahí está la razón.

148
00:08:06,700 --> 00:08:08,950
Pero bien, vamos a volver con control TAB.

149
00:08:09,370 --> 00:08:10,120
Lo vamos a ejecutar.

150
00:08:10,570 --> 00:08:11,380
Debería fallar.

151
00:08:14,180 --> 00:08:15,140
Se fijan, falla.

152
00:08:16,020 --> 00:08:23,370
Actual mil y espera que sea mil cien, y el actual acá mil y espera que sea 900, no está realizando

153
00:08:23,370 --> 00:08:24,570
bien el trabajo.

154
00:08:24,660 --> 00:08:26,980
Este método no está ni sumando y restando.

155
00:08:27,120 --> 00:08:36,360
Volvamos porque como es inmutable, en realidad acá tenemos que asignar este valor de acá a salto a

156
00:08:36,570 --> 00:08:42,840
salto, porque cada que se cambia el estado interno de un PID decimal, lo que hace no es modificar,

157
00:08:42,930 --> 00:08:49,500
no es cambiar el valor del atributo, lo que hace es devolver una nueva instancia, un nuevo pitch decimal

158
00:08:49,590 --> 00:08:50,380
con ese cambio.

159
00:08:50,580 --> 00:08:54,990
Pero Disable se mantiene inalterable, inmutable.

160
00:08:55,170 --> 00:09:01,380
Entonces, para que esto funcione tenemos que colocar di salto o salto simplemente igual a esto.

161
00:09:02,230 --> 00:09:07,510
Saldo restamos el monto y devuelve una nueva instancia con ese cambio.

162
00:09:07,600 --> 00:09:13,270
Pero en realidad Saldo se mantiene tal cual como estaba la instancia original, lo que hace devolver

163
00:09:13,330 --> 00:09:14,470
otra instancia con ese cambio.

164
00:09:14,860 --> 00:09:15,310
Eso es todo.

165
00:09:15,400 --> 00:09:19,480
Y acá también ya lo tenemos.

166
00:09:20,420 --> 00:09:22,340
De Cambiá vamos a rezar.

167
00:09:22,580 --> 00:09:25,580
Entonces volvemos a cuenta y levantamos.

168
00:09:29,160 --> 00:09:31,440
Veamos qué pasó en crédito.

169
00:09:31,470 --> 00:09:33,990
Está bien en débito esperado.

170
00:09:34,080 --> 00:09:35,790
Bueno, Acán no hizo el cambio.

171
00:09:35,880 --> 00:09:39,150
Vamos a ver, creo que falló acá en débito, claro.

172
00:09:39,180 --> 00:09:43,920
Perdón, acá a cambio de que acá en €900 es cierto, claro, acá se resta 100.

173
00:09:44,010 --> 00:09:45,240
Por lo tanto no es cierto.

174
00:09:45,240 --> 00:09:48,510
Pero acá también hay obviamente 900 puntos, un total de cuatro o cinco ahí.

175
00:09:48,900 --> 00:09:50,610
Entonces volvemos a levantar.

176
00:09:52,530 --> 00:09:54,270
Y pasan Ptolomeos Trattoria.

177
00:09:54,880 --> 00:09:56,280
Cierto es lo que esperamos.

178
00:09:56,610 --> 00:09:57,660
Estás sumando los 100.

179
00:09:57,750 --> 00:09:58,800
Así que está perfecto.

180
00:09:58,920 --> 00:10:03,980
Y arriba en débito, está restando los 100 900 y pasa la prueba.

181
00:10:04,230 --> 00:10:05,430
Ahora, cuál será el siguiente paso?

182
00:10:05,560 --> 00:10:10,710
Bueno, en cuenta podemos manejar excepciones, sobre todo acá en débito.

183
00:10:10,800 --> 00:10:12,660
Cuando nosotros realizamos una trasferencia.

184
00:10:12,750 --> 00:10:18,210
Porque claro, qué pasa si nuestra cuenta tiene menos cantidad de dinero de la que vamos a transferir?

185
00:10:18,390 --> 00:10:19,530
Finalmente nos van a arrestar.

186
00:10:19,680 --> 00:10:21,810
No van a restar un monto en nuestra cuenta.

187
00:10:21,900 --> 00:10:26,850
Nuestro saldo no puede llegar a cero si llega a cero, o incluso peor todavía, si llega a un valor

188
00:10:26,850 --> 00:10:31,170
negativo, estaría rompiendo una regla de negocio que sería importante para nuestra aplicación.

189
00:10:31,290 --> 00:10:32,220
Entonces tenemos que manejar.

190
00:10:32,280 --> 00:10:36,960
Tenemos que validar que una vez que hayamos restado, recuerden que esto es inmutable.

191
00:10:37,110 --> 00:10:42,780
Una vez que hayamos restado saldo antes de asignar el valor, poder comprobar que lo que está devolviendo

192
00:10:42,930 --> 00:10:46,980
siga siendo mayor que cero y no quedarnos con un monto negativo.

193
00:10:47,070 --> 00:10:52,470
Por ejemplo, y en caso de que quedemos con un monto negativo antes de asignar el valor, lanzar una

194
00:10:52,470 --> 00:10:56,350
excepción para quien no se realiza la transacción, lanzamos una excepción.

195
00:10:56,520 --> 00:10:59,370
No tiene suficiente dinero en la cuenta.

196
00:10:59,370 --> 00:11:01,230
Por ejemplo, exception y listo.

197
00:11:01,230 --> 00:11:03,060
Después mediante preguntaria.

198
00:11:03,120 --> 00:11:08,370
También podemos probar testear con hacer John's el manejo de error hacer John's Froot.

199
00:11:08,610 --> 00:11:11,150
Pero bueno, eso lo vemos en la siguiente clase.
