コード例 #1
0
        /// <summary>
        /// Create a Model Builder for a module
        /// </summary>
        /// <param name="modulePath"></param>
        /// <param name="moduleName"></param>
        /// <returns></returns>
        public IInstrumentationModelBuilder CreateModelBuilder(string modulePath, string moduleName)
        {
            var manager = new CecilSymbolManager(_commandLine, _filter, _logger, _trackedMethodStrategyManager);

            manager.Initialise(modulePath, moduleName);
            return(new InstrumentationModelBuilder(manager));
        }
コード例 #2
0
        public void Setup()
        {
            _mockCommandLine = new Mock <ICommandLine>();
            _mockFilter      = new Mock <IFilter>();
            _mockLogger      = new Mock <ILog>();

            _location = Path.Combine(Environment.CurrentDirectory, "Mdb", "OpenCover.Test.dll");

            _reader = new CecilSymbolManager(_mockCommandLine.Object, _mockFilter.Object, _mockLogger.Object, null);
            _reader.Initialise(_location, "OpenCover.Test");
        }
コード例 #3
0
        public void GetTrackedMethods_NoTrackedMethods_When_NoPDB()
        {
            // arrange
            _reader = new CecilSymbolManager(_mockCommandLine.Object, _mockFilter.Object, _mockLogger.Object, _mockManager.Object);
            _reader.Initialise(string.Empty, "OpenCover.Test");

            // act
            var methods = _reader.GetTrackedMethods();

            // assert
            Assert.IsNull(methods);
        }
コード例 #4
0
        public void GetTrackedMethods_NoTrackedMethods_When_StrategiesFindNothing()
        {
            // arrange
            _reader = new CecilSymbolManager(_mockCommandLine.Object, _mockFilter.Object, _mockLogger.Object, _mockManager.Object);
            _reader.Initialise(_location, "OpenCover.Test");

            // act
            var methods = _reader.GetTrackedMethods();

            // assert
            Assert.IsFalse(methods.Any());
        }
コード例 #5
0
        public void Setup()
        {
            _mockCommandLine = new Mock <ICommandLine>();
            _mockFilter      = new Mock <IFilter>();
            _mockLogger      = new Mock <ILog>();

            var assemblyPath = Path.GetDirectoryName(typeof(Microsoft.Practices.ServiceLocation.ServiceLocator).Assembly.Location);

            _location = Path.Combine(assemblyPath, "Mdb", "Microsoft.Practices.ServiceLocation.dll");

            _reader = new CecilSymbolManager(_mockCommandLine.Object, _mockFilter.Object, _mockLogger.Object, null);
            _reader.Initialise(_location, "Microsoft.Practices.ServiceLocation");
        }
コード例 #6
0
        public void GetTrackedMethods_Prepends_TargetDir_When_Assembly_NotFound()
        {
            // arrange
            _reader = new CecilSymbolManager(_mockCommandLine.Object, _mockFilter.Object, _mockLogger.Object, _mockManager.Object);
            _reader.Initialise(@"c:\OpenCover.Test.dll", "OpenCover.Test");
            _mockCommandLine.SetupGet(x => x.TargetDir).Returns(@"c:\temp");

            // act
            var methods = _reader.GetTrackedMethods();

            // assert
            _mockManager.Verify(x => x.GetTrackedMethods(@"c:\temp\OpenCover.Test.dll"));
        }
コード例 #7
0
        public void Setup()
        {
            _mockCommandLine = new Mock <ICommandLine>();
            _mockFilter      = new Mock <IFilter>();
            _mockLogger      = new Mock <ILog>();

            var assemblyPath = Path.GetDirectoryName(TargetType.Assembly.Location);

            _location = Path.Combine(assemblyPath, "Mdb", TargetAssembly);

            _reader = new CecilSymbolManager(_mockCommandLine.Object, _mockFilter.Object, _mockLogger.Object, null);
            _reader.Initialise(_location, "Unity.ServiceLocation");
        }
コード例 #8
0
        public void SourceAssembly_DisplaysMessage_When_NoPDB()
        {
            // arrange
            _reader = new CecilSymbolManager(_mockCommandLine.Object, _mockFilter.Object, _mockLogger.Object, null);
            _reader.Initialise(string.Empty, "OpenCover.Test");
            _mockLogger.SetupGet(x => x.IsDebugEnabled).Returns(true);

            // act
            var source = _reader.SourceAssembly;

            // assert
            Assert.IsNull(source);
            _mockLogger.Verify(x => x.DebugFormat(It.IsAny <string>(), It.IsAny <string>()), Times.Once());
        }
