Mercurial > altnet-hispano
view 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 |
line wrap: on
line source
using System.Linq; using AltNetHispano.Agendas.Domain; using Moq; using NUnit.Framework; namespace AltNetHispano.Agendas.Tests.Workflows { [TestFixture] public class WorkflowTests : TestBase { private Mock<IPublicador> _publicador; private Workflow _workflow; [SetUp] public void InitPublicador() { _publicador = new Mock<IPublicador>(); _workflow = new Workflow(_publicador.Object, DefaultEventoRepository, DefaultPonenteRepository); } [Test] public void Proponer() { _workflow.Proponer(); _publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Once()); } [Test] public void Proponer_y_agendar() { _workflow.Proponer(); _workflow.Agendar(); _publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(2)); } [Test] public void Proponer_agendar_y_confirmar() { _workflow.Proponer(); _workflow.Agendar(); var evento = DefaultEventoRepository.GetEventosConFecha().SingleOrDefault(); Assert.IsNotNull(evento); _workflow.Confirmar(evento.Id); _publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(3)); } [Test] public void Proponer_agendar_confirmar_publicar() { _workflow.Proponer(); _workflow.Agendar(); var evento = DefaultEventoRepository.GetEventosConFecha().SingleOrDefault(); Assert.IsNotNull(evento); _workflow.Confirmar(evento.Id); _workflow.Publicar(evento.Id); _publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(4)); } } }