예제 #1
0
        public void OrSpecification_Creation_NullRightSpecThrowArgumentNullException_Test()
        {
            // Arrange
            DirectSpecification <Entity> leftAdHocSpecification;
            DirectSpecification <Entity> rightAdHocSpecification;

            Expression <Func <Entity, bool> > rightSpec = s => s.Id == 0;
            Expression <Func <Entity, bool> > leftSpec  = s => s.SampleProperty.Length > 2;

            leftAdHocSpecification  = new DirectSpecification <Entity>(leftSpec);
            rightAdHocSpecification = new DirectSpecification <Entity>(rightSpec);

            // Act
            var composite = new OrElseSpecification <Entity>(leftAdHocSpecification, null);
        }
예제 #2
0
        public void OrSpecification_Creation_Test()
        {
            // Arrange
            DirectSpecification <Entity> leftAdHocSpecification;
            DirectSpecification <Entity> rightAdHocSpecification;

            Expression <Func <Entity, bool> > leftSpec  = s => s.Id == 0;
            Expression <Func <Entity, bool> > rightSpec = s => s.SampleProperty.Length > 2;

            leftAdHocSpecification  = new DirectSpecification <Entity>(leftSpec);
            rightAdHocSpecification = new DirectSpecification <Entity>(rightSpec);

            // Act
            var composite = new OrElseSpecification <Entity>(
                leftAdHocSpecification,
                rightAdHocSpecification);

            // Assert
            Assert.IsNotNull(composite.SatisfiedBy());
            Assert.AreSame(leftAdHocSpecification, composite.LeftSideSpecification);
            Assert.AreSame(rightAdHocSpecification, composite.RightSideSpecification);
        }
예제 #3
0
        public void OrSpecification_Creation_Test()
        {
            //Arrange
            DirectSpecification<Entity> leftAdHocSpecification;
            DirectSpecification<Entity> rightAdHocSpecification;

            Expression<Func<Entity, bool>> leftSpec = s => s.Id == 0;
            Expression<Func<Entity, bool>> rightSpec = s => s.SampleProperty.Length > 2;

            leftAdHocSpecification = new DirectSpecification<Entity>(leftSpec);
            rightAdHocSpecification = new DirectSpecification<Entity>(rightSpec);

            //Act
            OrElseSpecification<Entity> composite = new OrElseSpecification<Entity>(leftAdHocSpecification, rightAdHocSpecification);

            //Assert
            Assert.IsNotNull(composite.SatisfiedBy());
            Assert.AreSame(leftAdHocSpecification, composite.LeftSideSpecification);
            Assert.AreSame(rightAdHocSpecification, composite.RightSideSpecification);
        }
예제 #4
0
        public void OrSpecification_Creation_NullRightSpecThrowArgumentNullException_Test()
        {
            //Arrange
            DirectSpecification<Entity> leftAdHocSpecification;
            DirectSpecification<Entity> rightAdHocSpecification;

            Expression<Func<Entity, bool>> rightSpec = s=>s.Id==0;
            Expression<Func<Entity, bool>> leftSpec = s => s.SampleProperty.Length > 2;

            leftAdHocSpecification = new DirectSpecification<Entity>(leftSpec);
            rightAdHocSpecification = new DirectSpecification<Entity>(rightSpec);

            //Act
            OrElseSpecification<Entity> composite = new OrElseSpecification<Entity>(leftAdHocSpecification, null);

        }