Corrected SessionFactoryBuilder tests

--HG--
branch : dev
This commit is contained in:
Sebastien Ros
2010-07-30 10:18:46 -07:00
parent bd06466ebe
commit 1a9acedbfb

View File

@@ -2,8 +2,10 @@
using System.Data.SqlClient; using System.Data.SqlClient;
using System.IO; using System.IO;
using Autofac.Features.Metadata; using Autofac.Features.Metadata;
using NHibernate.Tool.hbm2ddl;
using NUnit.Framework; using NUnit.Framework;
using Orchard.Data.Providers; using Orchard.Data.Providers;
using Orchard.Environment.Configuration;
using Orchard.Environment.Descriptor; using Orchard.Environment.Descriptor;
using Orchard.Environment.Descriptor.Models; using Orchard.Environment.Descriptor.Models;
using Orchard.Environment.ShellBuilders.Models; using Orchard.Environment.ShellBuilders.Models;
@@ -51,29 +53,35 @@ namespace Orchard.Tests.Data.Builders {
[Test, Ignore("Fix pending")] [Test, Ignore("Fix pending")]
public void SqlCeSchemaShouldBeGeneratedAndUsable() { public void SqlCeSchemaShouldBeGeneratedAndUsable() {
var recordDescriptors = new[] { var recordDescriptors = new[] {
new RecordBlueprint {TableName = "Hello", Type = typeof (FooRecord)} new RecordBlueprint {TableName = "Hello", Type = typeof (FooRecord)}
}; };
var parameters = new SessionFactoryParameters {
Provider = "SqlCe",
DataFolder = _tempDataFolder,
RecordDescriptors = recordDescriptors
};
var manager = (IDataServicesProviderFactory) new DataServicesProviderFactory(new[] { var manager = (IDataServicesProviderFactory) new DataServicesProviderFactory(new[] {
new Meta<CreateDataServicesProvider>( new Meta<CreateDataServicesProvider>(
(dataFolder, connectionString) => new SqlCeDataServicesProvider(dataFolder, connectionString), (dataFolder, connectionString) => new SqlCeDataServicesProvider(dataFolder, connectionString),
new Dictionary<string, object> {{"ProviderName", "SqlCe"}}) new Dictionary<string, object> {{"ProviderName", "SqlCe"}})
}); });
var parameters = new SessionFactoryParameters { var configuration = manager
Provider = "SqlCe",
DataFolder = _tempDataFolder,
RecordDescriptors = recordDescriptors
};
var sessionFactory = manager
.CreateProvider(parameters) .CreateProvider(parameters)
.BuildConfiguration(parameters) .BuildConfiguration(parameters);
.BuildSessionFactory();
configuration.SetProperty("connection.release_mode", "on_close");
new SchemaExport(configuration).Execute(false, true, false);
var sessionFactory = configuration.BuildSessionFactory();
var session = sessionFactory.OpenSession(); var session = sessionFactory.OpenSession();
var foo = new FooRecord {Name = "hi there"}; var foo = new FooRecord {Name = "hi there", Id = 1};
session.Save(foo); session.Save(foo);
session.Flush(); session.Flush();
session.Close(); session.Close();
@@ -104,12 +112,14 @@ namespace Orchard.Tests.Data.Builders {
ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFileName=" + databasePath + ";Integrated Security=True;User Instance=True;", ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFileName=" + databasePath + ";Integrated Security=True;User Instance=True;",
RecordDescriptors = recordDescriptors, RecordDescriptors = recordDescriptors,
}; };
var sessionFactory = manager
var configuration = manager
.CreateProvider(parameters) .CreateProvider(parameters)
.BuildConfiguration(parameters) .BuildConfiguration(parameters);
.BuildSessionFactory();
new SchemaExport(configuration).Execute(false, true, false);
var sessionFactory = configuration.BuildSessionFactory();
var session = sessionFactory.OpenSession(); var session = sessionFactory.OpenSession();
var foo = new FooRecord { Name = "hi there" }; var foo = new FooRecord { Name = "hi there" };