Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Tests/Workflows/WorkflowMemoryTests.cs @ 192:03cf6a377ee8
Se cambiaron algunos tests para que el Coverage dieran el 100%.
NOTA: Si se utiliza el Atributo ExpectedException el coverage termina donde se dió la excepción. Mejor usar el Assert.Throws
author | juanjose.montesdeocaarbos |
---|---|
date | Wed, 10 Aug 2011 08:20:28 -0300 |
parents | 6ee05ceea8c3 |
children | 5346c0500594 |
line wrap: on
line source
using System; using System.Collections.Generic; using AltNetHispano.Agendas.Domain; using Moq; using NUnit.Framework; namespace AltNetHispano.Agendas.Tests.Workflows { [TestFixture] public class WorkflowMemoryTests : TestBase { private Mock<IPublicador> _publicador; private Workflow _workflow; [SetUp] public void InitPublicador() { _publicador = new Mock<IPublicador>(); _workflow = new Workflow(_publicador.Object, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository, () => new Mock<IDisposable>().Object); } [Test] public void Proponer() { _workflow.Proponer(); _publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Once()); } [Test] public void Proponer_y_agendar() { _workflow.Proponer(); _workflow.Agendar(); _publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(2)); } [Test] public void Proponer_agendar_y_cancelar() { _workflow.Proponer(); _workflow.Agendar(); _workflow.Cancelar(); _publicador.Verify(p=>p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(3)); } [Test] public void Proponer_agendar_cancelar_y_reagendar() { _workflow.Proponer(); _workflow.Agendar(); _workflow.Cancelar(); _workflow.ReAgendar(); _publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(4)); } [Test] public void Proponer_agendar_cancelar_reproponer_agendar_y_confirmar() { _workflow.Proponer(); _workflow.Agendar(); _workflow.Cancelar(); _workflow.ReProponer(); _workflow.Agendar(); _workflow.Confirmar(); _publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(6)); } [Test] public void Proponer_agendar_cancelar_reagendar_y_confirmar() { _workflow.Proponer(); _workflow.Agendar(); _workflow.Cancelar(); _workflow.ReAgendar(); _workflow.Confirmar(); _publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(5)); } [Test] public void Proponer_agendar_cancelar_y_reproponer() { _workflow.Proponer(); _workflow.Agendar(); _workflow.Cancelar(); _workflow.ReProponer(); _publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(4)); } [Test] public void Proponer_y_descartar() { _workflow.Proponer(); _workflow.Descartar(); _publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(2)); } [Test] public void Proponer_agendar_cancelar_y_descartar() { _workflow.Proponer(); _workflow.Agendar(); _workflow.Cancelar(); _workflow.Descartar(); _publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(4)); } [Test] public void Proponer_agendar_y_confirmar() { _workflow.Proponer(); _workflow.Agendar(); _workflow.Confirmar(); _publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(3)); } [Test] public void Proponer_agendar_confirmar_publicar() { const string urlWiki = "http://www.altnethispano.org/wiki/van-2010-10-21-mono-cecil.ashx"; _workflow.Proponer(); _workflow.Agendar(); _workflow.Confirmar(); _workflow.Publicar(); _publicador.Verify(p => p.Publicar(It.IsAny<IEnumerable<Track>>()), Times.Exactly(4)); } } }