public void AfterSetMultiColumnsCantSetSimpleColumn()
 {
     var member = typeof(MyClass).GetProperty("ReadOnly");
     var mapping = new HbmKeyProperty();
     var mapper = new KeyPropertyMapper(member, mapping);
     mapper.Columns(cm => cm.Length(50), cm => cm.SqlType("VARCHAR(10)"));
     mapper.Executing(m => m.Column(cm => cm.Length(50))).Throws<ConfOrm.MappingException>();
 }
Exemplo n.º 2
0
        public void AfterSetMultiColumnsCantSetSimpleColumn()
        {
            var member  = typeof(MyClass).GetProperty("ReadOnly");
            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(member, mapping);

            mapper.Columns(cm => cm.Length(50), cm => cm.SqlType("VARCHAR(10)"));
            mapper.Executing(m => m.Column(cm => cm.Length(50))).Throws <ConfOrm.MappingException>();
        }
 public void WhenSetBasicColumnValuesThenSetPlainValues()
 {
     var member = typeof(MyClass).GetProperty("Autoproperty");
     var mapping = new HbmKeyProperty();
     var mapper = new KeyPropertyMapper(member, mapping);
     mapper.Column(cm => cm.Length(50));
     mapping.column.Should().Be.Null();
     mapping.length.Should().Be("50");
 }
Exemplo n.º 4
0
        public void WhenSetInvalidTypeThenThrow()
        {
            var member  = typeof(MyClass).GetProperty("ReadOnly");
            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(member, mapping);

            mapper.Executing(m => m.Type(typeof(object), null)).Throws <ArgumentOutOfRangeException>();
            mapper.Executing(m => m.Type(null, null)).Throws <ArgumentNullException>();
        }
Exemplo n.º 5
0
        public void WhenSetBasicColumnValuesThenSetPlainValues()
        {
            var member  = typeof(MyClass).GetProperty("Autoproperty");
            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(member, mapping);

            mapper.Column(cm => cm.Length(50));
            mapping.column.Should().Be.Null();
            mapping.length.Should().Be("50");
        }
Exemplo n.º 6
0
        public void WhenSetTypeByICompositeUserTypeThenSetTypeName()
        {
            var member  = typeof(MyClass).GetProperty("ReadOnly");
            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(member, mapping);

            Assert.That(() => mapper.Type <MyCompoType>(), Throws.Nothing);
            Assert.That(mapping.Type.name, Does.Contain(nameof(MyCompoType)));
            Assert.That(mapping.type, Is.Null);
        }
 public void WhenSetDefaultColumnNameThenDoesNotSetTheName()
 {
     var member = typeof(MyClass).GetProperty("Autoproperty");
     var mapping = new HbmKeyProperty();
     var mapper = new KeyPropertyMapper(member, mapping);
     mapper.Column(cm => { cm.Name("Autoproperty"); cm.Length(50); });
     mapping.column.Should().Be.Null();
     mapping.length.Should().Be("50");
     mapping.Columns.Should().Be.Empty();
 }
Exemplo n.º 8
0
        public void WhenSetMultiColumnsValuesThenAutoassignColumnNames()
        {
            var member  = typeof(MyClass).GetProperty("ReadOnly");
            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(member, mapping);

            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)));
        }
Exemplo n.º 9
0
        public void WhenSetTypeByITypeThenSetTypeName()
        {
            var member  = typeof(MyClass).GetProperty("ReadOnly");
            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(member, mapping);

            mapper.Type(NHibernateUtil.String);

            mapping.Type.name.Should().Be.EqualTo("String");
        }
Exemplo n.º 10
0
        public void WhenSettingByTypeThenCheckCompatibility()
        {
            var member  = typeof(MyClass).GetProperty("ReadOnly");
            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(member, mapping);

            mapper.Executing(m => m.Access(typeof(object))).Throws <ArgumentOutOfRangeException>();
            mapper.Executing(m => m.Access(typeof(FieldAccessor))).NotThrows();
            mapping.Access.Should().Be.EqualTo(typeof(FieldAccessor).AssemblyQualifiedName);
        }
Exemplo n.º 11
0
        public void WhenSetDifferentColumnNameThenSetTheName()
        {
            var member  = typeof(MyClass).GetProperty("Autoproperty");
            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(member, mapping);

            mapper.Column(cm => cm.Name("pepe"));

            mapping.Columns.Should().Have.Count.EqualTo(1);
            mapping.Columns.Single().name.Should().Be("pepe");
        }
Exemplo n.º 12
0
        public void WhenSetTypeByIUserTypeWithNullParamsThenSetTypeName()
        {
            var member  = typeof(MyClass).GetProperty("ReadOnly");
            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(member, mapping);

            mapper.Type <MyType>(null);

            mapping.Type.name.Should().Contain("MyType");
            mapping.type.Should().Be.Null();
        }
Exemplo n.º 13
0
        public void WhenSetDefaultColumnNameThenDoesNotSetTheName()
        {
            var member  = typeof(MyClass).GetProperty("Autoproperty");
            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(member, mapping);

            mapper.Column(cm => { cm.Name("Autoproperty"); cm.Length(50); });
            mapping.column.Should().Be.Null();
            mapping.length.Should().Be("50");
            mapping.Columns.Should().Be.Empty();
        }
