【发布时间】:2011-04-06 01:25:47
【问题描述】:
我正在尝试了解其他社区如何测试他们的 Fluent Nhibernate 映射。所以假设我有以下映射:
public UserHeaderMap()
{
Table("USER_HEADER");
Id(x => x.Id, "USER_ID");
Map(x => x.LoginName, "LOGIN_NAME");
Map(x => x.UserPassword, "USER_PASSWORD");
Map(x => x.UserEmail, "USER_EMAIL");
Map(x => x.UserLanguage, "USER_LANGUAGE");
Map(x => x.UserEnabled, "USER_ENABLED");
HasManyToMany(x => x.Groups)
.Table("USER_GROUP_COMPOSITE")
.ParentKeyColumn("USER_ID")
.ChildKeyColumn("GROUP_ID")
.Cascade.All()
.Inverse();
}
public class GroupHeaderMap : ClassMap<GroupHeader>
{
public GroupHeaderMap()
{
Table("GROUP_HEADER");
Id(x => x.Id, "GROUP_ID");
Map(x => x.Name, "GROUP_NAME");
Map(x => x.Description, "GROUP_DESCRIPTION");
HasManyToMany(x => x.Users)
.Table("USER_GROUP_COMPOSITE")
.ParentKeyColumn("GROUP_ID")
.ChildKeyColumn("USER_ID");
}
}
你会为这些写什么单元测试?您会使用 PersistenceSpecification 类对这些进行单元测试吗?
编辑:
我想使用 SqlLite,但是如果我没有从我的映射中生成我的架构怎么办?我还能以某种方式将我的架构加载到 SqlLite 中吗?另外我想知道测试 SqlLite 是否真的足够了。我们的产品至少需要在 MS SQL 和 Oracle 上运行。仅在 SqlLite 数据库上进行测试会满足我的要求吗?此外,您是否通常会测试您已映射的每个实体(构造函数、属性等)?
【问题讨论】:
标签: nhibernate fluent-nhibernate