Exemple #1
0
    public void Single_feature_on_off_and_feature_on_and_feature_off()
    {
        var attr = new FeatureTestMethodAttribute(onOff: "A", on: "B", off: "C");

        var testMethod = new MockTestMethod();

        attr.Execute(testMethod);

        Assert.AreEqual(2, testMethod.Executions.Count);

        Assert.AreEqual(3, testMethod.Executions[0].Features.Count);
        Assert.AreEqual("A", testMethod.Executions[0].Features[0].Name);
        Assert.AreEqual(false, testMethod.Executions[0].Features[0].IsOn);
        Assert.AreEqual("B", testMethod.Executions[0].Features[1].Name);
        Assert.AreEqual(true, testMethod.Executions[0].Features[1].IsOn);
        Assert.AreEqual("C", testMethod.Executions[0].Features[2].Name);
        Assert.AreEqual(false, testMethod.Executions[0].Features[2].IsOn);

        Assert.AreEqual(3, testMethod.Executions[1].Features.Count);
        Assert.AreEqual("A", testMethod.Executions[1].Features[0].Name);
        Assert.AreEqual(true, testMethod.Executions[1].Features[0].IsOn);
        Assert.AreEqual("B", testMethod.Executions[1].Features[1].Name);
        Assert.AreEqual(true, testMethod.Executions[1].Features[1].IsOn);
        Assert.AreEqual("C", testMethod.Executions[1].Features[2].Name);
        Assert.AreEqual(false, testMethod.Executions[1].Features[2].IsOn);
    }
Exemple #2
0
    public void Single_feature_on_off_typed_multiple_onvalues()
    {
        var attr = new FeatureTestMethodAttribute(onOff: "A");

        var testData = new FeatureTestValueAttribute("A", onValues: new object[] { "On1", "On2" }, offValue: "Off");

        var testMethod = new MockTestMethod(new List <Attribute> {
            testData
        });

        attr.Execute(testMethod);

        Assert.AreEqual(3, testMethod.Executions.Count);

        Assert.AreEqual(false, testMethod.Executions[0].Features[0].IsOn);
        Assert.AreEqual("On1", testMethod.Executions[0].Features[0].OnValue);
        Assert.AreEqual("Off", testMethod.Executions[0].Features[0].OffValue);

        Assert.AreEqual(true, testMethod.Executions[1].Features[0].IsOn);
        Assert.AreEqual("On1", testMethod.Executions[1].Features[0].OnValue);
        Assert.AreEqual("Off", testMethod.Executions[1].Features[0].OffValue);

        Assert.AreEqual(true, testMethod.Executions[2].Features[0].IsOn);
        Assert.AreEqual("On2", testMethod.Executions[2].Features[0].OnValue);
        Assert.AreEqual("Off", testMethod.Executions[2].Features[0].OffValue);
    }
Exemple #3
0
    public void Single_feature_on_off_typed()
    {
        var attr = new FeatureTestMethodAttribute(onOff: "A");

        var testData = new FeatureTestValueAttribute("A", onValue: "On", offValue: "Off");

        var testMethod = new MockTestMethod(new List <Attribute> {
            testData
        });

        attr.Execute(testMethod);

        Assert.AreEqual(2, testMethod.Executions.Count);

        Assert.AreEqual("A", testMethod.Executions[0].Features[0].Name);
        Assert.AreEqual(false, testMethod.Executions[0].Features[0].IsOn);
        Assert.AreEqual("On", testMethod.Executions[0].Features[0].OnValue);
        Assert.AreEqual("Off", testMethod.Executions[0].Features[0].OffValue);
    }
Exemple #4
0
        protected override void Before_all_tests()
        {
            base.Before_all_tests();

            var mockTestMethod = new MockTestMethod();
            var mockTestClass  = new MockTestClass();

            var scenarioResult = new ScenarioResult(
                mockTestMethod,
                mockTestClass,
                TestOutcome.Passed,
                null);

            _logMessage = new LogMessage(LogMessageType.TestResult);
            _logMessage.Decorators.Add(UnitTestLogDecorator.IsUnitTestMessage, true);
            _logMessage.Decorators.Add(LogDecorator.NameProperty, "some_test_method_name_here");
            _logMessage.Decorators.Add(LogDecorator.TestGranularity, TestGranularity.TestScenario);
            _logMessage.Decorators.Add(UnitTestLogDecorator.ScenarioResult, scenarioResult);
            _logMessage.Decorators.Add(UnitTestLogDecorator.TestMethodMetadata, mockTestMethod);
            _logMessage.Decorators.Add(UnitTestLogDecorator.TestClassMetadata, mockTestClass);
            _logMessage.Decorators.Add(LogDecorator.TestOutcome, TestOutcome.Passed);
        }
Exemple #5
0
    public void Two_features_on_off()
    {
        var attr = new FeatureTestMethodAttribute(onOff: "A,B");

        var testMethod = new MockTestMethod();

        attr.Execute(testMethod);

        Assert.AreEqual(4, testMethod.Executions.Count);

        Assert.AreEqual(2, testMethod.Executions[0].Features.Count);
        Assert.AreEqual("A", testMethod.Executions[0].Features[0].Name);
        Assert.AreEqual(false, testMethod.Executions[0].Features[0].IsOn);
        Assert.AreEqual(true, testMethod.Executions[0].Features[0].OnValue);
        Assert.AreEqual(false, testMethod.Executions[0].Features[0].OffValue);
        Assert.AreEqual("B", testMethod.Executions[0].Features[1].Name);
        Assert.AreEqual(false, testMethod.Executions[0].Features[1].IsOn);
        Assert.AreEqual(true, testMethod.Executions[0].Features[1].OnValue);
        Assert.AreEqual(false, testMethod.Executions[0].Features[1].OffValue);

        Assert.AreEqual(2, testMethod.Executions[1].Features.Count);
        Assert.AreEqual("A", testMethod.Executions[1].Features[0].Name);
        Assert.AreEqual(true, testMethod.Executions[1].Features[0].IsOn);
        Assert.AreEqual("B", testMethod.Executions[1].Features[1].Name);
        Assert.AreEqual(false, testMethod.Executions[1].Features[1].IsOn);

        Assert.AreEqual(2, testMethod.Executions[2].Features.Count);
        Assert.AreEqual("A", testMethod.Executions[2].Features[0].Name);
        Assert.AreEqual(false, testMethod.Executions[2].Features[0].IsOn);
        Assert.AreEqual("B", testMethod.Executions[2].Features[1].Name);
        Assert.AreEqual(true, testMethod.Executions[2].Features[1].IsOn);

        Assert.AreEqual(2, testMethod.Executions[3].Features.Count);
        Assert.AreEqual("A", testMethod.Executions[3].Features[0].Name);
        Assert.AreEqual(true, testMethod.Executions[3].Features[0].IsOn);
        Assert.AreEqual("B", testMethod.Executions[3].Features[1].Name);
        Assert.AreEqual(true, testMethod.Executions[3].Features[1].IsOn);
    }