Mercurial > altnet-hispano
annotate Agendas/trunk/src/Agendas.Repositories.Tests/Workflow.cs @ 298:9bc60d166c8a
Se corrigieron los tests por el cambio de Patrocinador, para que no persista el logo en disco.
Se comentó el código de PatrocinadorApiController, que no se utiliza.
author | juanjose.montesdeocaarbos |
---|---|
date | Sun, 19 Feb 2012 16:00:38 -0300 |
parents | bc8dfbde0523 |
children | 48ab8788bd19 |
rev | line source |
---|---|
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
1 using System; |
181 | 2 using System.Linq; |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
3 using AltNetHispano.Agendas.Domain; |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
4 using AltNetHispano.Agendas.Domain.Repositories; |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
5 using NUnit.Framework; |
282
bc8dfbde0523
#123: Patrocinadores de las vans: Se verifica que para publicar una Van, debe tener al menos un Patrocinador.
juanjose.montesdeocaarbos
parents:
274
diff
changeset
|
6 using System.Collections.Generic; |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
7 |
222
68b09c30b0d2
Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
200
diff
changeset
|
8 namespace Agendas.Repositories.Tests |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
9 { |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
10 internal class Workflow |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
11 { |
181 | 12 private readonly Func<IDisposable> _requestEmulator; |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
13 private readonly Agenda _agenda; |
181 | 14 private readonly IEventoRepository _eventoRepository; |
15 private Guid _eventoId; | |
222
68b09c30b0d2
Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
200
diff
changeset
|
16 private readonly TestsHelper _testsHelper; |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
17 |
181 | 18 public Workflow(IPublicador publicador, IEventoRepository eventoRepository, IPersonaRepository personaRepository, |
274
72a96459f910
Ticket #123: Patrocinadores de las vans.
juanjose.montesdeocaarbos
parents:
235
diff
changeset
|
19 IPatrocinadorRepository patrocinadorRepository, Func<IDisposable> requestEmulator) |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
20 { |
181 | 21 _requestEmulator = requestEmulator; |
22 _eventoRepository = eventoRepository; | |
274
72a96459f910
Ticket #123: Patrocinadores de las vans.
juanjose.montesdeocaarbos
parents:
235
diff
changeset
|
23 |
72a96459f910
Ticket #123: Patrocinadores de las vans.
juanjose.montesdeocaarbos
parents:
235
diff
changeset
|
24 _agenda = new Agenda(publicador, eventoRepository, personaRepository, patrocinadorRepository); |
282
bc8dfbde0523
#123: Patrocinadores de las vans: Se verifica que para publicar una Van, debe tener al menos un Patrocinador.
juanjose.montesdeocaarbos
parents:
274
diff
changeset
|
25 _testsHelper = new TestsHelper(personaRepository, patrocinadorRepository); |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
26 } |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
27 |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
28 public void Proponer() |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
29 { |
181 | 30 using (_requestEmulator.Invoke()) |
31 { | |
235
c61954d24c8c
Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
222
diff
changeset
|
32 var resultado = _agenda.Proponer("SOLID", new[] {_testsHelper.GetOrCreatePonente("Jorge")}, null, TipoEvento.Van); |
c61954d24c8c
Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
222
diff
changeset
|
33 Console.WriteLine(resultado.Message); |
181 | 34 Assert.IsTrue(resultado.Succeful); |
35 } | |
235
c61954d24c8c
Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
222
diff
changeset
|
36 |
181 | 37 GetId(); |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
38 } |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
39 |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
40 |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
41 public void Agendar() |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
42 { |
181 | 43 using (_requestEmulator.Invoke()) |
44 { | |
185
2d02adb79322
Se agrega fecha de termino de un Evento y se incluye la hora a la fecha de inicio.
alabra
parents:
181
diff
changeset
|
45 var fechaInicio = DateTime.Today.AddDays(5).ToUniversalTime(); |
2d02adb79322
Se agrega fecha de termino de un Evento y se incluye la hora a la fecha de inicio.
alabra
parents:
181
diff
changeset
|
46 var fechaTermino = fechaInicio.AddHours(2); |
235
c61954d24c8c
Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
222
diff
changeset
|
47 var resultado = _agenda.Agendar("SOLID", new[]{ _testsHelper.GetOrCreatePonente("Jorge")}, fechaInicio, fechaTermino, null, |
185
2d02adb79322
Se agrega fecha de termino de un Evento y se incluye la hora a la fecha de inicio.
alabra
parents:
181
diff
changeset
|
48 TipoEvento.Van); |
181 | 49 Assert.IsTrue(resultado.Succeful); |
50 } | |
51 | |
52 GetId(); | |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
53 } |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
54 |
181 | 55 private void GetId() |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
56 { |
181 | 57 using (_requestEmulator.Invoke()) |
58 { | |
59 var evento = _eventoRepository.GetActivos().SingleOrDefault(); | |
60 Assert.IsNotNull(evento); | |
61 _eventoId = evento.Id; | |
62 } | |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
63 } |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
64 |
181 | 65 public void Confirmar() |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
66 { |
181 | 67 using (_requestEmulator.Invoke()) |
68 { | |
69 var resultado = _agenda.Confirmar(_eventoId); | |
70 Assert.IsTrue(resultado.Succeful); | |
71 } | |
72 } | |
73 | |
74 public void Publicar() | |
75 { | |
76 using (_requestEmulator.Invoke()) | |
77 { | |
282
bc8dfbde0523
#123: Patrocinadores de las vans: Se verifica que para publicar una Van, debe tener al menos un Patrocinador.
juanjose.montesdeocaarbos
parents:
274
diff
changeset
|
78 _agenda.IndicarPatrocinadores(_eventoId, new List<Guid> {_testsHelper.GetOrCreatePatrocinador("Apress")}); |
bc8dfbde0523
#123: Patrocinadores de las vans: Se verifica que para publicar una Van, debe tener al menos un Patrocinador.
juanjose.montesdeocaarbos
parents:
274
diff
changeset
|
79 } |
bc8dfbde0523
#123: Patrocinadores de las vans: Se verifica que para publicar una Van, debe tener al menos un Patrocinador.
juanjose.montesdeocaarbos
parents:
274
diff
changeset
|
80 using (_requestEmulator.Invoke()) |
bc8dfbde0523
#123: Patrocinadores de las vans: Se verifica que para publicar una Van, debe tener al menos un Patrocinador.
juanjose.montesdeocaarbos
parents:
274
diff
changeset
|
81 { |
181 | 82 var resultado = _agenda.Publicar(_eventoId, 1, "http://www.altnethispano.org/", new TimeSpan(2, 11, 0)); |
83 Assert.IsTrue(resultado.Succeful); | |
84 } | |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
85 } |
133
6f1041301797
Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents:
106
diff
changeset
|
86 |
181 | 87 public void Cancelar() |
88 { | |
89 using (_requestEmulator.Invoke()) | |
90 { | |
91 var resultado = _agenda.Cancelar(_eventoId); | |
92 Assert.IsTrue(resultado.Succeful); | |
93 } | |
94 } | |
133
6f1041301797
Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents:
106
diff
changeset
|
95 |
181 | 96 public void Descartar() |
97 { | |
98 using (_requestEmulator.Invoke()) | |
99 { | |
100 var resultado = _agenda.Descartar(_eventoId); | |
101 Assert.IsTrue(resultado.Succeful); | |
102 } | |
103 } | |
133
6f1041301797
Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents:
106
diff
changeset
|
104 |
181 | 105 public void ReProponer() |
106 { | |
107 using (_requestEmulator.Invoke()) | |
108 { | |
109 var resultado = _agenda.ReProponer(_eventoId); | |
110 Assert.IsTrue(resultado.Succeful); | |
111 } | |
112 } | |
133
6f1041301797
Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents:
106
diff
changeset
|
113 |
181 | 114 public void ReAgendar() |
115 { | |
116 using (_requestEmulator.Invoke()) | |
117 { | |
118 var resultado = _agenda.ReAgendar(_eventoId); | |
119 Assert.IsTrue(resultado.Succeful); | |
120 } | |
121 } | |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
122 } |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
123 } |