Beispiel #1
0
        private IEnumerable <TestMethodInstance> GetNotDoneTests(Assembly a, NotDoneFilter notDoneFilter, Configuration config)
        {
            var finder         = new TestFinder(a, notDoneFilter);
            var methodExploder = finder.FindAllMethods().Select(method => new WebTestMethodExploder(method, config));

            return(methodExploder.SelectMany(x => x.Explode()));
        }
Beispiel #2
0
        public void NoTests()
        {
            var a       = Assembly.GetExecutingAssembly();
            var finder  = new TestFinder(a, test0);
            var methods = finder.FindAllMethods();

            Assert.AreEqual(0, methods.Count());
        }
Beispiel #3
0
        public void FilterByAssemblyWithoutDll()
        {
            var a       = Assembly.GetExecutingAssembly();
            var finder  = new TestFinder(a, test1);
            var methods = finder.FindAllMethods();

            Assert.AreEqual(2, methods.Count());
        }
Beispiel #4
0
        private void LoadTests(Assembly assembly, IFilter <MethodInfo> methodFilter)
        {
            var beforeSuiteWebTestFinder = new BeforeSuiteWebTestFinder(assembly, new BeforeSuiteWebTestMethodFilter());
            IEnumerable <MethodInfo> beforeSuiteWebTestMethods = beforeSuiteWebTestFinder.FindAllMethods();
            var finder = new TestFinder(assembly, methodFilter);
            IEnumerable <MethodInfo> methods = finder.FindAllMethods();
            var afterSuiteWebTestFinder      = new AfterSuiteWebTestFinder(assembly, new AfterSuiteWebTestMethodFilter());
            IEnumerable <MethodInfo> afterSuiteWebTestMethods = afterSuiteWebTestFinder.FindAllMethods();

            //_befores = finder.GetSuiteMethods(methods, typeof(BeforeSuiteAttribute));
            //_afters = finder.GetSuiteMethods(methods, typeof(AfterSuiteAttribute));

            foreach (var exploder in beforeSuiteWebTestMethods.Select(beforesuiteWebTestMethod => new BeforeSuiteWebTestMethodExploder(beforesuiteWebTestMethod, _config)))
            {
                try
                {
                    var instances = exploder.ExplodeBeforeSuiteWebTest();
                    foreach (var instance in instances)
                    {
                        _beforesuiteWebTestMethodQueue.Enqueue(instance);
                    }
                }
                catch (RunnerException e)
                {
                    var instance = exploder.GetSkippedInstance(e);
                    _beforesuiteWebTestMethodQueue.Enqueue(instance);
                }
            }

            foreach (var exploder in methods.Select(method => new WebTestMethodExploder(method, _config)))
            {
                try
                {
                    var instances = exploder.Explode();
                    foreach (var instance in instances)
                    {
                        _queue.Enqueue(instance);
                    }
                }
                catch (RunnerException e)
                {
                    var instance = exploder.GetSkippedInstance(e);
                    _queue.Enqueue(instance);
                }
            }

            foreach (var exploder in afterSuiteWebTestMethods.Select(afterSuiteWebTestMethod => new AfterSuiteWebTestMethodExploder(afterSuiteWebTestMethod, _config)))
            {
                try
                {
                    var instances = exploder.ExplodeAfterSuiteWebTest();
                    foreach (var instance in instances)
                    {
                        _afterSuiteWebTestMethodQueue.Enqueue(instance);
                    }
                }
                catch (RunnerException e)
                {
                    var instance = exploder.GetSkippedInstance(e);
                    _afterSuiteWebTestMethodQueue.Enqueue(instance);
                }
            }
        }