comparison Agendas/trunk/src/Agendas.Tests/AgendarTests.cs @ 133:6f1041301797

Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146. Falta solucionar problema con flujo, ver más información en el ticket de assembla. http://www.assembla.com/spaces/altnet-hispano/tickets/146-implementar-estado-descartar-y-cancelar-de-eventos
author alabra
date Sun, 10 Jul 2011 23:59:19 -0400
parents 8fa58a79656a
children 62791999ad01
comparison
equal deleted inserted replaced
132:45be716763c3 133:6f1041301797
232 232
233 Assert.IsInstanceOf(typeof(EventoAgendadoState), evento.GetEstado()); 233 Assert.IsInstanceOf(typeof(EventoAgendadoState), evento.GetEstado());
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()
239 {
240 var publicador1 = new Mock<IPublicador>();
241
242 var agenda = new Agenda(publicador1.Object, DefaultEventoRepository, DefaultPersonaRepository);
243 agenda.Agendar("Html 5", "jjmontes", DateTime.MinValue, urlInvitacion, TipoEvento.Van);
244
245 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Html 5");
246
247 agenda.Cancelar(evento.Id);
248
249 Assert.IsInstanceOf(typeof(EventoCanceladoState), evento.GetEstado());
250 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Cancelar) == 1);
251 Assert.AreEqual(EventoCanceladoState.GetInstance().GetDescripcion(), evento.Estado);
252 }
253
254 [Test]
255 public void Al_descartar_un_evento_debe_quedar_con_estado_EventoDescartadoState_y_debe_generar_el_track_correspondiente()
256 {
257 var publicador1 = new Mock<IPublicador>();
258
259 var agenda = new Agenda(publicador1.Object, DefaultEventoRepository, DefaultPersonaRepository);
260 agenda.Agendar("Html 5", "jjmontes", DateTime.MinValue, urlInvitacion, TipoEvento.Van);
261
262 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Html 5");
263
264 agenda.Cancelar(evento.Id);
265 agenda.Descartar(evento.Id);
266
267 Assert.IsInstanceOf(typeof(EventoDescartadoState), evento.GetEstado());
268 Assert.That(evento.GetTrackNews().Count(t => t.Accion == Accion.Descartar) == 1);
269 Assert.AreEqual(EventoDescartadoState.GetInstance().GetDescripcion(), evento.Estado);
270 }
271
272 [Test]
238 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()
239 { 274 {
240 var publicador1 = new Mock<IPublicador>(); 275 var publicador1 = new Mock<IPublicador>();
241 276
242 var agenda = new Agenda(publicador1.Object, DefaultEventoRepository, DefaultPersonaRepository); 277 var agenda = new Agenda(publicador1.Object, DefaultEventoRepository, DefaultPersonaRepository);