Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Tests/Eventos_y_patrocinadores_tests.cs @ 138:62791999ad01
Agregando relación entre Evento y Patrocinador
author | nelopauselli |
---|---|
date | Thu, 28 Jul 2011 10:13:28 -0300 |
parents | |
children | e6e6bfb1da9e |
line wrap: on
line source
using System; using System.Linq; using AltNetHispano.Agendas.Domain; using Moq; using NUnit.Framework; namespace AltNetHispano.Agendas.Tests { [TestFixture] public class Eventos_y_patrocinadores_tests : TestBase { private Guid _apressId; private Guid _jetbrainsId; private Guid _eventoId; private Agenda _agenda; [SetUp] public void CrearDatos() { _agenda = new Agenda(null, DefaultEventoRepository, DefaultPersonaRepository, DefaultPatrocinadorRepository); _apressId = CrearPatrocinador("Apress", "images/apress.gif"); _jetbrainsId = CrearPatrocinador("jetbrains", "images/jetbrains.png"); _eventoId = CrearEvento(); } [Test] public void Indicar_patrociadores() { _agenda.IndicarPatrocinadores(_eventoId, new[] { _apressId, _jetbrainsId }); var evento = DefaultEventoRepository.GetActivos().First(); Assert.AreNotEqual(Guid.Empty, evento.Id); Assert.IsNotNull(evento.Fecha); Assert.IsNotNull(evento.Patrocinadores); Assert.IsTrue(evento.Patrocinadores.Any()); Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); } [Test] public void Agregar_patrociador() { { _agenda.IndicarPatrocinadores(_eventoId, new[] {_apressId}); var evento = DefaultEventoRepository.GetActivos().First(); Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); Assert.IsFalse(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); } { _agenda.IndicarPatrocinadores(_eventoId, new[] { _apressId, _jetbrainsId }); var evento = DefaultEventoRepository.GetActivos().First(); Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); } } [Test] public void Quitar_patrociador() { { _agenda.IndicarPatrocinadores(_eventoId, new[] { _apressId, _jetbrainsId }); var evento = DefaultEventoRepository.GetActivos().First(); Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); } { _agenda.IndicarPatrocinadores(_eventoId, new[] { _apressId }); var evento = DefaultEventoRepository.GetActivos().First(); Assert.IsTrue(evento.Patrocinadores.Any(p => p.Nombre == "Apress")); Assert.IsFalse(evento.Patrocinadores.Any(p => p.Nombre == "jetbrains")); } { _agenda.IndicarPatrocinadores(_eventoId, new Guid[] {}); var evento = DefaultEventoRepository.GetActivos().First(); Assert.IsFalse(evento.Patrocinadores.Any()); } } private static Guid CrearPatrocinador(string nombre, string images) { var patrocinador = new Patrocinador(nombre); patrocinador.LoadLogo(images); var patrocinadorRepository = DefaultPatrocinadorRepository; patrocinadorRepository.Save(patrocinador); return patrocinador.Id; } private Guid CrearEvento() { _agenda.Agendar("ADFS", "Nelo Pauselli", DateTime.Today.AddDays(7), null, TipoEvento.Van); var evento = DefaultEventoRepository.GetActivos().First(); return evento.Id; } } }