コード例 #9
0
        public void Setup()
        {
            _mockCommandLine = new Mock <ICommandLine>();
            _mockFilter      = new Mock <IFilter>();
            _mockLogger      = new Mock <ILog>();
            _mockManager     = new Mock <ITrackedMethodStrategyManager>();

            var assemblyPath = Path.GetDirectoryName(GetType().Assembly.Location);

            _location = Path.Combine(assemblyPath, "OpenCover.Test.dll");

            _reader = new CecilSymbolManager(_mockCommandLine.Object, _mockFilter.Object, _mockLogger.Object, null);
            _reader.Initialise(_location, "OpenCover.Test");
        }
コード例 #10
0
        public void GetTrackedMethods_TrackedMethods_When_StrategiesMatch()
        {
            // arrange
            _reader = new CecilSymbolManager(_mockCommandLine.Object, _mockFilter.Object, _mockLogger.Object, _mockManager.Object);
            _reader.Initialise(_location, "OpenCover.Test");

            _mockManager.Setup(x => x.GetTrackedMethods(It.IsAny <string>()))
            .Returns(new[] { new TrackedMethod() });

            // act
            var methods = _reader.GetTrackedMethods();

            // assert
            Assert.AreEqual(1, methods.Count());
        }
コード例 #11
0
        public void GetTrackedMethods_NoTrackedMethods_When_NoPDBFound()
        {
            // arrange
            _mockSymbolFileHelper
            .Setup(x => x.GetSymbolFileLocations(It.IsAny <string>(), _mockCommandLine.Object))
            .Returns(new List <string>());
            _reader = new CecilSymbolManager(_mockCommandLine.Object, _mockFilter.Object, _mockLogger.Object, _mockManager.Object, _mockSymbolFileHelper.Object);
            _reader.Initialise(string.Empty, "OpenCover.Test");

            // act
            var methods = _reader.GetTrackedMethods();

            // assert
            Assert.IsNull(methods);
        }
コード例 #12
0
        public void Setup()
        {
            _mockCommandLine      = new Mock <ICommandLine>();
            _mockFilter           = new Mock <IFilter>();
            _mockLogger           = new Mock <ILog>();
            _mockSymbolFileHelper = new Mock <ISymbolFileHelper>();

            var assemblyPath = Path.GetDirectoryName(GetType().Assembly.Location) ?? Directory.GetCurrentDirectory();

            _location = Path.Combine(assemblyPath, "OpenCover.Mono.dll");

            _mockSymbolFileHelper
            .Setup(x => x.GetSymbolFileLocations(It.IsAny <string>(), _mockCommandLine.Object))
            .Returns(new [] { $"{_location}.mdb" });

            _reader = new CecilSymbolManager(_mockCommandLine.Object, _mockFilter.Object, _mockLogger.Object, null, _mockSymbolFileHelper.Object);
            _reader.Initialise(_location, "Unity.ServiceLocation");
        }
コード例 #13
0
        public void Setup()
        {
            _mockCommandLine      = new Mock <ICommandLine>();
            _mockFilter           = new Mock <IFilter>();
            _mockLogger           = new Mock <ILog>();
            _mockManager          = new Mock <ITrackedMethodStrategyManager>();
            _mockSymbolFileHelper = new Mock <ISymbolFileHelper>();

            var assemblyPath = Path.GetDirectoryName(GetType().Assembly.Location);

            _location = Path.Combine(assemblyPath, "OpenCover.Test.dll");

            _mockSymbolFileHelper
            .Setup(x => x.GetSymbolFileLocations(It.IsAny <string>(), _mockCommandLine.Object))
            .Returns(new [] { Path.Combine(assemblyPath, "OpenCover.Test.pdb") });

            _reader = new CecilSymbolManager(_mockCommandLine.Object, _mockFilter.Object, _mockLogger.Object, null, _mockSymbolFileHelper.Object);
            _reader.Initialise(_location, "OpenCover.Test");
        }
コード例 #14
0
        public void GetTrackedMethods_Prepends_TargetDir_When_Assembly_NotFound()
        {
            // arrange
            var assemblyPath = Path.GetDirectoryName(GetType().Assembly.Location);

            _mockCommandLine.SetupGet(x => x.TargetDir).Returns(@"c:\temp");
            _mockCommandLine.SetupGet(x => x.SearchDirs).Returns(new [] { assemblyPath });

            _reader = new CecilSymbolManager(_mockCommandLine.Object, _mockFilter.Object, _mockLogger.Object, _mockManager.Object);
            _reader.Initialise(@"c:\OpenCover.Test.dll", "OpenCover.Test");
            _mockCommandLine.SetupGet(x => x.TargetDir).Returns(@"c:\temp");

            // act
            var methods = _reader.GetTrackedMethods();

            // assert
            Assert.IsNotNull(methods);
            _mockManager.Verify(x => x.GetTrackedMethods(@"c:\temp\OpenCover.Test.dll"));
        }