Mercurial > altnet-hispano
comparison Agendas/trunk/src/Agendas.Tests/PonentesTests.cs @ 94:db4b1e2cae49
Cambio del nombre de la clase Ponente a Persona
Se agrega la clase Cuenta para identificar cada una de las cuentas con que se puede autenticar una persona
Alta Automatica de cuentas de twitter creando la persona
author | Nelo@Kenia.neluz.int |
---|---|
date | Sat, 04 Jun 2011 12:11:17 -0300 |
parents | 26d0513a8410 |
children | 83d76f6e0a3c |
comparison
equal
deleted
inserted
replaced
93:65f0b3d70c18 | 94:db4b1e2cae49 |
---|---|
14 | 14 |
15 [Test] | 15 [Test] |
16 public void Publicar_dos_eventos_con_el_mismo_ponente_no_registrado() | 16 public void Publicar_dos_eventos_con_el_mismo_ponente_no_registrado() |
17 { | 17 { |
18 var publicador = new Mock<IPublicador>(); | 18 var publicador = new Mock<IPublicador>(); |
19 Assert.AreEqual(1, DefaultPersonaRepository.GetAll().Count); | |
19 | 20 |
20 var agenda = new Agenda(publicador.Object, DefaultEventoRepository, DefaultPonenteRepository); | 21 var agenda = new Agenda(publicador.Object, DefaultEventoRepository, DefaultPersonaRepository); |
21 | 22 |
22 agenda.Agendar("Audit (parallel model) con NHibernate 3", "Fabio Maulo", new DateTime(2011, 2, 26), | 23 agenda.Agendar("Audit (parallel model) con NHibernate 3", "Fabio Maulo", new DateTime(2011, 2, 26), |
23 urlInvitacion); | 24 urlInvitacion); |
24 agenda.Agendar("Conform - Parte 2", "Fabio Maulo", new DateTime(2011, 3, 5), | 25 agenda.Agendar("Conform - Parte 2", "Fabio Maulo", new DateTime(2011, 3, 5), |
25 urlInvitacion); | 26 urlInvitacion); |
27 var eventos = agenda.GetEventosAgendados(); | 28 var eventos = agenda.GetEventosAgendados(); |
28 Assert.AreEqual(2, eventos.Count); | 29 Assert.AreEqual(2, eventos.Count); |
29 | 30 |
30 publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(2)); | 31 publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(2)); |
31 | 32 |
32 Assert.AreEqual(1, DefaultPonenteRepository.GetAll().Count); | 33 Assert.AreEqual(2, DefaultPersonaRepository.GetAll().Count); |
33 | 34 |
34 var evento = eventos[0]; | 35 var evento = eventos[0]; |
35 | 36 |
36 Assert.IsNotNull(evento.Ponente); | 37 Assert.IsNotNull(evento.Persona); |
37 var ponente = evento.Ponente; | 38 var ponente = evento.Persona; |
38 Assert.IsNotNull(evento.Ponente.Eventos); | 39 Assert.IsNotNull(evento.Persona.Eventos); |
39 Assert.Contains(eventos[0], new List<Evento>(ponente.Eventos)); | 40 Assert.Contains(eventos[0], new List<Evento>(ponente.Eventos)); |
40 Assert.Contains(eventos[1], new List<Evento>(ponente.Eventos)); | 41 Assert.Contains(eventos[1], new List<Evento>(ponente.Eventos)); |
41 } | 42 } |
42 | 43 |
43 [Test] | 44 [Test] |
46 var publicador = new Mock<IPublicador>(); | 47 var publicador = new Mock<IPublicador>(); |
47 Evento evento = null; | 48 Evento evento = null; |
48 publicador.Setup(p => p.Publicar(It.IsAny<IEnumerable<Track>>())).Callback<IEnumerable<Track>>( | 49 publicador.Setup(p => p.Publicar(It.IsAny<IEnumerable<Track>>())).Callback<IEnumerable<Track>>( |
49 t => evento = t.First().Evento); | 50 t => evento = t.First().Evento); |
50 | 51 |
51 var agenda = new Agenda(publicador.Object, DefaultEventoRepository, DefaultPonenteRepository); | 52 var agenda = new Agenda(publicador.Object, DefaultEventoRepository, DefaultPersonaRepository); |
52 | 53 |
53 agenda.RegistrarPonente("Fabio Maulo", "fabiomaulo@gmail.com", "@fabiomaulo", "http://fabiomaulo.blogspot.com"); | 54 agenda.RegistrarPonente("Fabio Maulo", "fabiomaulo@gmail.com", "@fabiomaulo", "http://fabiomaulo.blogspot.com"); |
54 | 55 |
55 agenda.Agendar("Audit (parallel model) con NHibernate 3", "Fabio Maulo", new DateTime(2011, 2, 26), urlInvitacion); | 56 agenda.Agendar("Audit (parallel model) con NHibernate 3", "Fabio Maulo", new DateTime(2011, 2, 26), urlInvitacion); |
56 | 57 |
57 Assert.AreEqual(1, agenda.GetEventosAgendados().Count); | 58 Assert.AreEqual(1, agenda.GetEventosAgendados().Count); |
58 | 59 |
59 publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(1)); | 60 publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(1)); |
60 | 61 |
61 Assert.IsNotNull(evento); | 62 Assert.IsNotNull(evento); |
62 Assert.AreEqual("Fabio Maulo", evento.Ponente.Nombre); | 63 Assert.AreEqual("Fabio Maulo", evento.Persona.Nombre); |
63 Assert.AreEqual("fabiomaulo@gmail.com", evento.Ponente.Mail); | 64 Assert.AreEqual("fabiomaulo@gmail.com", evento.Persona.Mail); |
64 Assert.AreEqual("@fabiomaulo", evento.Ponente.Twitter); | 65 Assert.AreEqual("@fabiomaulo", evento.Persona.Twitter); |
65 Assert.AreEqual("http://fabiomaulo.blogspot.com", evento.Ponente.Blog); | 66 Assert.AreEqual("http://fabiomaulo.blogspot.com", evento.Persona.Blog); |
66 } | 67 } |
67 | 68 |
68 [Test] | 69 [Test] |
69 public void Publicar_evento_sin_ponente_registrado() | 70 public void Publicar_evento_sin_ponente_registrado() |
70 { | 71 { |
71 var publicador = new Mock<IPublicador>(); | 72 var publicador = new Mock<IPublicador>(); |
72 Evento evento = null; | 73 Evento evento = null; |
73 publicador.Setup(p => p.Publicar(It.IsAny<IEnumerable<Track>>())).Callback<IEnumerable<Track>>( | 74 publicador.Setup(p => p.Publicar(It.IsAny<IEnumerable<Track>>())).Callback<IEnumerable<Track>>( |
74 t => evento = t.First().Evento); | 75 t => evento = t.First().Evento); |
75 | 76 |
76 var agenda = new Agenda(publicador.Object, DefaultEventoRepository, DefaultPonenteRepository); | 77 var agenda = new Agenda(publicador.Object, DefaultEventoRepository, DefaultPersonaRepository); |
77 | 78 |
78 agenda.Agendar("Audit (parallel model) con NHibernate 3", "Fabio Maulo", new DateTime(2011, 2, 26), | 79 agenda.Agendar("Audit (parallel model) con NHibernate 3", "Fabio Maulo", new DateTime(2011, 2, 26), |
79 urlInvitacion); | 80 urlInvitacion); |
80 | 81 |
81 Assert.AreEqual(1, agenda.GetEventosAgendados().Count); | 82 Assert.AreEqual(1, agenda.GetEventosAgendados().Count); |
82 | 83 |
83 publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(1)); | 84 publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(1)); |
84 | 85 |
85 Assert.IsNotNull(evento); | 86 Assert.IsNotNull(evento); |
86 Assert.AreEqual("Fabio Maulo", evento.Ponente.Nombre); | 87 Assert.AreEqual("Fabio Maulo", evento.Persona.Nombre); |
87 Assert.IsNullOrEmpty(evento.Ponente.Twitter); | 88 Assert.IsNullOrEmpty(evento.Persona.Twitter); |
88 } | 89 } |
89 | 90 |
90 [Test] | 91 [Test] |
91 public void Quitar_ponente_de_un_evento() | 92 public void Quitar_ponente_de_un_evento() |
92 { | 93 { |
93 var agenda = new Agenda(null, DefaultEventoRepository, DefaultPonenteRepository); | 94 var agenda = new Agenda(null, DefaultEventoRepository, DefaultPersonaRepository); |
94 | 95 |
95 const string titulo = "Audit (parallel model) con NHibernate 3"; | 96 const string titulo = "Audit (parallel model) con NHibernate 3"; |
96 Guid eventoId; | 97 Guid eventoId; |
97 | 98 |
98 agenda.Proponer(titulo, "Fabio", urlInvitacion); | 99 agenda.Proponer(titulo, "Fabio", urlInvitacion); |
99 Ponente ponente; | 100 Persona persona; |
100 { | 101 { |
101 var eventos = agenda.GetEventosPropuestos(); | 102 var eventos = agenda.GetEventosPropuestos(); |
102 Assert.AreEqual(1, eventos.Count); | 103 Assert.AreEqual(1, eventos.Count); |
103 | 104 |
104 Evento evento = eventos[0]; | 105 Evento evento = eventos[0]; |
105 Assert.AreEqual("Fabio", evento.Ponente.Nombre); | 106 Assert.AreEqual("Fabio", evento.Persona.Nombre); |
106 | 107 |
107 eventoId = evento.Id; | 108 eventoId = evento.Id; |
108 ponente = evento.Ponente; | 109 persona = evento.Persona; |
109 } | 110 } |
110 | 111 |
111 agenda.ModificarPropuesta(eventoId, titulo, null, urlInvitacion); | 112 agenda.ModificarPropuesta(eventoId, titulo, null, urlInvitacion); |
112 { | 113 { |
113 var eventos = agenda.GetEventosPropuestos(); | 114 var eventos = agenda.GetEventosPropuestos(); |
114 Assert.AreEqual(1, eventos.Count); | 115 Assert.AreEqual(1, eventos.Count); |
115 | 116 |
116 Evento evento = eventos[0]; | 117 Evento evento = eventos[0]; |
117 Assert.IsNull(evento.Ponente); | 118 Assert.IsNull(evento.Persona); |
118 } | 119 } |
119 | 120 |
120 Assert.AreEqual(0, ponente.Eventos.Count()); | 121 Assert.AreEqual(0, persona.Eventos.Count()); |
121 } | 122 } |
122 | 123 |
123 [Test] | 124 [Test] |
124 public void Cambiar_ponente_de_un_evento() | 125 public void Cambiar_ponente_de_un_evento() |
125 { | 126 { |
126 var agenda = new Agenda(null, DefaultEventoRepository, DefaultPonenteRepository); | 127 var agenda = new Agenda(null, DefaultEventoRepository, DefaultPersonaRepository); |
127 | 128 |
128 const string titulo = "Audit (parallel model) con NHibernate 3"; | 129 const string titulo = "Audit (parallel model) con NHibernate 3"; |
129 Guid eventoId; | 130 Guid eventoId; |
130 | 131 |
131 agenda.Proponer(titulo, "Fabio", urlInvitacion); | 132 agenda.Proponer(titulo, "Fabio", urlInvitacion); |
132 Ponente ponente1; | 133 Persona ponente1; |
133 { | 134 { |
134 var eventos = agenda.GetEventosPropuestos(); | 135 var eventos = agenda.GetEventosPropuestos(); |
135 Assert.AreEqual(1, eventos.Count); | 136 Assert.AreEqual(1, eventos.Count); |
136 | 137 |
137 Evento evento = eventos[0]; | 138 Evento evento = eventos[0]; |
138 Assert.AreEqual("Fabio", evento.Ponente.Nombre); | 139 Assert.AreEqual("Fabio", evento.Persona.Nombre); |
139 | 140 |
140 eventoId = evento.Id; | 141 eventoId = evento.Id; |
141 ponente1 = evento.Ponente; | 142 ponente1 = evento.Persona; |
142 } | 143 } |
143 | 144 |
144 agenda.ModificarPropuesta(eventoId, titulo, "José", urlInvitacion); | 145 agenda.ModificarPropuesta(eventoId, titulo, "José", urlInvitacion); |
145 Ponente ponente2; | 146 Persona ponente2; |
146 { | 147 { |
147 var eventos = agenda.GetEventosPropuestos(); | 148 var eventos = agenda.GetEventosPropuestos(); |
148 Assert.AreEqual(1, eventos.Count); | 149 Assert.AreEqual(1, eventos.Count); |
149 | 150 |
150 Evento evento = eventos[0]; | 151 Evento evento = eventos[0]; |
151 Assert.IsNotNull(evento.Ponente); | 152 Assert.IsNotNull(evento.Persona); |
152 ponente2 = evento.Ponente; | 153 ponente2 = evento.Persona; |
153 } | 154 } |
154 | 155 |
155 Assert.AreEqual(0, ponente1.Eventos.Count()); | 156 Assert.AreEqual(0, ponente1.Eventos.Count()); |
156 Assert.AreEqual(1, ponente2.Eventos.Count()); | 157 Assert.AreEqual(1, ponente2.Eventos.Count()); |
157 } | 158 } |