Mercurial > altnet-hispano
comparison Agendas/trunk/src/Agendas.Tests/Eventos_y_patrocinadores_tests.cs @ 287:eeca9ddb330a
BUG: Los Patrocinadores quedaban asociados a un único evento. Se armó un test que lo demuestra y se modificó el modelo de la base de datos.
author | juanjose.montesdeocaarbos |
---|---|
date | Mon, 02 Jan 2012 19:44:41 -0300 |
parents | 72a96459f910 |
children | 9bc60d166c8a |
comparison
equal
deleted
inserted
replaced
286:a8f7c41e3b47 | 287:eeca9ddb330a |
---|---|
9 [TestFixture] | 9 [TestFixture] |
10 public class Eventos_y_patrocinadores_tests : TestBase | 10 public class Eventos_y_patrocinadores_tests : TestBase |
11 { | 11 { |
12 private Guid _apressId; | 12 private Guid _apressId; |
13 private Guid _jetbrainsId; | 13 private Guid _jetbrainsId; |
14 private Guid _eventoId; | 14 private Guid _eventoUnoId; |
15 private Guid _eventoDosId; | |
15 private Agenda _agenda; | 16 private Agenda _agenda; |
16 | 17 |
17 [SetUp] | 18 [SetUp] |
18 public void CrearDatos() | 19 public void CrearDatos() |
19 { | 20 { |
21 var fechaInicio = DateTime.Today.AddDays(7).ToUniversalTime(); | |
22 var fechaTermino = fechaInicio.AddHours(2); | |
20 _agenda = new Agenda(null, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); | 23 _agenda = new Agenda(null, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); |
21 | 24 |
22 _apressId = CrearPatrocinador("Apress", "images/apress.gif"); | 25 _apressId = CrearPatrocinador("Apress", "images/apress.gif"); |
23 _jetbrainsId = CrearPatrocinador("jetbrains", "images/jetbrains.png"); | 26 _jetbrainsId = CrearPatrocinador("jetbrains", "images/jetbrains.png"); |
24 _eventoId = CrearEvento(); | 27 _eventoUnoId = CrearEvento(new[] { "Carlos Peix", "Nelo Pauselli" }, "ADFS", fechaInicio, fechaTermino); |
28 _eventoDosId = CrearEvento(new[] { "Carlos Peix", "Nelo Pauselli" }, "ADFS: Segunda parte.", fechaInicio.AddDays(3), fechaTermino.AddDays(3)); | |
25 } | 29 } |
26 | 30 |
27 [Test] | 31 [Test] |
28 public void Indicar_patrociadores() | 32 public void Indicar_patrociadores() |
29 { | 33 { |
30 _agenda.IndicarPatrocinadores(_eventoId, new[] { _apressId, _jetbrainsId }); | 34 _agenda.IndicarPatrocinadores(_eventoUnoId, new[] { _apressId, _jetbrainsId }); |
31 | 35 |
32 var evento = DefaultEventoRepository.GetActivos().First(); | 36 var evento = DefaultEventoRepository.GetActivos().First(); |
33 Assert.AreNotEqual(Guid.Empty, evento.Id); | 37 Assert.AreNotEqual(Guid.Empty, evento.Id); |
34 Assert.IsNotNull(evento.FechaInicio); | 38 Assert.IsNotNull(evento.FechaInicio); |
35 Assert.IsNotNull(evento.Patrocinadores); | 39 Assert.IsNotNull(evento.Patrocinadores); |
40 | 44 |
41 [Test] | 45 [Test] |
42 public void Agregar_patrociador() | 46 public void Agregar_patrociador() |
43 { | 47 { |
44 { | 48 { |
45 _agenda.IndicarPatrocinadores(_eventoId, new[] { _apressId }); | 49 _agenda.IndicarPatrocinadores(_eventoUnoId, new[] { _apressId }); |
46 | 50 |
47 var evento = DefaultEventoRepository.GetActivos().First(); | 51 var evento = DefaultEventoRepository.GetActivos().First(); |
48 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); | 52 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); |
49 Assert.IsFalse(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); | 53 Assert.IsFalse(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); |
50 } | 54 } |
51 | 55 |
52 { | 56 { |
53 _agenda.IndicarPatrocinadores(_eventoId, new[] { _apressId, _jetbrainsId }); | 57 _agenda.IndicarPatrocinadores(_eventoUnoId, new[] { _apressId, _jetbrainsId }); |
54 | 58 |
55 var evento = DefaultEventoRepository.GetActivos().First(); | 59 var evento = DefaultEventoRepository.GetActivos().First(); |
56 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); | 60 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); |
57 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); | 61 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); |
58 } | 62 } |
60 | 64 |
61 [Test] | 65 [Test] |
62 public void Quitar_patrociador() | 66 public void Quitar_patrociador() |
63 { | 67 { |
64 { | 68 { |
65 _agenda.IndicarPatrocinadores(_eventoId, new[] { _apressId, _jetbrainsId }); | 69 _agenda.IndicarPatrocinadores(_eventoUnoId, new[] { _apressId, _jetbrainsId }); |
66 | 70 |
67 var evento = DefaultEventoRepository.GetActivos().First(); | 71 var evento = DefaultEventoRepository.GetActivos().First(); |
68 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); | 72 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); |
69 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); | 73 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); |
70 } | 74 } |
71 | 75 |
72 { | 76 { |
73 _agenda.IndicarPatrocinadores(_eventoId, new[] { _apressId }); | 77 _agenda.IndicarPatrocinadores(_eventoUnoId, new[] { _apressId }); |
74 | 78 |
75 var evento = DefaultEventoRepository.GetActivos().First(); | 79 var evento = DefaultEventoRepository.GetActivos().First(); |
76 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); | 80 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); |
77 Assert.IsFalse(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); | 81 Assert.IsFalse(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); |
78 } | 82 } |
79 | 83 |
80 { | 84 { |
81 _agenda.IndicarPatrocinadores(_eventoId, new Guid[] { }); | 85 _agenda.IndicarPatrocinadores(_eventoUnoId, new Guid[] { }); |
82 | 86 |
83 var evento = DefaultEventoRepository.GetActivos().First(); | 87 var evento = DefaultEventoRepository.GetActivos().First(); |
84 Assert.IsFalse(evento.Patrocinadores.Any()); | 88 Assert.IsFalse(evento.Patrocinadores.Any()); |
85 } | 89 } |
86 } | 90 } |
94 patrocinadorRepository.Save(patrocinador); | 98 patrocinadorRepository.Save(patrocinador); |
95 | 99 |
96 return patrocinador.Id; | 100 return patrocinador.Id; |
97 } | 101 } |
98 | 102 |
99 private Guid CrearEvento() | 103 private Guid CrearEvento(string[] nombrePonentes, string nombreEvento, DateTime fechaInicio, DateTime fechaTermino) |
100 { | 104 { |
101 var fechaInicio = DateTime.Today.AddDays(7).ToUniversalTime(); | 105 var ponentes = new Guid[nombrePonentes.Length]; |
102 var fechaTermino = fechaInicio.AddHours(2); | 106 for (var nroPonente = 0; nroPonente < nombrePonentes.Length; nroPonente++) |
103 var ponentes = new[] {TestsHelper.GetOrCreatePonente("Carlos Peix"), TestsHelper.GetOrCreatePonente("Nelo Pauselli")}; | 107 { |
104 _agenda.Agendar("ADFS", ponentes, fechaInicio, fechaTermino, null, TipoEvento.Van); | 108 ponentes[nroPonente] = TestsHelper.GetOrCreatePonente(nombrePonentes[nroPonente]); |
109 } | |
105 | 110 |
106 var evento = DefaultEventoRepository.GetActivos().First(); | 111 _agenda.Agendar(nombreEvento, ponentes, fechaInicio, fechaTermino, null, TipoEvento.Van); |
112 | |
113 var evento = DefaultEventoRepository.GetActivos().First(e=>e.Titulo == nombreEvento); | |
107 return evento.Id; | 114 return evento.Id; |
108 } | 115 } |
109 | 116 |
110 } | 117 } |
111 } | 118 } |