view Agendas/trunk/src/Agendas.Twitter.Tests/Recordatorios_tests.cs @ 275:bf993f99cee3

Ticket #123: Patrocinadores de las vans.
author juanjose.montesdeocaarbos
date Wed, 14 Dec 2011 08:15:44 -0300
parents 72a96459f910
children
line wrap: on
line source

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

namespace Agendas.Twitter.Tests
{
	[TestFixture]
	public class Recordatorios_tests : TestBase
	{
		[Test]
		public void Recordar()
		{
			var agenda = new Agenda(null, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository);


			var ponente = new Persona("Hernán García", string.Empty, "theprogrammer", string.Empty);
			DefaultPersonaRepository.Save(ponente);

			DateTime inicio=DateTime.Today.AddDays(7).AddHours(18);
			var resultado = agenda.Agendar("Node.js", new[]{ponente.Id}, inicio, inicio.AddHours(2), string.Empty, TipoEvento.Van);

			Assert.IsTrue(resultado.Succeful);

			var evento = DefaultEventoRepository.GetActivos().Single(e => e.Titulo == "Node.js");
			Assert.IsNotNull(evento);
			
			var recordatorios = new Recordatorios(evento);

			Assert.IsNotNull(recordatorios);
			Assert.AreEqual("Recuerde agendar el evento en twuffer u otro servicio similar.", recordatorios.Cabecera);
			Assert.AreEqual("http://twuffer.com/", recordatorios.CabeceraLink);
			Assert.IsNotNull(recordatorios.Items);
			Assert.AreEqual(4, recordatorios.Items.Count);

			Assert.AreEqual("La VAN sobre Node.js con @theprogrammer inicia en [3] horas 18GMT http://snipr.com/virtualaltnet", recordatorios.Items[0].Mensaje);
			Assert.AreEqual(inicio.ToShortDateString(), recordatorios.Items[0].Fecha);
			Assert.AreEqual("15:00", recordatorios.Items[0].Hora);

			Assert.AreEqual("La VAN sobre Node.js con @theprogrammer inicia en [2] horas 18GMT http://snipr.com/virtualaltnet", recordatorios.Items[1].Mensaje);
			Assert.AreEqual(inicio.ToShortDateString(), recordatorios.Items[1].Fecha);
			Assert.AreEqual("16:00", recordatorios.Items[1].Hora);

			Assert.AreEqual("La VAN sobre Node.js con @theprogrammer inicia en [1] hora 18GMT http://snipr.com/virtualaltnet", recordatorios.Items[2].Mensaje);
			Assert.AreEqual(inicio.ToShortDateString(), recordatorios.Items[2].Fecha);
			Assert.AreEqual("17:00", recordatorios.Items[2].Hora);

			Assert.AreEqual("La VAN sobre Node.js con @theprogrammer inicia en [15] minutos 18GMT http://snipr.com/virtualaltnet", recordatorios.Items[3].Mensaje);
			Assert.AreEqual(inicio.ToShortDateString(), recordatorios.Items[3].Fecha);
			Assert.AreEqual("17:45", recordatorios.Items[3].Hora);
		}
	}
}