Mercurial > altnet-hispano
comparison Agendas/trunk/src/Agendas.Google.Test/PublicadorTest.cs @ 185:2d02adb79322
Se agrega fecha de termino de un Evento y se incluye la hora a la fecha de inicio.
Se modifica la propiedad Fecha del Evento, renombrandola FechaInicio.
En el ModelView se agrega propiedades Duración y Hora del Evento cuando es Modificado, Nuevo y Agendado.
Las fechas ingresadas son creadas en sistema UTC
Queda pendiente Agregar duración a Google Calendar.
author | alabra |
---|---|
date | Tue, 09 Aug 2011 01:04:27 -0400 |
parents | e6e6bfb1da9e |
children | cd96cfc8a1f5 |
comparison
equal
deleted
inserted
replaced
184:2a336a6a76b5 | 185:2d02adb79322 |
---|---|
14 { | 14 { |
15 [Test] | 15 [Test] |
16 public void CuandoPublicarEventoDadoAccionAgendarEntoncesEventoCreado() | 16 public void CuandoPublicarEventoDadoAccionAgendarEntoncesEventoCreado() |
17 { | 17 { |
18 var adapter = new Mock<IGCalendarAdapter>(); | 18 var adapter = new Mock<IGCalendarAdapter>(); |
19 var message=""; | 19 string message; |
20 var fechaInicio = new DateTime(2011, 07, 09, 18, 0, 0, DateTimeKind.Utc); | |
21 var fechaTermino = fechaInicio.AddHours(2); | |
20 adapter.Setup(ad => ad.CreateEvent(It.IsAny<IGEventDetail>(), out message)).Returns(true); | 22 adapter.Setup(ad => ad.CreateEvent(It.IsAny<IGEventDetail>(), out message)).Returns(true); |
21 | 23 |
22 var publicador = new GooglePublicador(adapter.Object); | 24 var publicador = new GooglePublicador(adapter.Object); |
23 var agenda = new Agenda(publicador, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); | 25 var agenda = new Agenda(publicador, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); |
24 | 26 |
25 agenda.Proponer("Agile Patterns", null, null, TipoEvento.Van); | 27 agenda.Proponer("Agile Patterns", null, null, TipoEvento.Van); |
26 adapter.Verify(ad => ad.CreateEvent(It.IsAny<IGEventDetail>(), out message), Times.Never()); | 28 adapter.Verify(ad => ad.CreateEvent(It.IsAny<IGEventDetail>(), out message), Times.Never()); |
27 | 29 |
28 agenda.Agendar("Agile Patterns", TestsHelper.GetOrCreatePonente("Alejandro Labra"), new DateTime(2011, 07, 09), "https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion", TipoEvento.Van); | 30 |
31 agenda.Agendar("Agile Patterns", TestsHelper.GetOrCreatePonente("Alejandro Labra"), fechaInicio, | |
32 fechaTermino, "https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion", | |
33 TipoEvento.Van); | |
29 adapter.Verify(ad => ad.CreateEvent(It.IsAny<IGEventDetail>(), out message), Times.Once()); | 34 adapter.Verify(ad => ad.CreateEvent(It.IsAny<IGEventDetail>(), out message), Times.Once()); |
30 } | 35 } |
31 | 36 |
32 [Test] | 37 [Test] |
33 public void CuandoPublicarEventoDadoTipoVanEntoncesDetalleCorrecto() | 38 public void CuandoPublicarEventoDadoTipoVanEntoncesDetalleCorrecto() |
34 { | 39 { |
35 var adapter = new Mock<IGCalendarAdapter>(); | 40 var adapter = new Mock<IGCalendarAdapter>(); |
36 var detail = new VanGEventDetail(); | 41 var detail = new VanGEventDetail(); |
42 var fechaInicio = new DateTime(2011, 07, 09, 18, 0, 0, DateTimeKind.Utc); | |
43 var fechaTermino = fechaInicio.AddHours(2); | |
37 | 44 |
38 var publicador = new GooglePublicador(adapter.Object); | 45 var publicador = new GooglePublicador(adapter.Object); |
39 var agenda = new Agenda(publicador, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); | 46 var agenda = new Agenda(publicador, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); |
40 agenda.Proponer("Agile Patterns", null, null, TipoEvento.Van); | 47 agenda.Proponer("Agile Patterns", null, null, TipoEvento.Van); |
41 agenda.Agendar("Agile Patterns", TestsHelper.GetOrCreatePonente("Alejandro Labra"), new DateTime(2011, 07, 09), "https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion", TipoEvento.Van); | 48 agenda.Agendar("Agile Patterns", TestsHelper.GetOrCreatePonente("Alejandro Labra"), fechaInicio, |
49 fechaTermino, "https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion", | |
50 TipoEvento.Van); | |
42 | 51 |
43 var ev = DefaultEventoRepository.GetActivos()[0]; | 52 var ev = DefaultEventoRepository.GetActivos()[0]; |
44 detail.Generate(ev); | 53 detail.Generate(ev); |
45 | 54 |
46 Assert.AreEqual("http://snipr.com/virtualaltnet", detail.Location); | 55 Assert.AreEqual("http://snipr.com/virtualaltnet", detail.Location); |
47 Assert.AreEqual("VAN sobre Agile Patterns", detail.Title); | 56 Assert.AreEqual("VAN sobre Agile Patterns", detail.Title); |
48 | 57 |
49 Assert.AreEqual(DateTimeKind.Utc, detail.StartEvent.Kind); | 58 Assert.AreEqual(DateTimeKind.Utc, detail.StartEvent.Kind); |
50 Assert.AreEqual(18, detail.StartEvent.Hour); | 59 Assert.AreEqual(18, detail.StartEvent.Hour); |
51 Assert.AreEqual(ev.Fecha.Value.Day, detail.StartEvent.Day); | 60 Assert.AreEqual(ev.FechaInicio.Value.Day, detail.StartEvent.Day); |
52 Assert.AreEqual(ev.Fecha.Value.Month, detail.StartEvent.Month); | 61 Assert.AreEqual(ev.FechaInicio.Value.Month, detail.StartEvent.Month); |
53 Assert.AreEqual(ev.Fecha.Value.Year, detail.StartEvent.Year); | 62 Assert.AreEqual(ev.FechaInicio.Value.Year, detail.StartEvent.Year); |
54 | 63 |
55 Assert.AreEqual(DateTimeKind.Utc, detail.EndEvent.Kind); | 64 Assert.AreEqual(DateTimeKind.Utc, detail.EndEvent.Kind); |
56 Assert.AreEqual(20, detail.EndEvent.Hour); | 65 Assert.AreEqual(20, detail.EndEvent.Hour); |
57 Assert.AreEqual(ev.Fecha.Value.Day, detail.EndEvent.Day); | 66 Assert.AreEqual(ev.FechaInicio.Value.Day, detail.EndEvent.Day); |
58 Assert.AreEqual(ev.Fecha.Value.Month, detail.EndEvent.Month); | 67 Assert.AreEqual(ev.FechaInicio.Value.Month, detail.EndEvent.Month); |
59 Assert.AreEqual(ev.Fecha.Value.Year, detail.EndEvent.Year); | 68 Assert.AreEqual(ev.FechaInicio.Value.Year, detail.EndEvent.Year); |
60 | 69 |
61 Assert.AreEqual("La comunidad ALT.NET Hispano (http://altnethispano.org) realizará una VAN sobre Agile Patterns, con Alejandro Labra." + | 70 Assert.AreEqual("La comunidad ALT.NET Hispano (http://altnethispano.org) realizará una VAN sobre Agile Patterns, con Alejandro Labra." + |
62 "\n\rFecha: sábado, 09 de julio de 2011 a las 18:00 hrs. Hora Internacional (GMT/UTC), con una duración aproximada de 2 horas." + | 71 "\n\rFecha: sábado, 09 de julio de 2011 a las 18:00 hrs. Hora Internacional (GMT/UTC), con una duración aproximada de 2 horas." + |
63 "\n\rPueden plantear sus comentarios e inquietudes sobre el tema de la reunión en: https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion" + | 72 "\n\rPueden plantear sus comentarios e inquietudes sobre el tema de la reunión en: https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion" + |
64 "\n\rPara mayor información sobre cómo atender la reunión consulten: http://tinyurl.com/van-hispano" + | 73 "\n\rPara mayor información sobre cómo atender la reunión consulten: http://tinyurl.com/van-hispano" + |
68 [Test] | 77 [Test] |
69 public void CuandoPublicarEventoTipoCafeEntoncesDetalleCorrecto() | 78 public void CuandoPublicarEventoTipoCafeEntoncesDetalleCorrecto() |
70 { | 79 { |
71 var adapter = new Mock<IGCalendarAdapter>(); | 80 var adapter = new Mock<IGCalendarAdapter>(); |
72 var detail = new CafeGEventDetail(); | 81 var detail = new CafeGEventDetail(); |
82 var fechaInicio = new DateTime(2011, 07, 09, 18, 0, 0, DateTimeKind.Utc); | |
83 var fechaTermino = fechaInicio.AddHours(2); | |
73 | 84 |
74 var publicador = new GooglePublicador(adapter.Object); | 85 var publicador = new GooglePublicador(adapter.Object); |
75 var agenda = new Agenda(publicador, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); | 86 var agenda = new Agenda(publicador, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); |
76 agenda.Proponer("Agile Patterns", null, null, TipoEvento.Cafe); | 87 agenda.Proponer("Agile Patterns", null, null, TipoEvento.Cafe); |
77 agenda.Agendar("Agile Patterns", TestsHelper.GetOrCreatePonente("Alejandro Labra"), new DateTime(2011, 07, 09), "https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion", TipoEvento.Cafe); | 88 agenda.Agendar("Agile Patterns", TestsHelper.GetOrCreatePonente("Alejandro Labra"), fechaInicio, |
89 fechaTermino, "https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion", | |
90 TipoEvento.Cafe); | |
78 | 91 |
79 var ev = DefaultEventoRepository.GetActivos()[0]; | 92 var ev = DefaultEventoRepository.GetActivos()[0]; |
80 detail.Generate(ev); | 93 detail.Generate(ev); |
81 | 94 |
82 Assert.AreEqual("http://snipr.com/virtualaltnet", detail.Location); | 95 Assert.AreEqual("http://snipr.com/virtualaltnet", detail.Location); |
83 Assert.AreEqual("Alt.Net Café Agile Patterns", detail.Title); | 96 Assert.AreEqual("Alt.Net Café Agile Patterns", detail.Title); |
84 | 97 |
85 Assert.AreEqual(DateTimeKind.Utc, detail.StartEvent.Kind); | 98 Assert.AreEqual(DateTimeKind.Utc, detail.StartEvent.Kind); |
86 Assert.AreEqual(18, detail.StartEvent.Hour); | 99 Assert.AreEqual(18, detail.StartEvent.Hour); |
87 Assert.AreEqual(ev.Fecha.Value.Day, detail.StartEvent.Day); | 100 Assert.AreEqual(ev.FechaInicio.Value.Day, detail.StartEvent.Day); |
88 Assert.AreEqual(ev.Fecha.Value.Month, detail.StartEvent.Month); | 101 Assert.AreEqual(ev.FechaInicio.Value.Month, detail.StartEvent.Month); |
89 Assert.AreEqual(ev.Fecha.Value.Year, detail.StartEvent.Year); | 102 Assert.AreEqual(ev.FechaInicio.Value.Year, detail.StartEvent.Year); |
90 | 103 |
91 Assert.AreEqual(DateTimeKind.Utc, detail.EndEvent.Kind); | 104 Assert.AreEqual(DateTimeKind.Utc, detail.EndEvent.Kind); |
92 Assert.AreEqual(20, detail.EndEvent.Hour); | 105 Assert.AreEqual(20, detail.EndEvent.Hour); |
93 Assert.AreEqual(ev.Fecha.Value.Day, detail.EndEvent.Day); | 106 Assert.AreEqual(ev.FechaInicio.Value.Day, detail.EndEvent.Day); |
94 Assert.AreEqual(ev.Fecha.Value.Month, detail.EndEvent.Month); | 107 Assert.AreEqual(ev.FechaInicio.Value.Month, detail.EndEvent.Month); |
95 Assert.AreEqual(ev.Fecha.Value.Year, detail.EndEvent.Year); | 108 Assert.AreEqual(ev.FechaInicio.Value.Year, detail.EndEvent.Year); |
96 | 109 |
97 Assert.AreEqual("La comunidad ALT.NET Hispano (http://altnethispano.org) realizará un Alt.Net Cafe virtual con el tema Agile Patterns." + | 110 Assert.AreEqual("La comunidad ALT.NET Hispano (http://altnethispano.org) realizará un Alt.Net Cafe virtual con el tema Agile Patterns." + |
98 "\n\rFecha: sábado, 09 de julio de 2011 a las 18:00 hrs. Hora Internacional (GMT/UTC), con una duración aproximada de 2 horas." + | 111 "\n\rFecha: sábado, 09 de julio de 2011 a las 18:00 hrs. Hora Internacional (GMT/UTC), con una duración aproximada de 2 horas." + |
99 "\n\rPueden plantear sus comentarios e inquietudes sobre el tema de la reunión en: https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion" + | 112 "\n\rPueden plantear sus comentarios e inquietudes sobre el tema de la reunión en: https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion" + |
100 "\n\rPara mayor información sobre cómo atender la reunión consulten: http://tinyurl.com/van-hispano" + | 113 "\n\rPara mayor información sobre cómo atender la reunión consulten: http://tinyurl.com/van-hispano" + |
104 [Test] | 117 [Test] |
105 public void CuandoPublicarEventoTipoEstudioEntoncesDetalleCorrecto() | 118 public void CuandoPublicarEventoTipoEstudioEntoncesDetalleCorrecto() |
106 { | 119 { |
107 var adapter = new Mock<IGCalendarAdapter>(); | 120 var adapter = new Mock<IGCalendarAdapter>(); |
108 var detail = new EstudioGEventDetail(); | 121 var detail = new EstudioGEventDetail(); |
122 var fechaInicio = new DateTime(2011, 07, 09, 18, 0, 0, DateTimeKind.Utc); | |
123 var fechaTermino = fechaInicio.AddHours(2); | |
109 | 124 |
110 var publicador = new GooglePublicador(adapter.Object); | 125 var publicador = new GooglePublicador(adapter.Object); |
111 var agenda = new Agenda(publicador, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); | 126 var agenda = new Agenda(publicador, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); |
112 agenda.Proponer("Agile Patterns", null, null, TipoEvento.GrupoEstudio); | 127 agenda.Proponer("Agile Patterns", null, null, TipoEvento.GrupoEstudio); |
113 agenda.Agendar("Agile Patterns", TestsHelper.GetOrCreatePonente("Alejandro Labra"), new DateTime(2011, 07, 09), "https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion", TipoEvento.GrupoEstudio); | 128 agenda.Agendar("Agile Patterns", TestsHelper.GetOrCreatePonente("Alejandro Labra"), fechaInicio, |
129 fechaTermino, "https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion", | |
130 TipoEvento.GrupoEstudio); | |
114 | 131 |
115 var ev = DefaultEventoRepository.GetActivos()[0]; | 132 var ev = DefaultEventoRepository.GetActivos()[0]; |
116 detail.Generate(ev); | 133 detail.Generate(ev); |
117 | 134 |
118 Assert.AreEqual("http://snipr.com/virtualaltnet", detail.Location); | 135 Assert.AreEqual("http://snipr.com/virtualaltnet", detail.Location); |
119 Assert.AreEqual("Grupo de Estudio Agile Patterns", detail.Title); | 136 Assert.AreEqual("Grupo de Estudio Agile Patterns", detail.Title); |
120 | 137 |
121 Assert.AreEqual(DateTimeKind.Utc, detail.StartEvent.Kind); | 138 Assert.AreEqual(DateTimeKind.Utc, detail.StartEvent.Kind); |
122 Assert.AreEqual(18, detail.StartEvent.Hour); | 139 Assert.AreEqual(18, detail.StartEvent.Hour); |
123 Assert.AreEqual(ev.Fecha.Value.Day, detail.StartEvent.Day); | 140 Assert.AreEqual(ev.FechaInicio.Value.Day, detail.StartEvent.Day); |
124 Assert.AreEqual(ev.Fecha.Value.Month, detail.StartEvent.Month); | 141 Assert.AreEqual(ev.FechaInicio.Value.Month, detail.StartEvent.Month); |
125 Assert.AreEqual(ev.Fecha.Value.Year, detail.StartEvent.Year); | 142 Assert.AreEqual(ev.FechaInicio.Value.Year, detail.StartEvent.Year); |
126 | 143 |
127 Assert.AreEqual(DateTimeKind.Utc, detail.EndEvent.Kind); | 144 Assert.AreEqual(DateTimeKind.Utc, detail.EndEvent.Kind); |
128 Assert.AreEqual(20, detail.EndEvent.Hour); | 145 Assert.AreEqual(20, detail.EndEvent.Hour); |
129 Assert.AreEqual(ev.Fecha.Value.Day, detail.EndEvent.Day); | 146 Assert.AreEqual(ev.FechaInicio.Value.Day, detail.EndEvent.Day); |
130 Assert.AreEqual(ev.Fecha.Value.Month, detail.EndEvent.Month); | 147 Assert.AreEqual(ev.FechaInicio.Value.Month, detail.EndEvent.Month); |
131 Assert.AreEqual(ev.Fecha.Value.Year, detail.EndEvent.Year); | 148 Assert.AreEqual(ev.FechaInicio.Value.Year, detail.EndEvent.Year); |
132 | 149 |
133 Assert.AreEqual("La comunidad ALT.NET Hispano (http://altnethispano.org) realizará un grupo de estudio sobre Agile Patterns." + | 150 Assert.AreEqual("La comunidad ALT.NET Hispano (http://altnethispano.org) realizará un grupo de estudio sobre Agile Patterns." + |
134 "\n\rFecha: sábado, 09 de julio de 2011 a las 18:00 hrs. Hora Internacional (GMT/UTC), con una duración aproximada de 2 horas." + | 151 "\n\rFecha: sábado, 09 de julio de 2011 a las 18:00 hrs. Hora Internacional (GMT/UTC), con una duración aproximada de 2 horas." + |
135 "\n\rPueden plantear sus comentarios e inquietudes sobre el tema de la reunión en: https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion" + | 152 "\n\rPueden plantear sus comentarios e inquietudes sobre el tema de la reunión en: https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion" + |
136 "\n\rPara mayor información sobre cómo atender la reunión consulten: http://tinyurl.com/van-hispano" + | 153 "\n\rPara mayor información sobre cómo atender la reunión consulten: http://tinyurl.com/van-hispano" + |
139 | 156 |
140 [Test] | 157 [Test] |
141 public void CuandoPublicarEventoDadoAccionCancelarEntoncesEventoEliminado() | 158 public void CuandoPublicarEventoDadoAccionCancelarEntoncesEventoEliminado() |
142 { | 159 { |
143 var adapter = new Mock<IGCalendarAdapter>(); | 160 var adapter = new Mock<IGCalendarAdapter>(); |
144 var message = ""; | 161 string message; |
162 var fechaInicio = new DateTime(2011, 07, 09, 18, 0, 0, DateTimeKind.Utc); | |
163 var fechaTermino = fechaInicio.AddHours(2); | |
145 adapter.Setup(ad => ad.DeleteEvent(It.IsAny<DateTime>(), It.IsAny<DateTime>(), out message)).Returns(true); | 164 adapter.Setup(ad => ad.DeleteEvent(It.IsAny<DateTime>(), It.IsAny<DateTime>(), out message)).Returns(true); |
146 | 165 |
147 var publicador = new GooglePublicador(adapter.Object); | 166 var publicador = new GooglePublicador(adapter.Object); |
148 var agenda = new Agenda(publicador, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); | 167 var agenda = new Agenda(publicador, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); |
149 | 168 |
150 agenda.Proponer("Agile Patterns", null, null, TipoEvento.Van); | 169 agenda.Proponer("Agile Patterns", null, null, TipoEvento.Van); |
151 adapter.Verify(ad => ad.DeleteEvent(It.IsAny<DateTime>(), It.IsAny<DateTime>(), out message), Times.Never()); | 170 adapter.Verify(ad => ad.DeleteEvent(It.IsAny<DateTime>(), It.IsAny<DateTime>(), out message), Times.Never()); |
152 | 171 |
153 agenda.Agendar("Agile Patterns", TestsHelper.GetOrCreatePonente("Alejandro Labra"), new DateTime(2011, 07, 09), "https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion", TipoEvento.Van); | 172 agenda.Agendar("Agile Patterns", TestsHelper.GetOrCreatePonente("Alejandro Labra"), fechaInicio, |
173 fechaTermino, "https://groups.google.com/d/topic/altnet-hispano/arYEMsPiAtY/discussion", | |
174 TipoEvento.Van); | |
154 adapter.Verify(ad => ad.DeleteEvent(It.IsAny<DateTime>(), It.IsAny<DateTime>(), out message), Times.Never()); | 175 adapter.Verify(ad => ad.DeleteEvent(It.IsAny<DateTime>(), It.IsAny<DateTime>(), out message), Times.Never()); |
155 | 176 |
156 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Agile Patterns"); | 177 var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Agile Patterns"); |
157 | 178 |
158 agenda.Cancelar(evento.Id); | 179 agenda.Cancelar(evento.Id); |