public void WhenSetTypeByITypeThenSetTypeName() { var member = typeof(MyClass).GetProperty("ReadOnly"); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Type(NHibernateUtil.String); mapping.Type.name.Should().Be.EqualTo("String"); }
public void WhenSetTypeByIUserTypeThenSetTypeName() { var member = typeof(MyClass).GetProperty("ReadOnly"); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Type<MyType>(); mapping.Type.name.Should().Contain("MyType"); mapping.type.Should().Be.Null(); }
public void WhenSetTypeByIUserTypeThenSetTypeName() { var member = typeof(MyClass).GetProperty("ReadOnly"); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Type<MyType>(); Assert.That(mapping.Type.name, Is.StringContaining("MyType")); Assert.That(mapping.type, Is.Null); }
public void WhenSetMultiColumnsValuesThenAddColumns() { var member = typeof(MyClass).GetProperty("ReadOnly"); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Type<MyType>(); mapper.Columns(cm => { cm.Name("column1"); cm.Length(50); }, cm => { cm.Name("column2"); cm.SqlType("VARCHAR(10)"); }); mapping.Columns.Should().Have.Count.EqualTo(2); }
public void WhenSetInvalidTypeThenThrow() { var member = typeof(MyClass).GetProperty("ReadOnly"); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); Executing.This(() => mapper.Type(typeof(object), null)).Should().Throw<ArgumentOutOfRangeException>(); Executing.This(() => mapper.Type(null, null)).Should().Throw<ArgumentNullException>(); }
public void WhenSetTypeByITypeTypeThenSetType() { var member = For<MyClass>.Property(c => c.EnumProp); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Type<EnumStringType<MyEnum>>(); mapping.Type.name.Should().Contain(typeof(EnumStringType<MyEnum>).FullName); mapping.type.Should().Be.Null(); }
public void WhenSetTypeByIUserTypeWithParamsThenSetType() { var member = typeof(MyClass).GetProperty("ReadOnly"); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Type<MyType>(new { Param1 = "a", Param2 = 12 }); mapping.type1.Should().Be.Null(); mapping.Type.name.Should().Contain("MyType"); mapping.Type.param.Should().Have.Count.EqualTo(2); mapping.Type.param.Select(p => p.name).Should().Have.SameValuesAs("Param1", "Param2"); mapping.Type.param.Select(p => p.GetText()).Should().Have.SameValuesAs("a", "12"); }
public void WhenSetInvalidTypeThenThrow() { var member = typeof(MyClass).GetProperty("ReadOnly"); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); Assert.That(() => mapper.Type(typeof(object), null), Throws.TypeOf<ArgumentOutOfRangeException>()); Assert.That(() => mapper.Type(null, null), Throws.TypeOf<ArgumentNullException>()); }
public void WhenSetTypeByITypeTypeThenSetType() { var member = For<MyClass>.Property(c => c.EnumProp); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Type<EnumStringType<MyEnum>>(); Assert.That(mapping.Type.name, Is.StringContaining(typeof(EnumStringType<MyEnum>).FullName)); Assert.That(mapping.type, Is.Null); }
public void WhenSetTypeByIUserTypeWithParamsThenSetType() { var member = typeof(MyClass).GetProperty("ReadOnly"); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Type<MyType>(new { Param1 = "a", Param2 = 12 }); Assert.That(mapping.type1, Is.Null); Assert.That(mapping.Type.name, Is.StringContaining("MyType")); Assert.That(mapping.Type.param, Has.Length.EqualTo(2)); Assert.That(mapping.Type.param.Select(p => p.name), Is.EquivalentTo(new [] {"Param1", "Param2"})); Assert.That(mapping.Type.param.Select(p => p.GetText()), Is.EquivalentTo(new [] {"a", "12"})); }