public void AssignCascadeStyle() { var hbmMapping = new HbmMapping(); var hbm = new HbmManyToOne(); var mapper = new ManyToOneMapper(null, hbm, hbmMapping); mapper.Cascade(Mapping.ByCode.Cascade.Persist | Mapping.ByCode.Cascade.Remove); hbm.cascade.Split(',').Select(w => w.Trim()).Should().Contain("persist").And.Contain("delete"); }
public void WhenForceClassRelationToIncompatibleTypeThenThrows() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("TheOtherRelation"); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); Executing.This(() => mapper.Class(typeof(Whatever))).Should().Throw <ArgumentOutOfRangeException>(); }
public void AutoCleanUnsupportedCascadeStyle() { var hbmMapping = new HbmMapping(); var hbm = new HbmManyToOne(); var mapper = new ManyToOneMapper(null, hbm, hbmMapping); mapper.Cascade(Mapping.ByCode.Cascade.Persist | Mapping.ByCode.Cascade.DeleteOrphans | Mapping.ByCode.Cascade.Remove); hbm.cascade.Split(',').Select(w => w.Trim()).All(w => w.Satisfy(cascade => !cascade.Contains("orphan"))); }
public void AssignEntityName() { var hbmMapping = new HbmMapping(); var hbm = new HbmManyToOne(); IManyToOneMapper mapper = new ManyToOneMapper(null, hbm, hbmMapping); mapper.EntityName("MyEntity"); Assert.That(hbm.EntityName, Is.EqualTo("MyEntity")); }
public void CanSetUpdate() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var hbm = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, hbm, hbmMapping); mapper.Update(false); Assert.That(hbm.update, Is.False); }
public void CanSetInsert() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var hbm = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, hbm, hbmMapping); mapper.Insert(false); hbm.insert.Should().Be.False(); }
public void CanSetAccessor() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var hbm = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, hbm, hbmMapping); mapper.Access(Accessor.ReadOnly); hbm.Access.Should().Be("readonly"); }
public void AfterSetMultiColumnsCantSetSimpleColumn() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Columns(cm => cm.Length(50), cm => cm.SqlType("VARCHAR(10)")); Executing.This(() => mapper.Column(cm => cm.Length(50))).Should().Throw <MappingException>(); }
public void CanSetAccessor() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var hbm = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, hbm, hbmMapping); mapper.Access(Accessor.ReadOnly); Assert.That(hbm.Access, Is.EqualTo("readonly")); }
public void CanSetNotFoundWithIgnoreMode() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var hbm = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, hbm, hbmMapping); mapper.NotFound(NotFoundMode.Ignore); Assert.That(hbm.notfound, Is.EqualTo(HbmNotFoundMode.Ignore)); }
public void CanSetPropertyRefName() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var hbm = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, hbm, hbmMapping); mapper.PropertyRef("PropertyRefName"); hbm.propertyref.Should().Be("PropertyRefName"); }
public void CanSetFk() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var hbm = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, hbm, hbmMapping); mapper.ForeignKey("MyFkName"); hbm.foreignkey.Should().Be("MyFkName"); }
public void WhenSetMultiColumnsValuesThenAutoassignColumnNames() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Columns(cm => cm.Length(50), cm => cm.SqlType("VARCHAR(10)")); Assert.That(mapping.Columns.Count(), Is.EqualTo(2)); Assert.That(mapping.Columns.All(cm => !string.IsNullOrEmpty(cm.name)), Is.True); }
public void CanSetLazyness() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("TheOtherRelation"); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Lazy(LazyRelation.NoProxy); mapping.Lazy.Should().Have.Value(); mapping.Lazy.Should().Be(HbmLaziness.NoProxy); }
public void CanSetFk() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var hbm = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, hbm, hbmMapping); mapper.ForeignKey("MyFkName"); Assert.That(hbm.foreignkey, Is.EqualTo("MyFkName")); }
public void CanForceClassRelation() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("TheOtherRelation"); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Class(typeof(Relation)); mapping.Class.Should().Contain("Relation").And.Not.Contain("IRelation"); }
public void WhenSetMultiColumnsValuesThenAutoassignColumnNames() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Columns(cm => cm.Length(50), cm => cm.SqlType("VARCHAR(10)")); mapping.Columns.Should().Have.Count.EqualTo(2); mapping.Columns.All(cm => cm.name.Satisfy(n => !string.IsNullOrEmpty(n))); }
public void CanSetNotFoundWithIgnoreMode() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var hbm = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, hbm, hbmMapping); mapper.NotFound(NotFoundMode.Ignore); hbm.notfound.Should().Be(HbmNotFoundMode.Ignore); }
public void CanSetLazyness() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("TheOtherRelation"); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Lazy(LazyRelation.NoProxy); Assert.That(mapping.Lazy, Is.Not.Null); Assert.That(mapping.Lazy, Is.EqualTo(HbmLaziness.NoProxy)); }
public void CanSetPropertyRefName() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var hbm = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, hbm, hbmMapping); mapper.PropertyRef("PropertyRefName"); Assert.That(hbm.propertyref, Is.EqualTo("PropertyRefName")); }
public void CanSetFormula() { var hbmMapping = new HbmMapping(); var member = ForClass <MyClass> .Property(c => c.Relation); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Formula("SomeFormula"); mapping.formula.Should().Be("SomeFormula"); }
public void WhenSetDefaultColumnNameThenDoesNotSetTheName() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Column(cm => cm.Name("Relation")); mapping.column.Should().Be.Null(); mapping.Columns.Should().Be.Empty(); }
public void SettingColumnOverridesFormula() { var hbmMapping = new HbmMapping(); var member = ForClass <MyClass> .Property(c => c.Relation); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Formula("formula"); mapper.Column(cm => cm.Unique(true)); mapping.formula.Should().Be.Null(); }
public void WhenSetDifferentColumnNameThenSetTheName() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var hbm = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, hbm, hbmMapping); mapper.Column(cm => cm.Name("RelationId")); hbm.Columns.Should().Have.Count.EqualTo(1); hbm.Columns.Single().name.Should().Be("RelationId"); }
public void WhenSetFetchModeToSelectThenResetFetch() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Fetch(FetchKind.Select); mapping.fetch.Should().Be(HbmFetchMode.Select); mapping.fetchSpecified.Should().Be.False(); }
public void WhenSetFetchModeToSelectThenResetFetch() { var hbmMapping = new HbmMapping(); var member = typeof(MyClass).GetProperty("Relation"); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Fetch(FetchKind.Select); Assert.That(mapping.fetch, Is.EqualTo(HbmFetchMode.Select)); Assert.That(mapping.fetchSpecified, Is.False); }
public void WhenSetFormulaWithNullThenDoNothing() { var hbmMapping = new HbmMapping(); var member = ForClass <MyClass> .Property(c => c.Relation); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Column("MyColumn"); mapper.Formula(null); mapping.formula.Should().Be.Null(); mapping.column.Should().Not.Be.Null(); }
public void SettingColumnPlainValuesOverridesFormula() { var hbmMapping = new HbmMapping(); var member = ForClass <MyClass> .Property(c => c.Relation); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Formula("formula"); mapper.Column("colName"); mapping.formula.Should().Be.Null(); mapping.column.Should().Be("colName"); }
public void WhenSetFormulaThenResetColumn() { var hbmMapping = new HbmMapping(); var member = ForClass <MyClass> .Property(c => c.Relation); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Column("MyColumn"); mapper.Formula("SomeFormula"); mapping.formula.Should().Be("SomeFormula"); mapping.column.Should().Be.Null(); mapping.Items.Should().Be.Null(); }
public void SettingFormulaOverridesColumnNodes() { var hbmMapping = new HbmMapping(); var member = ForClass <MyClass> .Property(c => c.Relation); var mapping = new HbmManyToOne(); var mapper = new ManyToOneMapper(member, mapping, hbmMapping); mapper.Column(cm => cm.SqlType("VARCHAR(80)")); mapper.Formula("formula"); mapping.formula.Should().Be("formula"); mapping.column.Should().Be(null); mapping.Items.Should().Be.Null(); }