Mercurial > altnet-hispano
comparison Agendas/trunk/src/Agendas.Tests/Workflows/WorkflowTests.cs @ 81:c76661cff260
Workflow de acciones sobre un evento (camino feliz)
author | nelopauselli |
---|---|
date | Tue, 24 May 2011 19:21:20 -0300 |
parents | |
children | 26d0513a8410 |
comparison
equal
deleted
inserted
replaced
80:c2d98fd6593f | 81:c76661cff260 |
---|---|
1 using System.Linq; | |
2 using AltNetHispano.Agendas.Domain; | |
3 using Moq; | |
4 using NUnit.Framework; | |
5 | |
6 namespace AltNetHispano.Agendas.Tests.Workflows | |
7 { | |
8 [TestFixture] | |
9 public class WorkflowTests : TestBase | |
10 { | |
11 private Mock<IPublicador> _publicador; | |
12 private Workflow _workflow; | |
13 | |
14 [SetUp] | |
15 public void InitPublicador() | |
16 { | |
17 _publicador = new Mock<IPublicador>(); | |
18 _workflow = new Workflow(_publicador.Object, DefaultEventoRepository, DefaultPonenteRepository); | |
19 } | |
20 | |
21 [Test] | |
22 public void Proponer() | |
23 { | |
24 _workflow.Proponer(); | |
25 _publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Once()); | |
26 } | |
27 | |
28 [Test] | |
29 public void Proponer_y_agendar() | |
30 { | |
31 _workflow.Proponer(); | |
32 | |
33 _workflow.Agendar(); | |
34 | |
35 _publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(2)); | |
36 } | |
37 | |
38 [Test] | |
39 public void Proponer_agendar_y_confirmar() | |
40 { | |
41 _workflow.Proponer(); | |
42 | |
43 _workflow.Agendar(); | |
44 | |
45 var evento = DefaultEventoRepository.GetEventosConFecha().SingleOrDefault(); | |
46 Assert.IsNotNull(evento); | |
47 | |
48 _workflow.Confirmar(evento.Id); | |
49 | |
50 _publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(3)); | |
51 } | |
52 | |
53 [Test] | |
54 public void Proponer_agendar_confirmar_publicar() | |
55 { | |
56 _workflow.Proponer(); | |
57 | |
58 _workflow.Agendar(); | |
59 | |
60 var evento = DefaultEventoRepository.GetEventosConFecha().SingleOrDefault(); | |
61 Assert.IsNotNull(evento); | |
62 | |
63 _workflow.Confirmar(evento.Id); | |
64 | |
65 _workflow.Publicar(evento.Id); | |
66 | |
67 _publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(4)); | |
68 } | |
69 } | |
70 } |