Example #1
0
        public void ShouldCreateRepositoryFromType()
        {
            // arrange
            IDomainRepositoryFactory factory = new DomainRepositoryFactory(new[] { new TestDomain() });

            // act
            IRepository repo = factory.Create(typeof(TestDomain));

            // assert
            repo.Should().NotBeNull();
        }
        public void ShouldCreateRepositoryFromType()
        {
            // arrange
            IDomainRepositoryFactory factory = new DomainRepositoryFactory(new[] { new TestDomain() });

            // act
            IRepository repo = factory.Create(typeof (TestDomain));

            // assert
            repo.Should().NotBeNull();
        }
        public void ShouldCreateRepositoryWhenDomainEventsAreNull()
        {
            // arrange
            var testDomain = new TestDomain { Events = null };
            IDomainRepositoryFactory factory = new DomainRepositoryFactory(new []{testDomain});

            // act
            IRepository repo = factory.Create<TestDomain>();

            // assert
            repo.Should().NotBeNull();
        }
Example #4
0
        public void ShouldCreateRepositoryWhenDomainEventsAreNull()
        {
            // arrange
            var testDomain = new TestDomain {
                Events = null
            };
            IDomainRepositoryFactory factory = new DomainRepositoryFactory(new [] { testDomain });

            // act
            IRepository repo = factory.Create <TestDomain>();

            // assert
            repo.Should().NotBeNull();
        }
        public void ShouldAddSingleInterceptorForAfterCommandExecution()
        {
            //Arrange
            var domain = new TestDomain();
            var interceptor = new TestEventInterceptor<AfterCommand>(1);
            domain.Events = new List<IInterceptor>
            {
                interceptor
            };
            domain.ConnectionString = Settings.Default.Connection;

            //act
            var repository = new DomainRepositoryFactory(new[] { domain }).Create<TestDomain>();
            repository.Execute(new EmptyCommand());

            //assert
            interceptor.WasCalled.Should().BeTrue();

        }
        public void ShouldAddSingleInterceptorForAfterQueryExecution()
        {
            //Arrange
            var domain      = new TestDomain();
            var interceptor = new TestEventInterceptor <AfterQuery>(1);

            domain.Events = new List <IInterceptor>
            {
                interceptor
            };
            domain.ConnectionString = Settings.Default.Connection;

            //act
            var repository = new DomainRepositoryFactory(new[] { domain }).Create <TestDomain>();

            repository.Find(new EmptyQuery());

            //assert
            interceptor.WasCalled.Should().BeTrue();
        }
        public void ShouldAddTwoInterceptorForAfterScalarExecution()
        {
            //Arrange
            var domain         = new TestDomain();
            var interceptor    = new TestEventInterceptor <AfterScalar>(1);
            var interceptorTwo = new TestEventInterceptor <AfterScalar>(2);

            domain.Events = new List <IInterceptor>
            {
                interceptorTwo,
                interceptor
            };
            domain.ConnectionString = Settings.Default.Connection;

            //act
            var repository = new DomainRepositoryFactory(new[] { domain }).Create <TestDomain>();

            repository.Find(new EmptyScalar());

            //assert
            interceptor.WasCalled.Should().BeTrue();
            interceptorTwo.WasCalled.Should().BeTrue();
            interceptor.CallTime.Should().BeBefore(interceptorTwo.CallTime);
        }