Пример #1
0
        public void Bind_Should_Bind_Domain_Object()
        {
            var kernel = new NinjectContainer();
            var maps = kernel.Resolve<IMappingManager>();
            var types = kernel.Resolve<BasicTypesMap>();
            var person = new Person();

            maps.LoadFromAssembly(typeof(PersonMap).Assembly);
            types.MapTypes();

            var record = new Mock<IDataReader>();
            record.SetupGet(x => x.FieldCount).Returns(3);
            record.Setup(x => x.GetName(0)).Returns("NAME");
            record.Setup(x => x.GetName(1)).Returns("AGE");
            record.Setup(x => x.GetName(2)).Returns("ID");
            record.Setup(x => x.GetValue(0)).Returns("Alaor");
            record.Setup(x => x.GetValue(1)).Returns(28);
            record.Setup(x => x.GetValue(2)).Returns(1);

            var mapping = maps.GetMapping(person.GetType());
            var register = kernel.Resolve<ITypeRegister>();
            var binder = new ObjectBinder(mapping, register);

            binder.Bind(record.Object, person);

            person.Name.Should().Be("Alaor");
            person.Id.Should().Be(1);
            person.Age.Should().Be(28);
        }
Пример #2
0
        public void GetText_Returns_InsertText()
        {
            var person = new Person();
            var mapping = new PersonMap();
            mapping.ExecuteMapping();

            var mapInt = new TypeMap(DbType.Int32,typeof(int),new GenericConverter());
            var mapString = new TypeMap(DbType.String,typeof(string),new GenericConverter());

            var mock = new Moq.Mock<ITypeRegister>();
            mock.Setup(x => x.Get(typeof (int))).Returns(mapInt);
            mock.Setup(x => x.Get(typeof(string))).Returns(mapString);

            var dbparam = new Moq.Mock<IDbDataParameter>();
            Func<IDbDataParameter> func = () => dbparam.Object;

            var register = mock.Object;

            var insert = new InsertPlan(mapping, register);
            var text = insert.CreatePlanParameter(func, person);

            text.SqlText.ToUpper().Should().Be("INSERT INTO PERSON (NAME, AGE) VALUES (@NAME, @AGE)");
        }
Пример #3
0
        public void GetText_Returns_DeleteText()
        {
            var person = new Person();
            var mapping = new PersonMap();
            mapping.ExecuteMapping();

            var mapInt = new TypeMap(DbType.Int32, typeof(int), new GenericConverter());
            var mapString = new TypeMap(DbType.String, typeof(string), new GenericConverter());

            var mock = new Moq.Mock<ITypeRegister>();
            mock.Setup(x => x.Get(typeof(int))).Returns(mapInt);
            mock.Setup(x => x.Get(typeof(string))).Returns(mapString);

            var dbparam = new Moq.Mock<IDbDataParameter>();
            Func<IDbDataParameter> func = () => dbparam.Object;

            var register = mock.Object;

            var insert = new DeletePlan(mapping, register);
            var param = insert.CreatePlanParameter(func, person);

            param.SqlText.ToUpper().Should().Be("DELETE FROM PERSON WHERE ID = @ID");
        }
        public void InsertTests()
        {
            var kernel = new NinjectContainer();
            var maps = kernel.Resolve<IMappingManager>();
            var types = kernel.Resolve<BasicTypesMap>();

            maps.LoadFromAssembly(typeof(PersonMap).Assembly);
            types.MapTypes();

            var executer = kernel.Resolve<GenericDomainsRepository<Person>>();
            var person = new Person { Age = 25,Id = 0, Name = "Alaor" };

            executer.Save(person);

            person.Id.Should().Not.Be(0);
        }