# HG changeset patch # User juanjose.montesdeocaarbos # Date 1300617710 10800 # Node ID 2edc705aae0ad26802bfc65643defe31aabae7bc # Parent c695eebf1beb937a96c388cedce3a0c5330ebafb Coverage 100% sobre Agendas.Tests diff -r c695eebf1beb -r 2edc705aae0a Agendas/trunk/src/Agendas.Tests/PropuestasTests.cs --- a/Agendas/trunk/src/Agendas.Tests/PropuestasTests.cs Sat Mar 19 15:44:00 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Tests/PropuestasTests.cs Sun Mar 20 07:41:50 2011 -0300 @@ -17,7 +17,7 @@ { var seguridad = new Mock(); var agenda = new Agenda(null, null, seguridad.Object, DefaultEventoRepository, DefaultPonenteRepository); - + seguridad.Setup(s => s.GetPrincipal()).Returns(SeguridadObjectMother.GetGenericPrincipalAutenticadoSinRoles()); agenda.Proponer("Van propuesta", null); @@ -96,7 +96,7 @@ } [Test] - public void Publicar_van_propuesta() + public void Modificar_y_publicar_van_propuesta() { var agenda = new Agenda(null, null, SeguridadServiceDefault, DefaultEventoRepository, DefaultPonenteRepository); @@ -107,9 +107,19 @@ Assert.AreEqual(1, eventosPropuestos.Count); Assert.AreEqual(0, eventosPublicados.Count); + + var evento = eventosPropuestos.FirstOrDefault(); + agenda.ModificarPropuesta(evento.Id, "Van 2", "otro ponente"); + + eventosPropuestos = agenda.GetEventosPropuestos(); + Assert.AreEqual(1, eventosPropuestos.Count); + + evento = eventosPropuestos.FirstOrDefault(); + Assert.AreEqual("Van 2", evento.Titulo); + Assert.AreEqual("otro ponente", evento.Ponente.Nombre); } - agenda.Publicar("Van", "jjmontes", DateTime.Now); + agenda.Publicar("Van 2", "jjmontes", DateTime.Now); { IList eventosPropuestos = agenda.GetEventosPropuestos(); IList eventosPublicados = agenda.GetEventosPublicados(); @@ -119,5 +129,29 @@ } } - } + [Test] + public void Propuesta_de_van_sin_autenticacion() + { + var seguridad = new Mock(); + var agenda = new Agenda(null, null, seguridad.Object, DefaultEventoRepository, DefaultPonenteRepository); + + seguridad.Setup(s => s.GetPrincipal()).Returns(SeguridadObjectMother.GetGenericPrincipalSinAutenticar()); + + Assert.Throws(() => agenda.Proponer("Inmortalidad de la meduza.", null)); + } + + [Test] + public void Obtener_un_evento_inexistente() + { + var idEventoNoExistente = new Guid("99999999999999999999999999999999"); + + var seguridad = new Mock(); + var agenda = new Agenda(null, null, seguridad.Object, DefaultEventoRepository, DefaultPonenteRepository); + + seguridad.Setup(s => s.GetPrincipal()).Returns( + SeguridadObjectMother.GetGenericPrincipalAutenticadoSinRoles()); + + Assert.IsNull(agenda.GetEvento(idEventoNoExistente)); + } + } } \ No newline at end of file diff -r c695eebf1beb -r 2edc705aae0a Agendas/trunk/src/Agendas.Tests/PulicarTests.cs --- a/Agendas/trunk/src/Agendas.Tests/PulicarTests.cs Sat Mar 19 15:44:00 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Tests/PulicarTests.cs Sun Mar 20 07:41:50 2011 -0300 @@ -129,6 +129,16 @@ Assert.AreEqual("otro titulo", evento.Titulo); Assert.AreEqual("otro ponente", evento.Ponente.Nombre); Assert.AreEqual(fecha, evento.Fecha); - } - } + + var idEventoNoExistente = new Guid("99999999999999999999999999999999"); + Assert.Throws( + () => agenda.ModificarEvento(idEventoNoExistente, "algún título", "un ponente", DateTime.Now)); + } + + [Test] + public void CompositePublicador_constructor_parametro_null_debe_generar_ArgumentNullException() + { + Assert.Throws(() => new CompositePublicador(null)); + } + } } \ No newline at end of file