Mercurial > altnet-hispano
comparison Agendas/trunk/src/Agendas.Tests/Eventos_y_patrocinadores_tests.cs @ 138:62791999ad01
Agregando relación entre Evento y Patrocinador
author | nelopauselli |
---|---|
date | Thu, 28 Jul 2011 10:13:28 -0300 |
parents | |
children | e6e6bfb1da9e |
comparison
equal
deleted
inserted
replaced
137:2d1adbaf0373 | 138:62791999ad01 |
---|---|
1 using System; | |
2 using System.Linq; | |
3 using AltNetHispano.Agendas.Domain; | |
4 using Moq; | |
5 using NUnit.Framework; | |
6 | |
7 namespace AltNetHispano.Agendas.Tests | |
8 { | |
9 [TestFixture] | |
10 public class Eventos_y_patrocinadores_tests : TestBase | |
11 { | |
12 private Guid _apressId; | |
13 private Guid _jetbrainsId; | |
14 private Guid _eventoId; | |
15 private Agenda _agenda; | |
16 | |
17 [SetUp] | |
18 public void CrearDatos() | |
19 { | |
20 _agenda = new Agenda(null, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); | |
21 | |
22 _apressId = CrearPatrocinador("Apress", "images/apress.gif"); | |
23 _jetbrainsId = CrearPatrocinador("jetbrains", "images/jetbrains.png"); | |
24 _eventoId = CrearEvento(); | |
25 } | |
26 | |
27 [Test] | |
28 public void Indicar_patrociadores() | |
29 { | |
30 _agenda.IndicarPatrocinadores(_eventoId, new[] { _apressId, _jetbrainsId }); | |
31 | |
32 var evento = DefaultEventoRepository.GetActivos().First(); | |
33 Assert.AreNotEqual(Guid.Empty, evento.Id); | |
34 Assert.IsNotNull(evento.Fecha); | |
35 Assert.IsNotNull(evento.Patrocinadores); | |
36 Assert.IsTrue(evento.Patrocinadores.Any()); | |
37 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); | |
38 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); | |
39 } | |
40 | |
41 [Test] | |
42 public void Agregar_patrociador() | |
43 { | |
44 { | |
45 _agenda.IndicarPatrocinadores(_eventoId, new[] {_apressId}); | |
46 | |
47 var evento = DefaultEventoRepository.GetActivos().First(); | |
48 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); | |
49 Assert.IsFalse(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); | |
50 } | |
51 | |
52 { | |
53 _agenda.IndicarPatrocinadores(_eventoId, new[] { _apressId, _jetbrainsId }); | |
54 | |
55 var evento = DefaultEventoRepository.GetActivos().First(); | |
56 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); | |
57 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); | |
58 } | |
59 } | |
60 | |
61 [Test] | |
62 public void Quitar_patrociador() | |
63 { | |
64 { | |
65 _agenda.IndicarPatrocinadores(_eventoId, new[] { _apressId, _jetbrainsId }); | |
66 | |
67 var evento = DefaultEventoRepository.GetActivos().First(); | |
68 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); | |
69 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); | |
70 } | |
71 | |
72 { | |
73 _agenda.IndicarPatrocinadores(_eventoId, new[] { _apressId }); | |
74 | |
75 var evento = DefaultEventoRepository.GetActivos().First(); | |
76 Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); | |
77 Assert.IsFalse(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); | |
78 } | |
79 | |
80 { | |
81 _agenda.IndicarPatrocinadores(_eventoId, new Guid[] {}); | |
82 | |
83 var evento = DefaultEventoRepository.GetActivos().First(); | |
84 Assert.IsFalse(evento.Patrocinadores.Any()); | |
85 } | |
86 } | |
87 | |
88 private static Guid CrearPatrocinador(string nombre, string images) | |
89 { | |
90 var patrocinador = new Patrocinador(nombre); | |
91 patrocinador.LoadLogo(images); | |
92 | |
93 var patrocinadorRepository = DefaultPatrocinadorRepository; | |
94 patrocinadorRepository.Save(patrocinador); | |
95 | |
96 return patrocinador.Id; | |
97 } | |
98 | |
99 private Guid CrearEvento() | |
100 { | |
101 _agenda.Agendar("ADFS", "Nelo Pauselli", DateTime.Today.AddDays(7), null, TipoEvento.Van); | |
102 | |
103 var evento = DefaultEventoRepository.GetActivos().First(); | |
104 return evento.Id; | |
105 } | |
106 | |
107 } | |
108 } |