Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Tests/Blog/PublicadorTests.cs @ 120:c3573defd18f
Agregado de Fecha, Usuario y Successful en TrackLog
Modificacion de publicador de blog para usar TrackLog
Agregado de TrackLog en el test de crud de eventos
Fix en publicador de twitter para que no twitee si ya se encuentra en TrackLog pero con Successful en true
author | Jorge@Jorge-PC |
---|---|
date | Fri, 24 Jun 2011 21:18:21 -0300 |
parents | 1d820f17fc75 |
children |
line wrap: on
line source
using System; using System.Collections.Generic; using System.Linq; using System.Text; using Agendas.Blog; using Agendas.Blog.Impl; using AltNetHispano.Agendas.Domain; using AltNetHispano.Agendas.Repositories.Memory; using Moq; using NUnit.Framework; namespace AltNetHispano.Agendas.Tests.Blog { [TestFixture] public class PublicadorTests { [SetUp] public void SetearUsuario() { var seguridad = new Mock<ISeguridad>(); seguridad.Setup(s => s.GetUserName()).Returns("neluz"); IdentityContext.Init(seguridad.Object, new PersonaRepository()); } [Test] public void El_publicador_debe_disparar_los_writers_segun_la_accion_de_cada_track() { //var eventoAgendar = Evento.Agendar(null, null, DateTime.MinValue, null); //var eventoPublicar = Evento.Agendar(null, null, DateTime.MinValue, null); var trackAgendar = new Track(null, Accion.Agendar); var trackPublicar = new Track(null, Accion.Publicar); var agendarPostWriter = new Mock<IPostWriter>(); agendarPostWriter.Setup(writer => writer.WritePost(trackAgendar)); var publicarPostWriter = new Mock<IPostWriter>(); publicarPostWriter.Setup(writer => writer.WritePost(trackPublicar)); var factory = new Mock<IPostWriterFactory>(); factory.Setup(f => f.GetPostWriter(Accion.Agendar)).Returns(agendarPostWriter.Object); factory.Setup(f => f.GetPostWriter(Accion.Publicar)).Returns(publicarPostWriter.Object); var publicador = new BlogPublicador(factory.Object); publicador.Publicar(new List<Track> { trackAgendar, trackPublicar }); factory.Verify(f => f.GetPostWriter(Accion.Agendar), Times.Once()); factory.Verify(f => f.GetPostWriter(Accion.Publicar), Times.Once()); agendarPostWriter.Verify(pw => pw.WritePost(trackAgendar), Times.Once()); publicarPostWriter.Verify(pw => pw.WritePost(trackPublicar), Times.Once()); } } }