comparison Agendas/trunk/src/Agendas.Tests/AgendarTests.cs @ 140:3639803112c6

Refactoring de la relaciĆ³n entre Evento y Estado
author nelopauselli
date Fri, 29 Jul 2011 16:30:53 -0300
parents 62791999ad01
children e6e6bfb1da9e
comparison
equal deleted inserted replaced
139:18e5a78186e4 140:3639803112c6
214 agenda.Proponer("Html 5", "jjmontes", urlInvitacion, TipoEvento.Van); 214 agenda.Proponer("Html 5", "jjmontes", urlInvitacion, TipoEvento.Van);
215 215
216 var evento = 216 var evento =
217 DefaultEventoRepository.GetByState(EventoPropuestoState.GetInstance()).Single(e => e.Titulo == "Html 5"); 217 DefaultEventoRepository.GetByState(EventoPropuestoState.GetInstance()).Single(e => e.Titulo == "Html 5");
218 218
219 Assert.IsInstanceOf(typeof(EventoPropuestoState), evento.GetEstado()); 219 Assert.IsInstanceOf(typeof(EventoPropuestoState), evento.Estado);
220 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Proponer) == 1); 220 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Proponer) == 1);
221 } 221 }
222 222
223 [Test] 223 [Test]
224 public void Al_agendar_un_evento_debe_quedar_con_estado_EventoAgendadoState_y_debe_generar_el_track_correspondiente() 224 public void Al_agendar_un_evento_debe_quedar_con_estado_EventoAgendadoState_y_debe_generar_el_track_correspondiente()
228 var agenda = new Agenda(publicador1.Object, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); 228 var agenda = new Agenda(publicador1.Object, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository);
229 agenda.Agendar("Html 5", "jjmontes", DateTime.MinValue, urlInvitacion, TipoEvento.Van); 229 agenda.Agendar("Html 5", "jjmontes", DateTime.MinValue, urlInvitacion, TipoEvento.Van);
230 230
231 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Html 5"); 231 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Html 5");
232 232
233 Assert.IsInstanceOf(typeof(EventoAgendadoState), evento.GetEstado()); 233 Assert.IsInstanceOf(typeof(EventoAgendadoState), evento.Estado);
234 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Agendar) == 1); 234 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Agendar) == 1);
235 } 235 }
236 236
237 [Test] 237 [Test]
238 public void Al_cancelar_un_evento_debe_quedar_con_estado_EventoCanceladoState_y_debe_generar_el_track_correspondiente() 238 public void Al_cancelar_un_evento_debe_quedar_con_estado_EventoCanceladoState_y_debe_generar_el_track_correspondiente()
244 244
245 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Html 5"); 245 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Html 5");
246 246
247 agenda.Cancelar(evento.Id); 247 agenda.Cancelar(evento.Id);
248 248
249 Assert.IsInstanceOf(typeof(EventoCanceladoState), evento.GetEstado()); 249 Assert.IsInstanceOf(typeof(EventoCanceladoState), evento.Estado);
250 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Cancelar) == 1); 250 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Cancelar) == 1);
251 Assert.AreEqual(EventoCanceladoState.GetInstance().GetDescripcion(), evento.Estado); 251 Assert.AreEqual(EventoCanceladoState.GetInstance(), evento.Estado);
252 } 252 }
253 253
254 [Test] 254 [Test]
255 public void Al_descartar_un_evento_debe_quedar_con_estado_EventoDescartadoState_y_debe_generar_el_track_correspondiente() 255 public void Al_descartar_un_evento_debe_quedar_con_estado_EventoDescartadoState_y_debe_generar_el_track_correspondiente()
256 { 256 {
262 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Html 5"); 262 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Html 5");
263 263
264 agenda.Cancelar(evento.Id); 264 agenda.Cancelar(evento.Id);
265 agenda.Descartar(evento.Id); 265 agenda.Descartar(evento.Id);
266 266
267 Assert.IsInstanceOf(typeof(EventoDescartadoState), evento.GetEstado()); 267 Assert.IsInstanceOf(typeof(EventoDescartadoState), evento.Estado);
268 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Descartar) == 1); 268 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Descartar) == 1);
269 Assert.AreEqual(EventoDescartadoState.GetInstance().GetDescripcion(), evento.Estado); 269 Assert.AreEqual(EventoDescartadoState.GetInstance(), evento.Estado);
270 } 270 }
271 271
272 [Test] 272 [Test]
273 public void Al_confirmar_un_evento_debe_quedar_con_estado_EventoConfirmadoState_y_debe_generar_el_track_correspondiente() 273 public void Al_confirmar_un_evento_debe_quedar_con_estado_EventoConfirmadoState_y_debe_generar_el_track_correspondiente()
274 { 274 {
279 279
280 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Html 5"); 280 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Html 5");
281 281
282 agenda.Confirmar(evento.Id); 282 agenda.Confirmar(evento.Id);
283 283
284 Assert.IsInstanceOf(typeof(EventoConfirmadoState), evento.GetEstado()); 284 Assert.IsInstanceOf(typeof(EventoConfirmadoState), evento.Estado);
285 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Confirmar) == 1); 285 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Confirmar) == 1);
286 } 286 }
287 287
288 [Test] 288 [Test]
289 public void Al_publicar_un_evento_debe_quedar_con_estado_EventoPublicadoState_y_debe_generar_el_track_correspondiente() 289 public void Al_publicar_un_evento_debe_quedar_con_estado_EventoPublicadoState_y_debe_generar_el_track_correspondiente()
296 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Html 5"); 296 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Html 5");
297 297
298 agenda.Confirmar(evento.Id); 298 agenda.Confirmar(evento.Id);
299 agenda.Publicar(evento.Id, 0, string.Empty); 299 agenda.Publicar(evento.Id, 0, string.Empty);
300 300
301 Assert.IsInstanceOf(typeof(EventoPublicadoState), evento.GetEstado()); 301 Assert.IsInstanceOf(typeof(EventoPublicadoState), evento.Estado);
302 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Publicar) == 1); 302 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Publicar) == 1);
303 } 303 }
304 304
305 [Test] 305 [Test]
306 public void Al_publicar_un_evento_debe_asignarse_el_nro_de_reunion_y_la_url_de_la_wiki() 306 public void Al_publicar_un_evento_debe_asignarse_el_nro_de_reunion_y_la_url_de_la_wiki()