예제 #1
0
        public void GetConstraint_RowCountFiltered_CorrectConstraint()
        {
            var sutXmlStubFactory  = new Mock <Systems.ExecutionXml>();
            var itemXmlStubFactory = new Mock <QueryableXml>();

            itemXmlStubFactory.Setup(i => i.GetQuery()).Returns("query");
            sutXmlStubFactory.Setup(s => s.Item).Returns(itemXmlStubFactory.Object);
            var sutXml = sutXmlStubFactory.Object;

            sutXml.Item = itemXmlStubFactory.Object;

            var ctrXml = new RowCountXml(SettingsXml.Empty);

            ctrXml.Equal  = new EqualXml();
            ctrXml.Filter = new FilterXml();
            ctrXml.Filter.Variables.Add(new VariableXml());
            ctrXml.Equal.Value = "50";

            var builder = new ExecutionRowCountBuilder();

            builder.Setup(sutXml, ctrXml);
            builder.Build();
            var ctr = builder.GetConstraint();

            Assert.That(ctr, Is.InstanceOf <RowCountFilterConstraint>());
            var rowCount = ctr as RowCountFilterConstraint;

            Assert.That(rowCount.Child, Is.InstanceOf <NUnitCtr.EqualConstraint>());
        }
예제 #2
0
        public void GetConstraint_BuildWithResultSet_CorrectConstraint()
        {
            var sutXmlStubFactory  = new Mock <Systems.ExecutionXml>();
            var itemXmlStubFactory = new Mock <QueryableXml>();

            itemXmlStubFactory.Setup(i => i.GetQuery()).Returns("query");
            sutXmlStubFactory.Setup(s => s.Item).Returns(itemXmlStubFactory.Object);
            var sutXml = sutXmlStubFactory.Object;

            sutXml.Item = itemXmlStubFactory.Object;

            var ctrXml = new RowCountXml(SettingsXml.Empty);

            ctrXml.MoreThan       = new MoreThanXml();
            ctrXml.MoreThan.Value = "100";

            var builder = new ExecutionRowCountBuilder();

            builder.Setup(sutXml, ctrXml);
            builder.Build();
            var ctr = builder.GetConstraint();

            Assert.That(ctr, Is.InstanceOf <RowCountConstraint>());
            var rowCount = ctr as RowCountConstraint;

            Assert.That(rowCount.Child, Is.InstanceOf <NUnitCtr.GreaterThanConstraint>());
        }
        public void GetConstraint_PercentageForRowCount_CorrectConstraint()
        {
            var sutXmlStubFactory  = new Mock <Systems.ExecutionXml>();
            var itemXmlStubFactory = new Mock <QueryableXml>();

            itemXmlStubFactory.Setup(i => i.GetQuery()).Returns("query");
            sutXmlStubFactory.Setup(s => s.Item).Returns(itemXmlStubFactory.Object);
            var sutXml = sutXmlStubFactory.Object;

            sutXml.Item = itemXmlStubFactory.Object;

            var ctrXml = new RowCountXml(SettingsXml.Empty);

            ctrXml.Equal       = new EqualXml();
            ctrXml.Equal.Value = "50.4%";
            ctrXml.Filter      = new FilterXml();
            ctrXml.Filter.InternalAliases.Add(new AliasXml());
            ctrXml.Filter.Predicate = new PredicateXml()
            {
                Null = new NullXml(), Name = "myColumn"
            };

            var builder = new ExecutionRowCountBuilder();

            builder.Setup(sutXml, ctrXml);
            builder.Build();
            var ctr = builder.GetConstraint();

            Assert.That(ctr, Is.InstanceOf <RowCountFilterPercentageConstraint>());
            var rowCount = ctr as RowCountFilterPercentageConstraint;

            Assert.That(rowCount.Child, Is.InstanceOf <NUnitCtr.EqualConstraint>());
        }
예제 #4
0
        public void GetConstraint_NonIntegerValueForRowCount_ThrowException()
        {
            var sutXmlStubFactory  = new Mock <Systems.ExecutionXml>();
            var itemXmlStubFactory = new Mock <QueryableXml>();

            itemXmlStubFactory.Setup(i => i.GetQuery()).Returns("query");
            sutXmlStubFactory.Setup(s => s.Item).Returns(itemXmlStubFactory.Object);
            var sutXml = sutXmlStubFactory.Object;

            sutXml.Item = itemXmlStubFactory.Object;

            var ctrXml = new RowCountXml(SettingsXml.Empty);

            ctrXml.MoreThan       = new MoreThanXml();
            ctrXml.MoreThan.Value = "Something";

            var builder = new ExecutionRowCountBuilder();

            builder.Setup(sutXml, ctrXml);
            Assert.Throws <ArgumentException>(delegate { builder.Build(); });
        }