예제 #1
0
        protected override void FirstInvoke()
        {
            // Init loggers
            //TODO: Use correct logger
            LogMessage(new StartMessage(TestGranularity.TestGroup, _assembly.Name));
            
            if (Provider.HasCapability(UnitTestProviderCapabilities.AssemblySupportsInitializeMethod)
                && _assembly.AssemblyInitializeMethod != null) 
            {
                EnqueueMethodDispatcher(_assembly.AssemblyInitializeMethod);
            }

            // Add all test classes
            foreach (ITestClass testClass in _assembly.GetTestClasses())
            {
                ITestWorkItem test = new TestClassDispatcher(TestHarness, testClass, 
                    _classInstances.GetInstance(testClass.Type), Provider);
                _testClasses.Enqueue(test);
            }

            Enqueue(_testClasses);

            // Assembly cleanup
            if (Provider.HasCapability(UnitTestProviderCapabilities.AssemblySupportsCleanupMethod)
                && _assembly.AssemblyCleanupMethod != null) 
            {
                EnqueueMethodDispatcher(_assembly.AssemblyCleanupMethod);
            }

            Complete += delegate(object sender, EventArgs e)
            {
                LogMessage(new EndMessage(TestGranularity.TestGroup, _assembly.Name));
            };
        }
예제 #2
0
        protected override void FirstInvoke()
        {
            // Init loggers
            //TODO: Use correct logger
            LogMessage(new StartMessage(TestGranularity.TestGroup, _assembly.Name));

            if (Provider.HasCapability(UnitTestProviderCapabilities.AssemblySupportsInitializeMethod) &&
                _assembly.AssemblyInitializeMethod != null)
            {
                EnqueueMethodDispatcher(_assembly.AssemblyInitializeMethod);
            }

            // Add all test classes
            foreach (ITestClass testClass in _assembly.GetTestClasses())
            {
                ITestWorkItem test = new TestClassDispatcher(TestHarness, testClass,
                                                             _classInstances.GetInstance(testClass.Type), Provider);
                _testClasses.Enqueue(test);
            }

            Enqueue(_testClasses);

            // Assembly cleanup
            if (Provider.HasCapability(UnitTestProviderCapabilities.AssemblySupportsCleanupMethod) &&
                _assembly.AssemblyCleanupMethod != null)
            {
                EnqueueMethodDispatcher(_assembly.AssemblyCleanupMethod);
            }

            Complete += delegate(object sender, EventArgs e)
            {
                LogMessage(new EndMessage(TestGranularity.TestGroup, _assembly.Name));
            };
        }