view Agendas/trunk/src/Agendas.Twitter.Tests/Publicador_tests.cs @ 209:a36a76bd6ec3

Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
author alabra
date Wed, 24 Aug 2011 19:27:30 -0300
parents 5346c0500594
children 9f61e8555114
line wrap: on
line source

using System;
using AltNetHispano.Agendas.Domain;
using AltNetHispano.Agendas.Tests;
using AltNetHispano.Agendas.Twitter;
using Moq;
using NUnit.Framework;

namespace Agendas.Twitter.Tests
{
	[TestFixture]
	public class Publicador_tests : TestBase
	{
		[Test]
		public void Proponer_evento()
		{
			var adapter = new Mock<ITwitterAdapter>();

			string message;
			string twitt = null;
			adapter.Setup(a => a.Update(It.IsAny<string>(), out message)).Returns(true).Callback<string, string>((status, m) => twitt = status);

			var publicador = new TwitterPublicador(adapter.Object);

			var agenda = new Agenda(publicador, DefaultEventoRepository, DefaultPersonaRepository);

			agenda.Proponer("Identity Providers", null, null, TipoEvento.GrupoEstudio);

			adapter.Verify(a => a.Update(It.IsAny<string>(), out message), Times.Once());

			Assert.That(twitt, Is.StringContaining("GrupoEstudio"));
		}

		[Test]
		public void Proponer_y_agendar_evento()
		{
			var adapter = new Mock<ITwitterAdapter>();

			string message;
			string twitt = null;
            var fechaInicio = DateTime.Today.AddDays(7).ToUniversalTime();
            var fechaTermino = fechaInicio.AddHours(2);
			adapter.Setup(a => a.Update(It.IsAny<string>(), out message)).Returns(true).Callback<string, string>((status, m) => twitt = status);

			var publicador = new TwitterPublicador(adapter.Object);

			var agenda = new Agenda(publicador, DefaultEventoRepository, DefaultPersonaRepository);
			agenda.Proponer("Identity Providers", null, null, TipoEvento.GrupoEstudio);

			adapter.Verify(a => a.Update(It.IsAny<string>(), out message), Times.Once());

		    agenda.Agendar("Identity Providers", TestsHelper.GetOrCreatePonente("Nelo Pauselli"), fechaInicio, fechaTermino,
		                   null, TipoEvento.GrupoEstudio);

			adapter.Verify(a => a.Update(It.IsAny<string>(), out message), Times.Exactly(2));

			Assert.That(twitt, Is.StringContaining("@nelopauselli"));

		}
	}
}