Exemple #1
0
        public void Passed_Transaction_Should_Apply_For_Reference_Saving()
        {
            var transaction = MockRepository.GenerateMock <ITransaction>();

            transaction.Expect(x => x.IsActive).Return(true);


            var session = MockRepository.GenerateMock <ISession>();

            session.Expect(x => x.Transaction).Return(transaction).Repeat.Twice();

            session.Expect(x => x.BeginTransaction()).Repeat.Never();
            session.Expect(s => s.Get <Cat>(null)).IgnoreArguments().Return(
                new Cat
            {
                Name    = "Fluffy",
                CatType = new CatType
                {
                    Name = "Persian"
                }
            });


            var spec = new PersistenceSpecification <Cat>(session, new NameEqualityComparer());

            spec.CheckProperty(x => x.Name, "Fluffy");
            spec.CheckReference(x => x.CatType, new CatType {
                Name = "Persian"
            });

            spec.VerifyTheMappings();

            session.VerifyAllExpectations();
        }
        public void Should_reject_classes_without_a_parameterless_constructor()
        {
            var _spec = new PersistenceSpecification<NoParameterlessConstructorClass>(sessionSource);

            typeof(MissingConstructorException).ShouldBeThrownBy(() =>
                _spec.VerifyTheMappings());
        }
Exemple #3
0
        public void Should_reject_classes_without_a_parameterless_constructor()
        {
            var _spec = new PersistenceSpecification <NoParameterlessConstructorClass>(sessionSource);

            typeof(MissingConstructorException).ShouldBeThrownBy(() =>
                                                                 _spec.VerifyTheMappings());
        }
        public void Passed_Transaction_Should_Apply_For_Reference_Saving()
        {
            var transaction = A.Fake<ITransaction>();
            A.CallTo(() => transaction.IsActive).Returns(true);

            var session = A.Fake<ISession>();
            A.CallTo(() => session.Transaction).Returns(transaction);
            A.CallTo(() => session.Get<Cat>(null)).WithAnyArguments()
                .Returns(
                new Cat
                {
                    Name = "Fluffy",
                    CatType = new CatType
                    {
                        Name = "Persian"
                    }
                });


            var spec = new PersistenceSpecification<Cat>(session, new NameEqualityComparer());
            spec.CheckProperty(x => x.Name, "Fluffy");
            spec.CheckReference(x => x.CatType, new CatType { Name = "Persian" });

            spec.VerifyTheMappings();

            A.CallTo(() => session.Transaction).MustHaveHappened(Repeated.Exactly.Twice);
            A.CallTo(() => session.BeginTransaction()).MustNotHaveHappened();
        }
        public void Passed_Transaction_Should_Apply_For_Reference_Saving()
        {
            var transaction = MockRepository.GenerateMock<ITransaction>();
            transaction.Expect(x => x.IsActive).Return(true);

            var session = MockRepository.GenerateMock<ISession>();
            session.Expect(x => x.Transaction).Return(transaction).Repeat.Twice();

            session.Expect(x => x.BeginTransaction()).Repeat.Never();
            session.Expect(s => s.Get<Cat>(null)).IgnoreArguments().Return(
                new Cat
                {
                    Name = "Fluffy",
                    CatType = new CatType
                    {
                        Name = "Persian"
                    }
                });

            var spec = new PersistenceSpecification<Cat>(session, new NameEqualityComparer());
            spec.CheckProperty(x => x.Name, "Fluffy");
            spec.CheckReference(x => x.CatType, new CatType {Name = "Persian"});

            spec.VerifyTheMappings();

            session.VerifyAllExpectations();
        }
Exemple #6
0
        public void Passed_Transaction_Should_Apply_For_Reference_Saving()
        {
            var transaction = A.Fake <ITransaction>();

            A.CallTo(() => transaction.IsActive).Returns(true);

            var session = A.Fake <ISession>();

            A.CallTo(() => session.Transaction).Returns(transaction);
            A.CallTo(() => session.Get <Cat>(null)).WithAnyArguments()
            .Returns(
                new Cat
            {
                Name    = "Fluffy",
                CatType = new CatType
                {
                    Name = "Persian"
                }
            });


            var spec = new PersistenceSpecification <Cat>(session, new NameEqualityComparer());

            spec.CheckProperty(x => x.Name, "Fluffy");
            spec.CheckReference(x => x.CatType, new CatType {
                Name = "Persian"
            });

            spec.VerifyTheMappings();

            A.CallTo(() => session.Transaction).MustHaveHappened(Repeated.Exactly.Twice);
            A.CallTo(() => session.BeginTransaction()).MustNotHaveHappened();
        }
