public void WhenCreateThenSetDefaultTableName()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();

            new JoinMapper(typeof(MyClass), "   AA   ", hbmJoin, mapdoc);
            hbmJoin.table.Should().Be("AA");
        }
        public void WhenCallKeyMapperThenKeyMapperIsNotNull()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Key(km => km.Should().Not.Be.Null());
        }
示例#3
0
        public void WhenCreateThenSetDefaultTableName()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();

            new JoinMapper(typeof(MyClass), "   AA   ", hbmJoin, mapdoc);
            Assert.That(hbmJoin.table, Is.EqualTo("AA"));
        }
示例#4
0
        public void WhenCallKeyMapperThenKeyMapperIsNotNull()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Key(km => Assert.That(km, Is.Not.Null));
        }
示例#5
0
        public void CanSetCatalog()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Catalog("pizza");
            Assert.That(hbmJoin.catalog, Is.EqualTo("pizza"));
        }
示例#6
0
        public void CanSetTable()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Table("   Pizza   ");
            Assert.That(hbmJoin.table, Is.EqualTo("Pizza"));
        }
        public void CanSetFetch()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Fetch(FetchKind.Select);
            hbmJoin.fetch.Should().Be(HbmJoinFetch.Select);
        }
示例#8
0
        public void WhenCreateWithEmptySplitGroupThenThrows()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();

            Assert.That(() => new JoinMapper(typeof(MyClass), null, hbmJoin, mapdoc), Throws.TypeOf <ArgumentNullException>());
            Assert.That(() => new JoinMapper(typeof(MyClass), "", hbmJoin, mapdoc), Throws.TypeOf <ArgumentOutOfRangeException>());
            Assert.That(() => new JoinMapper(typeof(MyClass), "     ", hbmJoin, mapdoc), Throws.TypeOf <ArgumentOutOfRangeException>());
        }
示例#9
0
        public void CanSetFetch()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Fetch(FetchKind.Select);
            Assert.That(hbmJoin.fetch, Is.EqualTo(HbmJoinFetch.Select));
        }
示例#10
0
        public void CanSetOptional()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Optional(true);
            Assert.That(hbmJoin.optional, Is.True);
        }
示例#11
0
        public void CanSetInverse()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Inverse(true);
            Assert.That(hbmJoin.inverse, Is.True);
        }
示例#12
0
        public void CanSetTable()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Table("   Pizza   ");
            hbmJoin.table.Should().Be("Pizza");
        }
示例#13
0
        public void CanSetCatalog()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Catalog("pizza");
            hbmJoin.catalog.Should().Be("pizza");
        }
示例#14
0
        public void CanSetOptional()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Optional(true);
            hbmJoin.optional.Should().Be.True();
        }
示例#15
0
        public void CanSetSchema()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Schema("pizza");
            hbmJoin.schema.Should().Be("pizza");
        }
示例#16
0
        public void WhenCreateWithEmptySplitGroupThenThrows()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();

            Executing.This(() => new JoinMapper(typeof(MyClass), null, hbmJoin, mapdoc)).Should().Throw <ArgumentNullException>();
            Executing.This(() => new JoinMapper(typeof(MyClass), "", hbmJoin, mapdoc)).Should().Throw <ArgumentOutOfRangeException>();
            Executing.This(() => new JoinMapper(typeof(MyClass), "     ", hbmJoin, mapdoc)).Should().Throw <ArgumentOutOfRangeException>();
        }
示例#17
0
        public void CanSetInverse()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Inverse(true);
            hbmJoin.inverse.Should().Be.True();
        }
示例#18
0
        public void WhenAddPropertyThenAddItem()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Property(For <MyClass> .Property(mc => mc.Something), x => { });

            Assert.That(hbmJoin.Properties.Count(), Is.EqualTo(1));
        }
示例#19
0
        public void WhenSetTableNameEmptyThenThrows()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            Assert.That(() => mapper.Table(null), Throws.TypeOf <ArgumentNullException>());
            Assert.That(() => mapper.Table(""), Throws.TypeOf <ArgumentOutOfRangeException>());
            Assert.That(() => mapper.Table("    "), Throws.TypeOf <ArgumentOutOfRangeException>());
        }