Exemplo n.º 14
0
        public void WhenSetTypeByITypeTypeThenSetType()
        {
            var member = ForClass <MyClass> .Property(c => c.EnumProp);

            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(member, mapping);

            mapper.Type <EnumStringType <MyEnum> >();

            mapping.Type.name.Should().Contain(typeof(EnumStringType <MyEnum>).FullName);
            mapping.type.Should().Be.Null();
        }
 public void WhenSetColumnValuesThenAddColumnTag()
 {
     var member = typeof(MyClass).GetProperty("Autoproperty");
     var mapping = new HbmKeyProperty();
     var mapper = new KeyPropertyMapper(member, mapping);
     mapper.Column(cm =>
     {
         cm.SqlType("VARCHAR(50)");
         cm.NotNullable(true);
     });
     mapping.column.Should().Not.Be.Null();
     mapping.Columns.Should().Have.Count.EqualTo(1);
 }
Exemplo n.º 16
0
        public void WhenSetTypeByIUserTypeWithParamsThenSetType()
        {
            var member  = typeof(MyClass).GetProperty("ReadOnly");
            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(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");
        }
Exemplo n.º 17
0
        public void WhenSetColumnValuesThenAddColumnTag()
        {
            var member  = typeof(MyClass).GetProperty("Autoproperty");
            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(member, mapping);

            mapper.Column(cm =>
            {
                cm.SqlType("VARCHAR(50)");
                cm.NotNullable(true);
            });
            mapping.column.Should().Not.Be.Null();
            mapping.Columns.Should().Have.Count.EqualTo(1);
        }
Exemplo n.º 18
0
        public void WhenSetMultiColumnsValuesThenAddColumns()
        {
            var member  = typeof(MyClass).GetProperty("ReadOnly");
            var mapping = new HbmKeyProperty();
            var mapper  = new KeyPropertyMapper(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 HbmKeyProperty();
     var mapper = new KeyPropertyMapper(member, mapping);
     mapper.Executing(m=> m.Type(typeof(object), null)).Throws<ArgumentOutOfRangeException>();
     mapper.Executing(m => m.Type(null, null)).Throws<ArgumentNullException>();
 }
 public void WhenSetMultiColumnsValuesThenAddColumns()
 {
     var member = typeof(MyClass).GetProperty("ReadOnly");
     var mapping = new HbmKeyProperty();
     var mapper = new KeyPropertyMapper(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 WhenSettingByTypeThenCheckCompatibility()
        {
            var member = typeof(MyClass).GetProperty("ReadOnly");
            var mapping = new HbmKeyProperty();
            var mapper = new KeyPropertyMapper(member, mapping);

            mapper.Executing(m=> m.Access(typeof(object))).Throws<ArgumentOutOfRangeException>();
            mapper.Executing(m => m.Access(typeof(FieldAccessor))).NotThrows();
            mapping.Access.Should().Be.EqualTo(typeof(FieldAccessor).AssemblyQualifiedName);
        }
        public void WhenSetTypeByIUserTypeWithParamsThenSetType()
        {
            var member = typeof(MyClass).GetProperty("ReadOnly");
            var mapping = new HbmKeyProperty();
            var mapper = new KeyPropertyMapper(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 WhenSetTypeByIUserTypeWithNullParamsThenSetTypeName()
        {
            var member = typeof(MyClass).GetProperty("ReadOnly");
            var mapping = new HbmKeyProperty();
            var mapper = new KeyPropertyMapper(member, mapping);
            mapper.Type<MyType>(null);

            mapping.Type.name.Should().Contain("MyType");
            mapping.type.Should().Be.Null();
        }
        public void WhenSetTypeByITypeTypeThenSetType()
        {
            var member = ForClass<MyClass>.Property(c => c.EnumProp);
            var mapping = new HbmKeyProperty();
            var mapper = new KeyPropertyMapper(member, mapping);
            mapper.Type<EnumStringType<MyEnum>>();

            mapping.Type.name.Should().Contain(typeof(EnumStringType<MyEnum>).FullName);
            mapping.type.Should().Be.Null();
        }
        public void WhenSetTypeByITypeThenSetTypeName()
        {
            var member = typeof(MyClass).GetProperty("ReadOnly");
            var mapping = new HbmKeyProperty();
            var mapper = new KeyPropertyMapper(member, mapping);
            mapper.Type(NHibernateUtil.String);

            mapping.Type.name.Should().Be.EqualTo("String");
        }
        public void WhenSetDifferentColumnNameThenSetTheName()
        {
            var member = typeof(MyClass).GetProperty("Autoproperty");
            var mapping = new HbmKeyProperty();
            var mapper = new KeyPropertyMapper(member, mapping);
            mapper.Column(cm => cm.Name("pepe"));

            mapping.Columns.Should().Have.Count.EqualTo(1);
            mapping.Columns.Single().name.Should().Be("pepe");
        }
 public void WhenSetMultiColumnsValuesThenAutoassignColumnNames()
 {
     var member = typeof(MyClass).GetProperty("ReadOnly");
     var mapping = new HbmKeyProperty();
     var mapper = new KeyPropertyMapper(member, mapping);
     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)));
 }