Exemple #7
0
        public void TestMethod1()
        {
            // class that can test mappings easily
            var persistenceSpecification = new PersistenceSpecification<User>(Session);

            var mappings = persistenceSpecification.VerifyTheMappings();
        }
Exemple #8
0
 public void Mappings()
 {
     using (var session = this.sessionFactory.OpenSession())
     {
         var specification = new PersistenceSpecification <ENTITY>(session, new EqualityComparer());
         this.TestMappings(specification);
         specification.VerifyTheMappings();
     }
 }
Exemple #9
0
        public void Can_test_enumerable()
        {
            var kittens = new[] { new Kitten {
                                      Id = 3, Name = "kitten3"
                                  }, new Kitten {
                                      Id = 4, Name = "kitten4"
                                  } };

#pragma warning disable 618,612
            spec.CheckEnumerable(x => x.EnumerableOfKittens, (cat, kitten) => cat.AddKitten(kitten), kittens);
#pragma warning restore 618,612

            typeof(ApplicationException).ShouldBeThrownBy(() => spec.VerifyTheMappings());
        }
        public void Should_Not_Open_A_New_Transaction_If_One_Is_Passed()
        {
            var transaction = MockRepository.GenerateMock<ITransaction>();
            transaction.Expect(x => x.IsActive).Return(true);

            var session = MockRepository.GenerateMock<ISession>();
            session.Expect(x => x.Transaction).Return(transaction).Repeat.Twice();
            session.Expect(x => x.BeginTransaction()).Repeat.Never();

            var spec = new PersistenceSpecification<Cat>(session);
            spec.VerifyTheMappings();

            session.VerifyAllExpectations();
        }
        public void Should_Open_A_New_Transaction_If_None_Is_Passed()
        {

            var transaction = A.Fake<ITransaction>();
            A.CallTo(() => transaction.IsActive).Returns(false);

            var session = A.Fake<ISession>();
            A.CallTo(() => session.Transaction).Returns(transaction);
            A.CallTo(() => session.BeginTransaction()).Returns(transaction);

            var spec = new PersistenceSpecification<Cat>(session);
            spec.VerifyTheMappings();

            A.CallTo(() => session.Transaction).MustHaveHappened(Repeated.Exactly.Twice);
        }
Exemple #12
0
        public void Should_Open_A_New_Transaction_If_None_Is_Passed()
        {
            var transaction = A.Fake <ITransaction>();

            A.CallTo(() => transaction.IsActive).Returns(false);

            var session = A.Fake <ISession>();

            A.CallTo(() => session.Transaction).Returns(transaction);
            A.CallTo(() => session.BeginTransaction()).Returns(transaction);

            var spec = new PersistenceSpecification <Cat>(session);

            spec.VerifyTheMappings();

            A.CallTo(() => session.Transaction).MustHaveHappened(Repeated.Exactly.Twice);
        }
Exemple #13
0
        public void Should_Not_Open_A_New_Transaction_If_One_Is_Passed()
        {
            var transaction = MockRepository.GenerateMock <ITransaction>();

            transaction.Expect(x => x.IsActive).Return(true);

            var session = MockRepository.GenerateMock <ISession>();

            session.Expect(x => x.Transaction).Return(transaction).Repeat.Twice();
            session.Expect(x => x.BeginTransaction()).Repeat.Never();

            var spec = new PersistenceSpecification <Cat>(session);

            spec.VerifyTheMappings();

            session.VerifyAllExpectations();
        }
Exemple #14
0
        public void Should_accept_classes_with_protected_parameterless_constructor()
        {
            var _spec = new PersistenceSpecification <ProtectedConstructorClass>(sessionSource);

            _spec.VerifyTheMappings();
        }
 public void Should_accept_instances_regardless_of_constructor()
 {
     var _spec = new PersistenceSpecification<NoParameterlessConstructorClass>(sessionSource);
     _spec.VerifyTheMappings(new NoParameterlessConstructorClass(123));
 }
 public void Should_accept_classes_with_public_parameterless_constructor()
 {
     var _spec = new PersistenceSpecification<PublicConstructorClass>(sessionSource);
     _spec.VerifyTheMappings();
 }
Exemple #17
0
        public void Should_accept_instances_regardless_of_constructor()
        {
            var _spec = new PersistenceSpecification <NoParameterlessConstructorClass>(sessionSource);

            _spec.VerifyTheMappings(new NoParameterlessConstructorClass(123));
        }
Exemple #18
0
    public void TestAMappingForSomething()
    {
        var spec = new PersistenceSpecification <Something> (session);

        spec.VerifyTheMappings();
    }