# HG changeset patch # User juanjose.montesdeocaarbos # Date 1329678038 10800 # Node ID 9bc60d166c8ae4e3051eccd4053ddea2cca0aa78 # Parent 50b462e06ecc2c6895d6516d885eadac299fe95a Se corrigieron los tests por el cambio de Patrocinador, para que no persista el logo en disco. Se comentó el código de PatrocinadorApiController, que no se utiliza. diff -r 50b462e06ecc -r 9bc60d166c8a Agendas/trunk/src/Agendas.Domain/Patrocinador.cs --- a/Agendas/trunk/src/Agendas.Domain/Patrocinador.cs Sat Feb 18 15:27:26 2012 -0300 +++ b/Agendas/trunk/src/Agendas.Domain/Patrocinador.cs Sun Feb 19 16:00:38 2012 -0300 @@ -16,15 +16,5 @@ protected Patrocinador() { } - - public virtual void LoadLogo(string path) - { - using (var image = Image.FromFile(path)) - { - var ms = new MemoryStream(); - image.Save(ms, image.RawFormat); - Logo = ms.ToArray(); - } - } } } \ No newline at end of file diff -r 50b462e06ecc -r 9bc60d166c8a Agendas/trunk/src/Agendas.Repositories.Tests/Agendas.Repositories.Tests.csproj --- a/Agendas/trunk/src/Agendas.Repositories.Tests/Agendas.Repositories.Tests.csproj Sat Feb 18 15:27:26 2012 -0300 +++ b/Agendas/trunk/src/Agendas.Repositories.Tests/Agendas.Repositories.Tests.csproj Sun Feb 19 16:00:38 2012 -0300 @@ -51,6 +51,7 @@ + diff -r 50b462e06ecc -r 9bc60d166c8a Agendas/trunk/src/Agendas.Repositories.Tests/PatrocinadorCrud.cs --- a/Agendas/trunk/src/Agendas.Repositories.Tests/PatrocinadorCrud.cs Sat Feb 18 15:27:26 2012 -0300 +++ b/Agendas/trunk/src/Agendas.Repositories.Tests/PatrocinadorCrud.cs Sun Feb 19 16:00:38 2012 -0300 @@ -1,4 +1,6 @@ using System; +using System.Drawing; +using System.IO; using AltNetHispano.Agendas.Domain; using AltNetHispano.Agendas.Domain.Repositories; using NUnit.Framework; @@ -11,6 +13,16 @@ private readonly Func _requestEmulator; private byte[] _logo; + private static byte[] LoadLogo(string path) + { + using (var image = Image.FromFile(path)) + { + var ms = new MemoryStream(); + image.Save(ms, image.RawFormat); + return ms.ToArray(); + } + } + public PatrocinadorCrud(Func createPatrocinadorRepository, Func requestEmulator) { _patrocinadorRepository = createPatrocinadorRepository.Invoke(); @@ -21,9 +33,11 @@ { using (_requestEmulator.Invoke()) { - var patrocinador = new Patrocinador("APRESS"); + var patrocinador = new Patrocinador("APRESS") + { + Logo = LoadLogo("images/apress.gif") + }; - patrocinador.LoadLogo("images/apress.gif"); _logo = patrocinador.Logo; _patrocinadorRepository.Save(patrocinador); diff -r 50b462e06ecc -r 9bc60d166c8a Agendas/trunk/src/Agendas.Repositories.Tests/PatrocinadorEventoTests.cs --- a/Agendas/trunk/src/Agendas.Repositories.Tests/PatrocinadorEventoTests.cs Sat Feb 18 15:27:26 2012 -0300 +++ b/Agendas/trunk/src/Agendas.Repositories.Tests/PatrocinadorEventoTests.cs Sun Feb 19 16:00:38 2012 -0300 @@ -1,5 +1,7 @@ using System; using System.Collections.Generic; +using System.Drawing; +using System.IO; using System.Linq; using System.Text; using Agendas.Repositories.Tests.Infraestructure; @@ -23,6 +25,16 @@ private Agenda _agenda; private readonly TestsHelper _testsHelper; + private static byte[] LoadLogo(string path) + { + using (var image = Image.FromFile(path)) + { + var ms = new MemoryStream(); + image.Save(ms, image.RawFormat); + return ms.ToArray(); + } + } + protected PatrocinadorEventoTests() { var infraestrutureFactory = new T(); @@ -68,8 +80,10 @@ private Guid CrearPatrocinador(string nombre, string images) { - var patrocinador = new Patrocinador(nombre); - patrocinador.LoadLogo(images); + var patrocinador = new Patrocinador(nombre) + { + Logo = LoadLogo(images) + }; using (_requestEmulator.Invoke()) { _patrocinadorRepository.Save(patrocinador); diff -r 50b462e06ecc -r 9bc60d166c8a Agendas/trunk/src/Agendas.Tests/Agendas.Tests.csproj --- a/Agendas/trunk/src/Agendas.Tests/Agendas.Tests.csproj Sat Feb 18 15:27:26 2012 -0300 +++ b/Agendas/trunk/src/Agendas.Tests/Agendas.Tests.csproj Sun Feb 19 16:00:38 2012 -0300 @@ -46,6 +46,7 @@ + diff -r 50b462e06ecc -r 9bc60d166c8a Agendas/trunk/src/Agendas.Tests/Eventos_y_patrocinadores_tests.cs --- a/Agendas/trunk/src/Agendas.Tests/Eventos_y_patrocinadores_tests.cs Sat Feb 18 15:27:26 2012 -0300 +++ b/Agendas/trunk/src/Agendas.Tests/Eventos_y_patrocinadores_tests.cs Sun Feb 19 16:00:38 2012 -0300 @@ -1,4 +1,6 @@ using System; +using System.Drawing; +using System.IO; using System.Linq; using AltNetHispano.Agendas.Domain; using Moq; @@ -15,6 +17,16 @@ private Guid _eventoDosId; private Agenda _agenda; + private static byte[] LoadLogo(string path) + { + using (var image = Image.FromFile(path)) + { + var ms = new MemoryStream(); + image.Save(ms, image.RawFormat); + return ms.ToArray(); + } + } + [SetUp] public void CrearDatos() { @@ -91,8 +103,10 @@ private static Guid CrearPatrocinador(string nombre, string images) { - var patrocinador = new Patrocinador(nombre); - patrocinador.LoadLogo(images); + var patrocinador = new Patrocinador(nombre) + { + Logo = LoadLogo(images) + }; var patrocinadorRepository = DefaultPatrocinadorRepository; patrocinadorRepository.Save(patrocinador); diff -r 50b462e06ecc -r 9bc60d166c8a Agendas/trunk/src/Agendas.Web.Tests/Controllers/PatrocinadorApiControllerTests.cs --- a/Agendas/trunk/src/Agendas.Web.Tests/Controllers/PatrocinadorApiControllerTests.cs Sat Feb 18 15:27:26 2012 -0300 +++ b/Agendas/trunk/src/Agendas.Web.Tests/Controllers/PatrocinadorApiControllerTests.cs Sun Feb 19 16:00:38 2012 -0300 @@ -14,6 +14,7 @@ namespace Agendas.Web.Tests.Controllers { [TestFixture] + [Ignore("No se utiliza PatrocinadorApiController, ya que no se puede postear el logo del Patrocinador.")] public class PatrocinadorApiControllerTests: MvcControllerTestsBase { internal void CrearPatrocinadorApress() @@ -43,94 +44,94 @@ [SetUp] public void SetUpTests() { - NhHelperTest.CleanDb(); - RegisterBinders(); + //NhHelperTest.CleanDb(); + //RegisterBinders(); } [Test] public void PatrocinadorNuevoGetSusseful() { - var patrocinadorController = new PatrocinadorApiController { ControllerContext = ControllerCtx }; - using (new RequestEmulator(NhHelper.GetSessionFactory())) - { - var resultNuevo = patrocinadorController.Nuevo(); - Assert.IsInstanceOf(typeof(PartialViewResult), resultNuevo); - Assert.AreEqual(string.Empty, ((PartialViewResult)resultNuevo).ViewName); - } + //var patrocinadorController = new PatrocinadorApiController { ControllerContext = ControllerCtx }; + //using (new RequestEmulator(NhHelper.GetSessionFactory())) + //{ + // var resultNuevo = patrocinadorController.Nuevo(); + // Assert.IsInstanceOf(typeof(PartialViewResult), resultNuevo); + // Assert.AreEqual(string.Empty, ((PartialViewResult)resultNuevo).ViewName); + //} } [Test] public void PatrocinadorNuevoPostErrorRequeriedFields() { - var patrocinadorApiController = new PatrocinadorApiController(new HttpServerStub()) - { - ControllerContext = ControllerCtx - }; - var form = new FormCollection - { - {"Nombre", ""}, - {"Logo", "" } - }; - var patrocinadorApiNew = BindModel(patrocinadorApiController, form); + //var patrocinadorApiController = new PatrocinadorApiController + //{ + // ControllerContext = ControllerCtx + //}; + //var form = new FormCollection + // { + // {"Nombre", ""}, + // {"Logo", "" } + // }; + //var patrocinadorApiNew = BindModel(patrocinadorApiController, form); - using (new RequestEmulator(NhHelper.GetSessionFactory())) - { - var resultNuevo = patrocinadorApiController.Nuevo(patrocinadorApiNew); - Assert.IsInstanceOf(typeof(JsonResult), resultNuevo); - var resultadoJsonNuevo = (Resultado)resultNuevo.Data; - Assert.IsFalse(resultadoJsonNuevo.Succeful); - //Assert.AreEqual("El Nombre es obligatorio,El Logo es obligatorio", resultadoJsonNuevo.Message); - } + //using (new RequestEmulator(NhHelper.GetSessionFactory())) + //{ + // var resultNuevo = patrocinadorApiController.Nuevo(patrocinadorApiNew); + // Assert.IsInstanceOf(typeof(JsonResult), resultNuevo); + // var resultadoJsonNuevo = (Resultado)resultNuevo.Data; + // Assert.IsFalse(resultadoJsonNuevo.Succeful); + // //Assert.AreEqual("El Nombre es obligatorio,El Logo es obligatorio", resultadoJsonNuevo.Message); + //} } [Test] public void PatrocinadorNuevoPostErrorPatrocinadorExists() { - CrearPatrocinadorApress(); + //CrearPatrocinadorApress(); - var patrocinadorApiController = new PatrocinadorApiController(new HttpServerStub()) - { - ControllerContext = ControllerCtx - }; - var form = new FormCollection - { - {"Nombre", "Apress"}, - {"Logo", @"images\apress.gif" } - }; - var patrocinadorApiNew = BindModel(patrocinadorApiController, form); + //var patrocinadorApiController = new PatrocinadorApiController + //{ + // ControllerContext = ControllerCtx + //}; + //var form = new FormCollection + // { + // {"Nombre", "Apress"}, + // {"Logo", @"images\apress.gif" } + // }; + //var patrocinadorApiNew = BindModel(patrocinadorApiController, form); - using (new RequestEmulator(NhHelper.GetSessionFactory())) - { - var resultNuevo = patrocinadorApiController.Nuevo(patrocinadorApiNew); - Assert.IsInstanceOf(typeof(JsonResult), resultNuevo); - var resultadoJsonNuevo = (Resultado)resultNuevo.Data; - Assert.IsFalse(resultadoJsonNuevo.Succeful); - Assert.AreEqual("El patrocinador ya existe.", resultadoJsonNuevo.Message); - } + //using (new RequestEmulator(NhHelper.GetSessionFactory())) + //{ + // var resultNuevo = patrocinadorApiController.Nuevo(patrocinadorApiNew); + // Assert.IsInstanceOf(typeof(JsonResult), resultNuevo); + // var resultadoJsonNuevo = (Resultado)resultNuevo.Data; + // Assert.IsFalse(resultadoJsonNuevo.Succeful); + // Assert.AreEqual("El patrocinador ya existe.", resultadoJsonNuevo.Message); + //} } [Test] public void PatrocinadorNuevoPostSusseful() { - var patrocinadorApiController = new PatrocinadorApiController(new HttpServerStub()) - { - ControllerContext = ControllerCtx - }; - var form = new FormCollection - { - {"Nombre", "Apress"}, - {"Logo", @"images\apress.gif" } - }; - var patrocinadorApiNew = BindModel(patrocinadorApiController, form); + //var patrocinadorApiController = new PatrocinadorApiController + //{ + // ControllerContext = ControllerCtx + //}; + //var form = new FormCollection + // { + // {"Nombre", "Apress"}, + // {"Logo", @"images\apress.gif" } + // }; + //var patrocinadorApiNew = BindModel(patrocinadorApiController, form); - using (new RequestEmulator(NhHelper.GetSessionFactory())) - { - var resultNuevo = patrocinadorApiController.Nuevo(patrocinadorApiNew); - Assert.IsInstanceOf(typeof(JsonResult), resultNuevo); - var resultadoJsonNuevo = (Resultado)resultNuevo.Data; - Assert.IsTrue(resultadoJsonNuevo.Succeful); - Assert.AreEqual(string.Empty, resultadoJsonNuevo.Message); - } + //using (new RequestEmulator(NhHelper.GetSessionFactory())) + //{ + // var resultNuevo = patrocinadorApiController.Nuevo(patrocinadorApiNew); + // Assert.IsInstanceOf(typeof(JsonResult), resultNuevo); + // var resultadoJsonNuevo = (Resultado)resultNuevo.Data; + // Assert.IsTrue(resultadoJsonNuevo.Succeful); + // Assert.AreEqual(string.Empty, resultadoJsonNuevo.Message); + //} } } } diff -r 50b462e06ecc -r 9bc60d166c8a Agendas/trunk/src/Agendas.Web/Controllers/PatrocinadorApiController.cs --- a/Agendas/trunk/src/Agendas.Web/Controllers/PatrocinadorApiController.cs Sat Feb 18 15:27:26 2012 -0300 +++ b/Agendas/trunk/src/Agendas.Web/Controllers/PatrocinadorApiController.cs Sun Feb 19 16:00:38 2012 -0300 @@ -1,69 +1,68 @@ -using System.Web; -using System.Web.Mvc; -using System.IO; -using AltNetHispano.Agendas.Domain; -using AltNetHispano.Agendas.Factories; -using AltNetHispano.Agendas.Web.Models; +//using System.Web; +//using System.Web.Mvc; +//using System.IO; +//using AltNetHispano.Agendas.Domain; +//using AltNetHispano.Agendas.Factories; +//using AltNetHispano.Agendas.Web.Models; -namespace AltNetHispano.Agendas.Web.Controllers -{ - public class PatrocinadorApiController : Controller - { - private HttpServerUtilityBase _server; +//namespace AltNetHispano.Agendas.Web.Controllers +//{ +// public class PatrocinadorApiController : Controller +// { +// //private HttpServerUtilityBase _server; - public HttpServerUtilityBase HttpServer - { - get - { - if (_server == null) - { - var httpServer = HttpContext.Server; - _server = httpServer; - } +// //public HttpServerUtilityBase HttpServer +// //{ +// // get +// // { +// // if (_server == null) +// // { +// // var httpServer = HttpContext.Server; +// // _server = httpServer; +// // } - return _server; - } - } +// // return _server; +// // } +// //} - public PatrocinadorApiController() - { } - - public PatrocinadorApiController(HttpServerUtilityBase server) - { - _server = server; - } +// //public PatrocinadorApiController() +// //{ } - [CustomAuthorize(Roles = Roles.Administrador)] - public PartialViewResult Nuevo() - { - var model = new PatrocinadorNewModel(); - return PartialView(model); - } +// //public PatrocinadorApiController(HttpServerUtilityBase server) +// //{ +// // _server = server; +// //} + +// [CustomAuthorize(Roles = Roles.Administrador)] +// public PartialViewResult Nuevo() +// { +// var model = new PatrocinadorNewModel(); +// return PartialView(model); +// } - [HttpPost] - [CustomAuthorize(Roles = Roles.Administrador)] - public JsonResult Nuevo(PatrocinadorNewModel model) - { - if (ModelState.IsValid) - { - var patrocinadores = AgendaFactory.GetPatrocinadorRepository(); - if (patrocinadores.GetByNombre(model.Nombre) == null) - { - var tempLogoFile = Path.Combine(HttpServer.MapPath("~/App_Data"), - model.Nombre + - model.Logo.FileName.Substring(model.Logo.FileName.LastIndexOf("."))); - model.Logo.SaveAs(tempLogoFile); - var patrocinador = new Patrocinador(model.Nombre); - patrocinador.LoadLogo(tempLogoFile); +// [HttpPost] +// [CustomAuthorize(Roles = Roles.Administrador)] +// public JsonResult Nuevo(PatrocinadorNewModel model) +// { +// if (ModelState.IsValid) +// { +// var patrocinadores = AgendaFactory.GetPatrocinadorRepository(); +// if (patrocinadores.GetByNombre(model.Nombre) == null) +// { +// //var tempLogoFile = Path.Combine(HttpServer.MapPath("~/App_Data"), +// // model.Nombre + +// // model.Logo.FileName.Substring(model.Logo.FileName.LastIndexOf("."))); +// //model.Logo.SaveAs(tempLogoFile); +// var patrocinador = new Patrocinador(model.Nombre); - patrocinadores.Save(patrocinador); +// patrocinadores.Save(patrocinador); - return Json(new Resultado(true, string.Empty)); - } - return Json(new Resultado(false, "El patrocinador ya existe.")); - } +// return Json(new Resultado(true, string.Empty)); +// } +// return Json(new Resultado(false, "El patrocinador ya existe.")); +// } - return Json(new Resultado(false, string.Join(",", ModelState.Values))); - } - } -} +// return Json(new Resultado(false, string.Join(",", ModelState.Values))); +// } +// } +//}