public void AtCreationSetIdType() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); new AnyMapper(null, typeof(int), hbmAny, hbmMapping); Assert.That(hbmAny.idtype, Is.EqualTo("Int32")); }
public void AtCreationSetIdType() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); new AnyMapper(null, typeof(int), hbmAny, hbmMapping); hbmAny.idtype.Should().Be("Int32"); }
public void AutoCleanInvalidCascade() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.Cascade(Cascade.All | Cascade.DeleteOrphans); hbmAny.cascade.Should().Be("all"); }
public void AtCreationSetTheTwoRequiredColumnsNodes() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); new AnyMapper(null, typeof(int), hbmAny, hbmMapping); hbmAny.Columns.Should().Have.Count.EqualTo(2); hbmAny.Columns.Select(c => c.name).All(n => n.Satisfy(name => !string.IsNullOrEmpty(name))); }
public void CanSetIdTypeThroughType() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.IdType(typeof(long)); hbmAny.idtype.Should().Be("Int64"); }
public void CanSetMetaTypeThroughGenericMethod() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.MetaType<char>(); Assert.That(hbmAny.MetaType, Is.EqualTo("Char")); }
public void CanSetMetaTypeThroughIType() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.MetaType(NHibernateUtil.Character); Assert.That(hbmAny.MetaType, Is.EqualTo("Char")); }
public void CanSetIdTypeThroughType() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.IdType(typeof(long)); Assert.That(hbmAny.idtype, Is.EqualTo("Int64")); }
public void AtCreationSetTheTwoRequiredColumnsNodes() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); new AnyMapper(null, typeof(int), hbmAny, hbmMapping); Assert.That(hbmAny.Columns.Count(), Is.EqualTo(2)); Assert.That(hbmAny.Columns.All(c => !string.IsNullOrEmpty(c.name)), Is.True); }
public void CanSetCascade() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.Cascade(Cascade.All); hbmAny.cascade.Should().Be("all"); }
public void CanSetMetaTypeThroughGenericMethod() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.MetaType<char>(); hbmAny.MetaType.Should().Be("Char"); }
public void CanSetMetaTypeThroughIType() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.MetaType(NHibernateUtil.Character); hbmAny.MetaType.Should().Be("Char"); }
public void AtCreationSetColumnsUsingMemberName() { var member = typeof(MyClass).GetProperty("MyReferenceClass"); var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); new AnyMapper(member, typeof(int), hbmAny, hbmMapping); hbmAny.Columns.ElementAt(0).name.Should().Contain("MyReferenceClass"); hbmAny.Columns.ElementAt(1).name.Should().Contain("MyReferenceClass"); }
public void CanSetIndex() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.Index("pizza"); hbmAny.index.Should().Be("pizza"); }
public void WhenSetFirstMetaValueThenSetMetaTypeIfNotClass() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.MetaValue('A', typeof(MyReferenceClass)); hbmAny.MetaType.Should().Be("Char"); }
public void CanSetInsert() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.Insert(false); hbmAny.insert.Should().Be.False(); }
public void CanSetLazy() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.Lazy(true); hbmAny.lazy.Should().Be(true); }
public void IdMetaTypeShouldBeImmutableAfterAddMetaValues() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.MetaValue('A', typeof(MyReferenceClass)); Executing.This(() => mapper.IdType(NHibernateUtil.Int32)).Should().NotThrow(); Executing.This(mapper.IdType<int>).Should().NotThrow(); Executing.This(mapper.IdType<string>).Should().Throw<ArgumentException>(); Executing.This(() => mapper.IdType(NHibernateUtil.String)).Should().Throw<ArgumentException>(); }
public void CanSetUpdate() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.Update(false); hbmAny.update.Should().Be.False(); }
public void WhenDuplicatedMetaValueWithDifferentTypeThenThrow() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.MetaValue('A', typeof(MyReferenceClass)); Executing.This(() => mapper.MetaValue('A', typeof(MyClass))).Should().Throw<ArgumentException>(); }
public void WhenSetTwoMetaValueThenHasTwoMetaValues() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.MetaValue('A', typeof(MyReferenceClass)); mapper.MetaValue('B', typeof(MyClass)); hbmAny.metavalue.Should().Have.Count.EqualTo(2); hbmAny.metavalue.Select(mv => mv.value).Should().Have.SameValuesAs("A", "B"); hbmAny.metavalue.Select(mv => mv.@class).Satisfy(c => c.Any(clazz => clazz.Contains("MyReferenceClass"))); hbmAny.metavalue.Select(mv => mv.@class).Satisfy(c => c.Any(clazz => clazz.Contains("MyClass"))); }
public void WhenSetIdColumnPropertiesThenWorkOnSameHbmColumnCreatedAtCtor() { const int idColumnIndex = 1; var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); var columnsBefore = hbmAny.Columns.ToArray(); mapper.Columns(idcm => idcm.Length(10), metacm => { }); var columnsAfter = hbmAny.Columns.ToArray(); columnsBefore[idColumnIndex].Should().Be.SameInstanceAs(columnsAfter[idColumnIndex]); columnsBefore[idColumnIndex].length.Should().Be("10"); }
public void WhenDuplicatedMetaValueThenRegisterOne() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.MetaValue('A', typeof(MyReferenceClass)); mapper.MetaValue('A', typeof(MyReferenceClass)); hbmAny.metavalue.Should().Have.Count.EqualTo(1); }
public void WhenSetMetaColumnPropertiesThenWorkOnSameHbmColumnCreatedAtCtor() { // The first column in the mapping is the MetaValue const int metaValueColumnIndex = 0; var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); var columnsBefore = hbmAny.Columns.ToArray(); mapper.Columns(idcm => { }, metacm => metacm.Length(500)); var columnsAfter = hbmAny.Columns.ToArray(); columnsBefore[metaValueColumnIndex].Should().Be.SameInstanceAs(columnsAfter[metaValueColumnIndex]); columnsBefore[metaValueColumnIndex].length.Should().Be("500"); }
private void BindAnyProperty(HbmAny anyMapping, Property property) { property.Cascade = anyMapping.cascade ?? mappings.DefaultCascade; property.IsUpdateable = anyMapping.update; property.IsInsertable = anyMapping.insert; }
public void WhenNullParameterThenThrow() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); Executing.This(() => mapper.MetaValue(null, typeof(MyReferenceClass))).Should().Throw<ArgumentNullException>(); Executing.This(() => mapper.MetaValue('A', null)).Should().Throw<ArgumentNullException>(); }
public void Any(MemberInfo property, Type idTypeOfMetaType, Action<IAnyMapper> mapping) { var hbm = new HbmAny { name = property.Name }; mapping(new AnyMapper(property, idTypeOfMetaType, hbm, MapDoc)); AddProperty(hbm); }
public void WhenSetMetaValueWithClassThenThrow() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); Executing.This(() => mapper.MetaValue(typeof(MyReferenceClass), typeof(MyReferenceClass))).Should().Throw<ArgumentOutOfRangeException>(); }
protected void BindAny(HbmAny node, Any model, bool isNullable) { model.IdentifierTypeName = node.idtype; new TypeBinder(model, Mappings).Bind(node.idtype); BindAnyMeta(node, model); new ColumnsBinder(model, Mappings).Bind(node.Columns, isNullable, null); }
public void WhenSetSecondMetaValueThenCheckCompatibility() { var hbmMapping = new HbmMapping(); var hbmAny = new HbmAny(); var mapper = new AnyMapper(null, typeof(int), hbmAny, hbmMapping); mapper.MetaValue('A', typeof(MyReferenceClass)); Executing.This(() => mapper.MetaValue(5, typeof(MyClass))).Should().Throw<ArgumentException>(); }