public void Should_ignore_test_assembly()
		{
			_testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly("")).Return(true);
			_testRunner.Stub(t => t.CanHandleTestFor("")).IgnoreArguments().Return(true);
			var message = new AssemblyChangeMessage();
			message.AddFile(new ChangedFile());
			_testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly(null)).IgnoreArguments().Return(true);
			_consumer.Consume(message);
			_testRunner.AssertWasNotCalled(t => t.RunTests(null), t => t.IgnoreArguments());
		}
		public void Should_not_run_tests_for_assemblies_that_runner_doesnt_support()
		{
			_testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly("")).IgnoreArguments().Return(false);
			_testRunner.Stub(t => t.CanHandleTestFor("")).IgnoreArguments().Return(false);
			var message = new AssemblyChangeMessage();
			message.AddFile(new ChangedFile());
			_testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly(null)).IgnoreArguments().Return(true);
			_consumer.Consume(message);
			_testRunner.AssertWasNotCalled(t => t.RunTests(null, null, null), t => t.IgnoreArguments());
		}
 public void Should_run_pre_processors()
 {
     _testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly("")).Return(false);
     _testRunner.Stub(t => t.CanHandleTestFor("")).IgnoreArguments().Return(true);
     var message = new AssemblyChangeMessage();
     message.AddFile(new ChangedFile());
     _testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly(null)).IgnoreArguments().Return(true);
     _consumer.Consume(message);
     _preProcessor.AssertWasCalled(p => p.PreProcess(null), p => p.IgnoreArguments());
 }
		public void Should_run_tests()
		{
			_testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly(null)).Return(false);
			_testRunner.Stub(t => t.CanHandleTestFor("")).IgnoreArguments().Return(true);
            _preProcessor.Stub(p => p.PreProcess(null)).IgnoreArguments().Return(new RunInfo[] { new RunInfo(new AutoTest.Core.Caching.Projects.Project("", null)) }); 
			var message = new AssemblyChangeMessage();
			message.AddFile(new ChangedFile());
			_testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly(null)).IgnoreArguments().Return(true);
			_consumer.Consume(message);
			_testRunner.AssertWasCalled(t => t.RunTests(null), t => t.IgnoreArguments());
		}
Beispiel #5
0
        public void Should_ignore_test_assembly()
        {
            _testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly("")).Return(true);
            _testRunner.Stub(t => t.CanHandleTestFor("")).IgnoreArguments().Return(true);
            var message = new AssemblyChangeMessage();

            message.AddFile(new ChangedFile());
            _testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly(null)).IgnoreArguments().Return(true);
            _consumer.Consume(message);
            _testRunner.AssertWasNotCalled(t => t.RunTests(null, null, null), t => t.IgnoreArguments());
        }
Beispiel #6
0
        public void Should_run_pre_processors()
        {
            _testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly("")).Return(false);
            _testRunner.Stub(t => t.CanHandleTestFor("")).IgnoreArguments().Return(true);
            var message = new AssemblyChangeMessage();

            message.AddFile(new ChangedFile());
            _testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly(null)).IgnoreArguments().Return(true);
            _consumer.Consume(message);
            _preProcessor.AssertWasCalled(p => p.PreProcess(null), p => p.IgnoreArguments());
        }
Beispiel #7
0
        public void Should_run_tests()
        {
            _testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly(null)).Return(false);
            _testRunner.Stub(t => t.CanHandleTestFor("")).IgnoreArguments().Return(true);
            _preProcessor.Stub(p => p.PreProcess(null)).IgnoreArguments().Return(new PreProcessedTesRuns(null, new RunInfo[] { new RunInfo(new AutoTest.Core.Caching.Projects.Project("", null)) }));
            var message = new AssemblyChangeMessage();

            message.AddFile(new ChangedFile());
            _testAssemblyValidator.Stub(t => t.ShouldNotTestAssembly(null)).IgnoreArguments().Return(true);
            _consumer.Consume(message);
            _testRunner.AssertWasCalled(t => t.RunTests(null, null, null), t => t.IgnoreArguments());
        }
Beispiel #8
0
        public static void ConsumingAssemblyChangeMessage(AssemblyChangeMessage message)
        {
            if (_isDisabled)
            {
                return;
            }
            var builder = new StringBuilder();

            builder.AppendLine("Consuming assembly changes for:");
            foreach (var file in message.Files)
            {
                builder.AppendLine(string.Format("    {0}", file.FullName));
            }
            writeDebug(builder.ToString());
        }
        public void Consume(FileChangeMessage message)
        {
            if (_configuration.Providers != ".NET")
            {
                return;
            }

            Debug.WriteDebug("Consuming filechange through BinaryFileChangeConsumer");
            var assemblyFiles = new List <ChangedFile>();

            foreach (var file in message.Files)
            {
                if (file.FullName.ToLower().Contains(string.Format("{0}obj{0}", Path.DirectorySeparatorChar)))
                {
                    continue;
                }
                if (file.Extension.ToLower().Equals(".exe"))
                {
                    assemblyFiles.Add(file);
                }
                if (file.Extension.ToLower().Equals(".dll"))
                {
                    assemblyFiles.Add(file);
                }
            }

            if (assemblyFiles.Count == 0)
            {
                return;
            }

            var files        = new List <int>();
            var distinctList = new AssemblyChangeMessage();

            foreach (var file in assemblyFiles)
            {
                var id = _assemblyIdBuilder.GetAssemblyIdentifier(file.FullName);
                if (doesNotContain(id, files))
                {
                    files.Add(id);
                    distinctList.AddFile(file);
                }
            }
            _bus.Publish(new RunStartedMessage(distinctList.Files));
            _bus.Publish(distinctList);
        }