// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt) using ICSharpCode.CodeCoverage; using NUnit.Framework; using System; using System.IO; namespace ICSharpCode.CodeCoverage.Tests.Coverage { [TestFixture] public class ModuleVisitedSequencePointsTestFixture : CodeCoverageResultsTestsBase { [TestFixtureSetUp] public void SetUpFixture() { string xml = "\r\n" + "\t\r\n" + "\t\t\r\n" + "\t\t\tC:\\Projects\\Test\\Foo.Tests\\bin\\Foo.Tests.DLL\r\n" + "\t\t\tFoo.Tests\r\n" + "\t\t\t\r\n" + "\t\t\t\t\r\n" + "\t\t\t\t\r\n" + "\t\t\t\r\n" + "\t\t\t\r\n" + "\t\t\t\t\r\n" + "\t\t\t\t\tFoo.Tests.FooTestFixture1\r\n" + "\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t100663297\r\n" + "\t\t\t\t\t\t\tSystem.Void Foo.Tests.FooTestFixture::SimpleTest1()\r\n" + "\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\r\n" + "\t\t\t\t\r\n" + "\t\t\t\t\r\n" + "\t\t\t\t\tFoo.Tests.FooTestFixture2\r\n" + "\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t100663297\r\n" + "\t\t\t\t\t\t\tSystem.Void Foo.Tests.FooTestFixture2::SimpleTest2()\r\n" + "\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\r\n" + "\t\t\t\t\r\n" + "\t\t\t\r\n" + "\t\t\r\n" + "\t\t\r\n" + "\t\t\tC:\\Projects\\Test\\Foo.Tests\\bin\\Bar.Tests.DLL\r\n" + "\t\t\tBar.Tests\r\n" + "\t\t\t\r\n" + "\t\t\t\t\r\n" + "\t\t\t\r\n" + "\t\t\t\r\n" + "\t\t\t\t\r\n" + "\t\t\t\t\tFoo.Tests.FooTestFixture3\r\n" + "\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t100663297\r\n" + "\t\t\t\t\t\t\tSystem.Void Foo.Tests.BarTestFixture::.SimpleTest3()\r\n" + "\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\t\r\n" + "\t\t\t\t\t\r\n" + "\t\t\t\t\r\n" + "\t\t\t\r\n" + "\t\t\r\n" + "\t\r\n" + ""; base.CreateCodeCoverageResults(xml); } CodeCoverageModule FooModule { get { return FirstModule; } } CodeCoverageModule BarModule { get { return SecondModule; } } [Test] public void ModuleGetVisitedCodeLength_FooModule_ReturnsTotalLengthOfAllVisitedMethodSequencePoints() { int length = FooModule.GetVisitedCodeLength(); int expectedLength = 9; Assert.AreEqual(expectedLength, length); } [Test] public void ModuleGetUnvisitedCodeLength_FooModule_ReturnsTotalLengthOfAllNonVisitedMethodSequencePoints() { int length = FooModule.GetUnvisitedCodeLength(); int expectedLength = 3; Assert.AreEqual(expectedLength, length); } [Test] public void ModuleGetVisitedCodeLength_BarModule_ReturnsTotalLengthOfAllVisitedMethodSequencePoints() { int length = BarModule.GetVisitedCodeLength(); int expectedLength = 11; Assert.AreEqual(expectedLength, length); } [Test] public void ModuleGetUnvisitedCodeLength_BarModule_ReturnsTotalLengthOfAllNonVisitedMethodSequencePoints() { int length = BarModule.GetUnvisitedCodeLength(); int expectedLength = 4; Assert.AreEqual(expectedLength, length); } [Test] public void ModulesCount_TwoModulesInCodeCoverageResults_ReturnsTwo() { int count = results.Modules.Count; Assert.AreEqual(2, count); } } }