Esempio n. 1
0
        public void Should_Add_AsModelsCollectionRule_When_AsModelsCollection_And_Collection(Specification <MemberClass> itemSpecification)
        {
            var builder = new MemberSpecificationBuilder <object, Collection <MemberClass> >();

            builder.AsModelsCollection(itemSpecification);

            AssertCollectionRuleAdded(builder.Commands, itemSpecification);
        }
Esempio n. 2
0
            public void Should_Add_AsCollectionRule_With_AsModelRuleForItems_When_AsModelsCollection_And_SpecificationFromRepository()
            {
                var builder = new MemberSpecificationBuilder <object, IEnumerable <MemberClass> >();

                builder.AsModelsCollection <object, IEnumerable <MemberClass>, MemberClass>();

                Assert.Single(builder.Commands);
                Assert.IsType <AsCollectionRule <object, MemberClass> >(builder.Commands.Single());

                var command = (AsCollectionRule <object, MemberClass>)builder.Commands.Single();

                Assert.Equal("AsCollection", command.Name);
                Assert.Null(command.RuleSingleError);
                Assert.NotNull(command.MemberValidator);
                Assert.NotNull(command.ItemSpecification);
                Assert.False(command.MemberValidator.IsOptional);

                Assert.Null(((AsModelRule <MemberClass>)command.MemberValidator.Rules.Single()).Specification);
                Assert.Null(((AsModelRule <MemberClass>)command.MemberValidator.Rules.Single()).SpecificationId);
            }
Esempio n. 3
0
            public void Should_Add_AsCollectionRule_With_AsModelRuleForItems_When_AsModelsCollection_And_SpecificationDefined()
            {
                var builder = new MemberSpecificationBuilder <object, IEnumerable <MemberClass> >();

                var itemModelSpecification = new Specification <MemberClass>(x => x);

                builder.AsModelsCollection <object, IEnumerable <MemberClass>, MemberClass>(itemModelSpecification);

                Assert.Single(builder.Commands);
                Assert.IsType <AsCollectionRule <object, MemberClass> >(builder.Commands.Single());

                var command = (AsCollectionRule <object, MemberClass>)builder.Commands.Single();

                Assert.Equal("AsCollection", command.Name);
                Assert.Null(command.RuleSingleError);
                Assert.NotNull(command.ItemSpecification);
                Assert.False(command.MemberValidator.IsOptional);

                Assert.Same(itemModelSpecification, ((AsModelRule <MemberClass>)command.MemberValidator.Rules.Single()).Specification);
                Assert.Equal(itemModelSpecification.GetHashCode().ToString(), ((AsModelRule <MemberClass>)command.MemberValidator.Rules.Single()).SpecificationId);
            }