Mercurial > altnet-hispano
diff Agendas/trunk/src/Agendas.Web.Tests/Controllers/EventoControllerTests.cs @ 264:cef4fc893333
EventoControllerTests: No se estaba pasando el HttpContext al test.
author | juanjose.montesdeocaarbos |
---|---|
date | Sat, 22 Oct 2011 17:27:45 -0300 |
parents | bdc946dd5c94 |
children | d255b0621503 |
line wrap: on
line diff
--- a/Agendas/trunk/src/Agendas.Web.Tests/Controllers/EventoControllerTests.cs Sat Oct 22 14:56:14 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Web.Tests/Controllers/EventoControllerTests.cs Sat Oct 22 17:27:45 2011 -0300 @@ -14,7 +14,7 @@ namespace Agendas.Web.Tests.Controllers { [TestFixture] - public class EventoControllerTests + public class EventoControllerTests: MvcControllerTestsBase { private void PopulatePersona() { @@ -63,17 +63,17 @@ ViewResult viewResult = null; IEnumerable<EventoDto> eventosDto = null; EventoPublicarModel eventoPublicar = null; - var eventoController = new EventoController(); - - var eventoNew = new EventoNewModel - { - Duracion = new TimeSpan(0, 0, 0), - Fecha = DateTime.Today.AddDays(15), - Hora = new TimeSpan(18, 0, 0), - Ponentes = new[] { GetGuidPersona() }, - TipoEvento = (int)TipoEvento.Van, - Titulo = "Título" - }; + var eventoController = new EventoController { ControllerContext = ControllerCtx }; + var form = new FormCollection + { + {"Duracion", (new TimeSpan(0, 0, 0)).ToString()}, + {"Fecha", (DateTime.Today.AddDays(15)).ToString()}, + {"Hora", (new TimeSpan(18, 0, 0)).ToString()}, + {"Ponentes", GetGuidPersona().ToString()}, + {"TipoEvento", ((int)TipoEvento.Van).ToString()}, + {"Titulo", "Título"} + }; + var eventoNew = BindModel<EventoNewModel>(eventoController, form); using (new RequestEmulator(NhHelper.GetSessionFactory())) { @@ -89,23 +89,23 @@ ViewResult viewResult = null; IEnumerable<EventoDto> eventosDto = null; EventoPublicarModel eventoPublicar = null; - var eventoController = new EventoController(); - - var eventoNew = new EventoNewModel - { - Duracion = new TimeSpan(0, 0, 0), - Fecha = DateTime.Today.AddDays(15), - Hora = new TimeSpan(18, 0, 0), - TipoEvento = (int)TipoEvento.Van, - Titulo = "Título" - }; + var eventoController = new EventoController { ControllerContext = ControllerCtx }; + var form = new FormCollection + { + {"Duracion", (new TimeSpan(0, 0, 0)).ToString()}, + {"Fecha", (DateTime.Today.AddDays(15)).ToString()}, + {"Hora", (new TimeSpan(18, 0, 0)).ToString()}, + {"TipoEvento", ((int)TipoEvento.Van).ToString()}, + {"Titulo", "Título"} + }; + var eventoNew = BindModel<EventoNewModel>(eventoController, form); using (new RequestEmulator(NhHelper.GetSessionFactory())) { var resultNuevo = (ViewResult)eventoController.Nuevo(eventoNew); - var modelState = resultNuevo.ViewData.ModelState.FirstOrDefault().Value; - Assert.AreEqual(1, modelState.Errors.Count); - Assert.AreEqual("Debe indicar el ponente para este tipo de evento", modelState.Errors.FirstOrDefault().ErrorMessage); + var modelState = resultNuevo.ViewData.ModelState; + Assert.AreEqual(1, modelState[string.Empty].Errors.Count); + Assert.AreEqual("Debe indicar el ponente para este tipo de evento", modelState[string.Empty].Errors.FirstOrDefault().ErrorMessage); } } @@ -115,17 +115,17 @@ ViewResult viewResult = null; IEnumerable<EventoDto> eventosDto = null; EventoPublicarModel eventoPublicar = null; - var eventoController = new EventoController(); - - var eventoNew = new EventoNewModel - { - Duracion = new TimeSpan(0, 0, 0), - Fecha = DateTime.Today.AddDays(15), - Hora = new TimeSpan(18, 0, 0), - Ponentes = new[] { GetGuidPersona()}, - TipoEvento = (int) TipoEvento.Van, - Titulo = "Título 2" - }; + var eventoController = new EventoController { ControllerContext = ControllerCtx }; + var formEvento = new FormCollection + { + {"Duracion", (new TimeSpan(0, 0, 0)).ToString()}, + {"Fecha", (DateTime.Today.AddDays(15)).ToString()}, + {"Hora", (new TimeSpan(18, 0, 0)).ToString()}, + {"Ponentes", GetGuidPersona().ToString()}, + {"TipoEvento", ((int)TipoEvento.Van).ToString()}, + {"Titulo", "Título 2"} + }; + var eventoNew = BindModel<EventoNewModel>(eventoController, formEvento); using (new RequestEmulator(NhHelper.GetSessionFactory())) { @@ -142,23 +142,23 @@ using (new RequestEmulator(NhHelper.GetSessionFactory())) { var firstEvent = eventosDto.LastOrDefault(); - - eventoPublicar = new EventoPublicarModel - { - Id = firstEvent.Id, - NroOrden = 1, - //Titulo = "Título 2", - UrlWiki = "http://www.altnethistpano.org/vans/titulo-1.ashx", - DuracionReal = new TimeSpan(0, 0, 0) - }; + var formPublicar = new FormCollection + { + {"Id", (firstEvent.Id).ToString()}, + {"Titulo", "Título 2"}, + {"NroOrden", "1"}, + {"UrlWiki", "http://www.altnethistpano.org/vans/titulo-1.ashx"}, + {"DuracionReal", (new TimeSpan(0, 0, 0)).ToString()} + }; + eventoPublicar = BindModel<EventoPublicarModel>(eventoController, formPublicar); } using (new RequestEmulator(NhHelper.GetSessionFactory())) { var resultPublicar = (ViewResult)eventoController.Publicar(eventoPublicar); - var modelState = resultPublicar.ViewData.ModelState.FirstOrDefault().Value; + var modelState = resultPublicar.ViewData.ModelState; - Assert.AreEqual(1, modelState.Errors.Count); - Assert.AreEqual("Duración fuera de rango", modelState.Errors.FirstOrDefault().ErrorMessage); + Assert.AreEqual(1, modelState[string.Empty].Errors.Count); + Assert.AreEqual("Duración fuera de rango", modelState[string.Empty].Errors.FirstOrDefault().ErrorMessage); } }