view Agendas/trunk/src/Agendas.Repositories.Tests/SchemaNhTests.cs @ 298:9bc60d166c8a

Se corrigieron los tests por el cambio de Patrocinador, para que no persista el logo en disco. Se comentó el código de PatrocinadorApiController, que no se utiliza.
author juanjose.montesdeocaarbos
date Sun, 19 Feb 2012 16:00:38 -0300
parents 68b09c30b0d2
children
line wrap: on
line source

using System;
using System.Xml;
using System.Xml.Serialization;
using Agendas.NHibernate;
using Agendas.Repositories.Tests.Infraestructure;
using NHibernate.Cfg.MappingSchema;
using NHibernate.Tool.hbm2ddl;
using NUnit.Framework;

namespace Agendas.Repositories.Tests
{
	[TestFixture]
	public class SchemaNhTests
	{
		[Test]
		public void ValidateSchema()
		{
			var cfg = NhHelper.GetConfiguration();

			var schemaValidator = new SchemaValidator(cfg);
			schemaValidator.Validate();
		}

		[Test]
		public void BuildSessionFactory()
		{
			var cfg = NhHelper.GetConfiguration();

			var sessionfactory = cfg.BuildSessionFactory();

			Assert.IsNotNull(sessionfactory);
		}

		[Test]
		public void ShowMapping()
		{
			var mapping = NhHelper.GetMapping();

			var setting = new XmlWriterSettings { Indent = true };

			var serializer = new XmlSerializer(typeof(HbmMapping));

			var xw = XmlWriter.Create(Console.Out, setting);

			serializer.Serialize(xw, mapping);
		}

		[Test]
		public void LimpiarDb()
		{
			NhHelperTest.CleanDb();

			var sf = NhHelper.GetSessionFactory();

			var session = sf.OpenSession();

			var query = session.CreateQuery("from System.Object");

			Assert.IsEmpty(query.List());
		}
	}
}