public void TestResultPropertyCanBeSetAndDoesNotInvokePropertyChangedEventIfSetValueIsSameAsCurrentValue( [Values] bool withResult, [Values] bool withTest) { int invocationCount = 0; NUnitRunner runner = new NUnitRunner("runner-name"); TestSuite suite = new TestSuite("suite-name"); INUnitTestResult result = withResult ? new NUnitTestResult(new TestSuiteResult(suite)) : null; ITest test = withTest ? suite : null; TestsViewModel model = new TestsViewModel(runner, test); model.Result = result; model.PropertyChanged += (s, a) => { invocationCount++; }; Assert.AreEqual(result, model.Result); Assert.AreEqual(0, invocationCount); model.Result = result; Assert.AreEqual(result, model.Result); Assert.AreEqual(test, model.Test); Assert.AreEqual(0, invocationCount); }
public void TestHasResultPropertyReturnsIfTestHasResult([Values] bool hasResult) { TestSuite suite = new TestSuite("suite-name"); INUnitTestResult result = hasResult ? new NUnitTestResult(new TestSuiteResult(suite)) : null; TestsViewModel test = new TestsViewModel(v_Runner, null); test.Result = result; Assert.AreEqual(hasResult, test.HasResult); }
public void Write(INUnitTestResult testResult) { if (testResult == null) { throw new ArgumentNullException("testResult"); } Directory.CreateDirectory(OutputFolderPath); Write(testResult.XmlDocument); }
public void TestResultPropertyCanBeSetAndInvokesPropertyChangedEventIfSetValueIsNotSameAsCurrentValue( [Values] bool withResult, [Values] bool isChangedEventNull) { object sender = null; PropertyChangedEventArgs args = null; int invocationCount = 0; int expectedCount = isChangedEventNull ? 0 : 1; NUnitRunner runner = new NUnitRunner("runner-name"); TestSuite test = new TestSuite("suite-name"); INUnitTestResult result = withResult ? null : new NUnitTestResult(new TestSuiteResult(test)); TestsViewModel model = new TestsViewModel(runner, test, result); INUnitTestResult initialResult = withResult ? new NUnitTestResult(new TestSuiteResult(new TestSuite("suite-name2"))) : null; model.Result = initialResult; IList <string> changedProps = new List <string>(); if (!isChangedEventNull) { model.PropertyChanged += (s, a) => { changedProps.Add(a.PropertyName); if (a.PropertyName.Equals("Result")) { sender = s; args = a; invocationCount++; } }; } Assert.AreEqual(initialResult, model.Result); Assert.AreEqual(0, invocationCount); model.Result = result; Assert.AreEqual(result, model.Result); Assert.AreEqual(test, model.Test); Assert.AreEqual(expectedCount, invocationCount); if (!isChangedEventNull) { Assert.IsNotNull(sender); Assert.AreSame(model, sender); Assert.IsNotNull(args); Assert.AreEqual("Result", args.PropertyName); CollectionAssert.AreEquivalent(new[] { "Result", "HasResult" }, changedProps); } }