diff Agendas/trunk/src/Agendas.Tests/EventoTests.cs @ 1:6bb4ab4c0611

Tests de Crud para repositorio de Vans
author nelopauselli
date Sat, 22 Jan 2011 19:50:32 -0300
parents
children c03560ae4762
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Agendas/trunk/src/Agendas.Tests/EventoTests.cs	Sat Jan 22 19:50:32 2011 -0300
@@ -0,0 +1,76 @@
+using System;
+using Agendas.Repositories.Memory;
+using AltNetHispano.Agendas.Domain;
+using AltNetHispano.Agendas.Domain.Repositories;
+using NUnit.Framework;
+
+namespace AltNetHispano.Agendas.Tests
+{
+	[TestFixture]
+	public class EventoTests
+	{
+		[Test]
+		public void Crud()
+		{
+			Guid vanId;
+			{
+				var van = new Van
+							{
+								Titulo = "TDD - Diseño Basado en Ejemplos",
+								Ponente = "Carlos Blé",
+								Fecha = new DateTime(2010, 04, 16)
+							};
+				IVanRepository eventoRepository = new VanRepositoryMemory();
+
+				eventoRepository.Save(van);
+				vanId = van.Id;
+			}
+
+			const string sintesis =
+				"Durante la primera hora se habló de los principios SOLID, de BDD, TDD y ATDD. Discusión entre las diferencias entre TDD y BDD, así como también sobre algunas cuestiones relativas a la nomenclatura.\n Durante la segunda hora se realizó un ejercicio práctico demostrando como se comienza a practicar TDD.\n La última parte de la VAN es la mas interesante respecto a lo que es TDD y como se practica.";
+
+			{
+				IVanRepository eventoRepository = new VanRepositoryMemory();
+
+				var van = eventoRepository.Get(vanId);
+
+				Assert.IsNotNull(van);
+				Assert.AreEqual("Carlos Blé", van.Ponente);
+				Assert.AreEqual("TDD - Diseño Basado en Ejemplos", van.Titulo);
+				Assert.AreEqual(new DateTime(2010, 04, 16), van.Fecha);
+
+				van.Sintesis = sintesis;
+				van.Enlaces = new[] { "www.carlosble.com", "www.dirigidoPorTests.com" };
+				van.Fecha = new DateTime(2010, 04, 17);
+
+				eventoRepository.Update(van);
+			}
+
+			{
+				IVanRepository eventoRepository = new VanRepositoryMemory();
+
+				var van = eventoRepository.Get(vanId);
+
+				Assert.IsNotNull(van);
+				Assert.AreEqual("Carlos Blé", van.Ponente);
+				Assert.AreEqual("TDD - Diseño Basado en Ejemplos", van.Titulo);
+				Assert.AreEqual(new DateTime(2010, 04, 17), van.Fecha);
+				Assert.AreEqual(sintesis, van.Sintesis);
+				Assert.IsNotNull(van.Enlaces);
+				Assert.AreEqual(2, van.Enlaces.Count);
+				Assert.AreEqual("www.carlosble.com", van.Enlaces[0]);
+				Assert.AreEqual("www.dirigidoPorTests.com", van.Enlaces[1]);
+
+				eventoRepository.Delete(van);
+			}
+
+			{
+				IVanRepository eventoRepository = new VanRepositoryMemory();
+
+				var van = eventoRepository.Get(vanId);
+
+				Assert.IsNull(van);
+			}
+		}
+	}
+}
\ No newline at end of file