示例#20
0
        public void WhenSetTableNameEmptyThenThrows()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Executing(x => x.Table(null)).Throws <ArgumentNullException>();
            mapper.Executing(x => x.Table("")).Throws <ArgumentOutOfRangeException>();
            mapper.Executing(x => x.Table("    ")).Throws <ArgumentOutOfRangeException>();
        }
示例#21
0
        public void WhenAddPropertyThenAddItem()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Property(For <MyClass> .Property(mc => mc.Something), x => { });

            hbmJoin.Properties.Should().Have.Count.EqualTo(1);
        }
示例#22
0
        public void SetSqlDelete()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.SqlDelete("blah");

            hbmJoin.SqlDelete.Should().Not.Be.Null();
            hbmJoin.SqlDelete.Text[0].Should().Be("blah");
        }
示例#23
0
        public void CanSetSqlSubselect()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Subselect("blah");

            Assert.That(hbmJoin.Subselect, Is.Not.Null);
            Assert.That(hbmJoin.subselect.Text[0], Is.EqualTo("blah"));
        }
示例#24
0
        public void CallKeyMapper()
        {
            var mapdoc          = new HbmMapping();
            var hbmJoin         = new HbmJoin();
            var mapper          = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);
            var keyMapperCalled = false;

            mapper.Key(km => keyMapperCalled = true);

            Assert.That(keyMapperCalled, Is.True);
        }
示例#25
0
        public void SetSqlDelete()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.SqlDelete("blah");

            Assert.That(hbmJoin.SqlDelete, Is.Not.Null);
            Assert.That(hbmJoin.SqlDelete.Text[0], Is.EqualTo("blah"));
        }
示例#26
0
        public void CallKeyMapper()
        {
            var mapdoc          = new HbmMapping();
            var hbmJoin         = new HbmJoin();
            var mapper          = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);
            var keyMapperCalled = false;

            mapper.Key(km => keyMapperCalled = true);

            keyMapperCalled.Should().Be.True();
        }
示例#27
0
        public void CanSetSqlSubselect()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.Subselect("blah");

            hbmJoin.Subselect.Should().Not.Be.Null();
            hbmJoin.subselect.Text[0].Should().Be("blah");
        }
示例#28
0
        public void WhenCallKeyMapperMoreThanOnceThenKeyMapperIsTheSame()
        {
            var        mapdoc             = new HbmMapping();
            var        hbmJoin            = new HbmJoin();
            var        mapper             = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);
            IKeyMapper firstCallInstance  = null;
            IKeyMapper secondCallInstance = null;

            mapper.Key(km => firstCallInstance  = km);
            mapper.Key(km => secondCallInstance = km);

            firstCallInstance.Should().Be.SameInstanceAs(secondCallInstance);
        }
示例#29
0
        public void SetSqlDeleteWithCheck()
        {
            var mapdoc  = new HbmMapping();
            var hbmJoin = new HbmJoin();
            var mapper  = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc);

            mapper.SqlDelete("blah", SqlCheck.RowCount);

            Assert.That(hbmJoin.SqlDelete, Is.Not.Null);
            Assert.That(hbmJoin.SqlDelete.Text[0], Is.EqualTo("blah"));
            Assert.That(hbmJoin.SqlDelete.checkSpecified, Is.True);
            Assert.That(hbmJoin.SqlDelete.check, Is.EqualTo(HbmCustomSQLCheck.Rowcount));
        }
示例#30
0
        public void Join(string splitGroupId, Action <IJoinMapper> splitMapping)
        {
            IJoinMapper splitGroup;

            if (!JoinMappers.TryGetValue(splitGroupId, out splitGroup))
            {
                var hbmJoin = new HbmJoin();
                splitGroup = new JoinMapper(Container, splitGroupId, hbmJoin, MapDoc);
                JoinMappers.Add(splitGroupId, splitGroup);
                classMapping.join = ArrayHelper.Append(classMapping.join, hbmJoin);
            }

            splitMapping(splitGroup);
        }