Mercurial > altnet-hispano
annotate Agendas/trunk/src/Agendas.Tests/Workflows/Workflow.cs @ 181:6ee05ceea8c3
Implementando test de workflow también con nh
author | nelopauselli |
---|---|
date | Mon, 08 Aug 2011 20:08:31 -0300 |
parents | 5c94b052d838 |
children | 2d02adb79322 |
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; |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
6 |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
7 namespace AltNetHispano.Agendas.Tests.Workflows |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
8 { |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
9 internal class Workflow |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
10 { |
181 | 11 private readonly Func<IDisposable> _requestEmulator; |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
12 private readonly Agenda _agenda; |
181 | 13 private readonly IEventoRepository _eventoRepository; |
14 private Guid _eventoId; | |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
15 |
181 | 16 public Workflow(IPublicador publicador, IEventoRepository eventoRepository, IPersonaRepository personaRepository, |
17 IPatrocinadorRepository patrocinadorRepository, Func<IDisposable> requestEmulator) | |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
18 { |
181 | 19 _requestEmulator = requestEmulator; |
20 _eventoRepository = eventoRepository; | |
138
62791999ad01
Agregando relación entre Evento y Patrocinador
nelopauselli
parents:
133
diff
changeset
|
21 _agenda = new Agenda(publicador, eventoRepository, personaRepository, patrocinadorRepository); |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
22 } |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
23 |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
24 public void Proponer() |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
25 { |
181 | 26 using (_requestEmulator.Invoke()) |
27 { | |
28 var resultado = _agenda.Proponer("SOLID", TestsHelper.GetOrCreatePonente("Jorge"), null, TipoEvento.Van); | |
29 Assert.IsTrue(resultado.Succeful); | |
30 } | |
31 | |
32 GetId(); | |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
33 } |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
34 |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
35 |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
36 public void Agendar() |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
37 { |
181 | 38 using (_requestEmulator.Invoke()) |
39 { | |
40 var resultado = _agenda.Agendar("SOLID", TestsHelper.GetOrCreatePonente("Jorge"), DateTime.Today.AddDays(5), null, | |
41 TipoEvento.Van); | |
42 Assert.IsTrue(resultado.Succeful); | |
43 } | |
44 | |
45 GetId(); | |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
46 } |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
47 |
181 | 48 private void GetId() |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
49 { |
181 | 50 using (_requestEmulator.Invoke()) |
51 { | |
52 var evento = _eventoRepository.GetActivos().SingleOrDefault(); | |
53 Assert.IsNotNull(evento); | |
54 _eventoId = evento.Id; | |
55 } | |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
56 } |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
57 |
181 | 58 public void Confirmar() |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
59 { |
181 | 60 using (_requestEmulator.Invoke()) |
61 { | |
62 var resultado = _agenda.Confirmar(_eventoId); | |
63 Assert.IsTrue(resultado.Succeful); | |
64 } | |
65 } | |
66 | |
67 public void Publicar() | |
68 { | |
69 using (_requestEmulator.Invoke()) | |
70 { | |
71 var resultado = _agenda.Publicar(_eventoId, 1, "http://www.altnethispano.org/", new TimeSpan(2, 11, 0)); | |
72 Assert.IsTrue(resultado.Succeful); | |
73 } | |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
74 } |
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
|
75 |
181 | 76 public void Cancelar() |
77 { | |
78 using (_requestEmulator.Invoke()) | |
79 { | |
80 var resultado = _agenda.Cancelar(_eventoId); | |
81 Assert.IsTrue(resultado.Succeful); | |
82 } | |
83 } | |
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
|
84 |
181 | 85 public void Descartar() |
86 { | |
87 using (_requestEmulator.Invoke()) | |
88 { | |
89 var resultado = _agenda.Descartar(_eventoId); | |
90 Assert.IsTrue(resultado.Succeful); | |
91 } | |
92 } | |
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
|
93 |
181 | 94 public void ReProponer() |
95 { | |
96 using (_requestEmulator.Invoke()) | |
97 { | |
98 var resultado = _agenda.ReProponer(_eventoId); | |
99 Assert.IsTrue(resultado.Succeful); | |
100 } | |
101 } | |
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
|
102 |
181 | 103 public void ReAgendar() |
104 { | |
105 using (_requestEmulator.Invoke()) | |
106 { | |
107 var resultado = _agenda.ReAgendar(_eventoId); | |
108 Assert.IsTrue(resultado.Succeful); | |
109 } | |
110 } | |
81
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
111 } |
c76661cff260
Workflow de acciones sobre un evento (camino feliz)
nelopauselli
parents:
diff
changeset
|
112 } |