annotate Agendas/trunk/src/Agendas.Web.Tests/Controllers/EventoControllerTests.cs @ 243:59f8fa2f835e

Ticket 177: Valor de Duración de VAN en 0.
author juanjose.montesdeocaarbos
date Thu, 06 Oct 2011 08:13:05 -0300
parents 5cc1681d3789
children bdc946dd5c94
rev   line source
233
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
1 using System;
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
2 using System.Collections.Generic;
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
3 using System.Linq;
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
4 using System.Text;
243
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
5 using System.Web.Mvc;
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
6 using Agendas.NHibernate;
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
7 using Agendas.Repositories.Tests.Infraestructure;
233
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
8 using AltNetHispano.Agendas.Domain;
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
9 using AltNetHispano.Agendas.Repositories.NHibernate;
233
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
10 using AltNetHispano.Agendas.Web.Controllers;
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
11 using AltNetHispano.Agendas.Web.Models;
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
12 using Moq;
233
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
13 using NUnit.Framework;
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
14
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
15 namespace Agendas.Web.Tests.Controllers
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
16 {
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
17 [TestFixture]
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
18 public class EventoControllerTests
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
19 {
243
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
20 private void PopulatePersona()
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
21 {
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
22 using (new RequestEmulator(NhHelper.GetSessionFactory()))
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
23 {
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
24 var personaController = new PersonaController();
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
25 personaController.Nueva(new PersonaNewModel
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
26 {
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
27 Nombre = "Persona 1",
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
28 Blog = "http://blog.persona1.com",
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
29 EMail = "info@persona1.com",
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
30 Roles = new string[] {"Administrador", "Usuario"},
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
31 Twitter = "persona1"
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
32 });
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
33 }
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
34 }
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
35
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
36 private Guid GetGuidPersona()
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
37 {
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
38 using (new RequestEmulator(NhHelper.GetSessionFactory()))
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
39 {
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
40 var personaController = new PersonaController();
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
41 var viewResult = (ViewResult) personaController.Index();
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
42 return ((PersonaIndexModel) viewResult.Model).Items.FirstOrDefault().Id;
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
43 }
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
44 }
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
45
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
46 private void SetearUsuario()
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
47 {
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
48 var seguridad = new Mock<ISeguridad>();
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
49 seguridad.Setup(s => s.GetUserName()).Returns("neluz");
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
50 IdentityContext.Init(seguridad.Object, new PersonaRepository(NhHelper.GetSessionFactory()));
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
51 }
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
52
243
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
53 [SetUp]
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
54 public void Setup()
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
55 {
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
56 NhHelperTest.CleanDb();
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
57 PopulatePersona();
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
58 SetearUsuario();
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
59 }
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
60
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
61 [Test]
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
62 public void Publicar_Evento()
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
63 {
243
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
64 ViewResult viewResult = null;
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
65 IEnumerable<EventoDto> eventosDto = null;
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
66 EventoPublicarModel eventoPublicar = null;
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
67 var eventoController = new EventoController();
233
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
68
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
69 var eventoNew = new EventoNewModel
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
70 {
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
71 Duracion = new TimeSpan(0, 0, 0),
243
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
72 Fecha = DateTime.Today.AddDays(15),
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
73 Hora = new TimeSpan(18, 0, 0),
243
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
74 Ponentes = new[] { GetGuidPersona()},
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
75 TipoEvento = (int) TipoEvento.Van,
243
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
76 Titulo = "Título 2"
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
77 };
243
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
78
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
79 using (new RequestEmulator(NhHelper.GetSessionFactory()))
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
80 {
243
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
81 eventoController.Nuevo(eventoNew);
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
82 }
243
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
83 using (new RequestEmulator(NhHelper.GetSessionFactory()))
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
84 {
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
85 viewResult = (ViewResult)eventoController.Index();
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
86 }
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
87 using (new RequestEmulator(NhHelper.GetSessionFactory()))
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
88 {
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
89 eventosDto = ((EventoIndexModel) viewResult.Model).ProximosEventos;
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
90 }
241
a7daa939ef0c Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents: 233
diff changeset
91 using (new RequestEmulator(NhHelper.GetSessionFactory()))
a7daa939ef0c Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents: 233
diff changeset
92 {
243
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
93 var firstEvent = eventosDto.LastOrDefault();
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
94
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
95 eventoPublicar = new EventoPublicarModel
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
96 {
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
97 Id = firstEvent.Id,
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
98 NroOrden = 1,
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
99 //Titulo = "Título 2",
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
100 UrlWiki = "http://www.altnethistpano.org/vans/titulo-1.ashx",
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
101 DuracionReal = new TimeSpan(0, 0, 0)
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
102 };
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
103 }
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
104 using (new RequestEmulator(NhHelper.GetSessionFactory()))
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
105 {
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
106 var resultPublicar = (ViewResult)eventoController.Publicar(eventoPublicar);
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
107 var modelState = resultPublicar.ViewData.ModelState.FirstOrDefault().Value;
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
108
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
109 Assert.AreEqual(1, modelState.Errors.Count);
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
110 Assert.AreEqual("Duración fuera de rango", modelState.Errors.FirstOrDefault().ErrorMessage);
59f8fa2f835e Ticket 177: Valor de Duración de VAN en 0.
juanjose.montesdeocaarbos
parents: 242
diff changeset
111
241
a7daa939ef0c Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents: 233
diff changeset
112 }
233
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
113 }
32e4e0e7a140 Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents:
diff changeset
114 }
241
a7daa939ef0c Probando de armar tests de Agendas.Web
juanjose.montesdeocaarbos
parents: 233
diff changeset
115
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 233
diff changeset
116 }