Пример #1
0
        public string RunTest(ref TestMethodTask task)
        {
            var fixieAssembly = Assembly.LoadFrom(fixieAssemblyPath);
            var runnerType    = fixieAssembly.GetExportedTypes().First(t => t.FullName = "Fixie.Runner");

            var listener = new FixieListener();
            var runner   = (dynamic)Activator.CreateInstance(runnerType)

                           var server =

                var listener = new FixieListener(server, this, task.IsParameterized);
            var runner = new Runner(listener);

            var testAssembly = Assembly.LoadFile(task.AssemblyLocation);
            var testClass    = testAssembly.GetType(task.TypeName);
            var testMethod   = testClass.GetMethod(task.MethodName);

            var outcome = runner.RunMethod(testAssembly, testMethod);

            if (task.IsParameterized)
            {
                TaskResult result = outcome.Failed == 0 ? TaskResult.Success : TaskResult.Error;
                task.CloseTask(result, task.MethodName);
            }
        }
        private void RunMethodTask(TestMethodTask task)
        {
            var appDomain = AppDomain.CurrentDomain;

            appDomain.AssemblyResolve += OnAssemblyResolve;

            try
            {
                Directory.SetCurrentDirectory(Path.GetDirectoryName(task.AssemblyLocation));

                var fixieAssemblyPath = Path.Combine(Path.GetDirectoryName(task.AssemblyLocation), "Fixie.dll");
                if (!IsRequiredFixieVersion(fixieAssemblyPath, RequiredFixieVersion.RequiredVersion))
                {
                    task.CloseTask(
                        TaskResult.Inconclusive,
                        string.Format("Test runner required Fixie version {0}", RequiredFixieVersion.RequiredVersion));
                    return;
                }

                var listener = new FixieListener(server, this, task.IsParameterized);
                var runner   = new Runner(listener);

                var testAssembly = Assembly.LoadFile(task.AssemblyLocation);
                var testClass    = testAssembly.GetType(task.TypeName);
                var testMethod   = testClass.GetMethod(task.MethodName);

                var outcome = runner.RunMethod(testAssembly, testMethod);
                if (task.IsParameterized)
                {
                    TaskResult result = outcome.Failed == 0 ? TaskResult.Success : TaskResult.Error;
                    task.CloseTask(result, task.MethodName);
                }
            }
            catch (Exception ex)
            {
                task.CloseTask(TaskResult.Exception, ex.Message);
                FinishCurrentTask(task);
            }
            finally
            {
                appDomain.AssemblyResolve -= OnAssemblyResolve;
            }
        }
        public string RunTest(ref TestMethodTask task)
        {
            var fixieAssembly = Assembly.LoadFrom(fixieAssemblyPath);
            var runnerType = fixieAssembly.GetExportedTypes().First(t => t.FullName = "Fixie.Runner");

            var listener = new FixieListener();
            var runner = (dynamic)Activator.CreateInstance(runnerType)

            var server =

            var listener = new FixieListener(server, this, task.IsParameterized);
            var runner = new Runner(listener);

            var testAssembly = Assembly.LoadFile(task.AssemblyLocation);
            var testClass = testAssembly.GetType(task.TypeName);
            var testMethod = testClass.GetMethod(task.MethodName);

            var outcome = runner.RunMethod(testAssembly, testMethod);
            if (task.IsParameterized)
            {
                TaskResult result = outcome.Failed == 0 ? TaskResult.Success : TaskResult.Error;
                task.CloseTask(result, task.MethodName);
            }
        }
 private bool IsParentMethodTask(TestMethodTask methodTask, TestCaseTask caseTask)
 {
     return methodTask.AssemblyLocation == caseTask.AssemblyLocation && methodTask.TypeName == caseTask.TypeName
            && methodTask.MethodName == caseTask.MethodName;
 }
Пример #5
0
 private bool IsParentMethodTask(TestMethodTask methodTask, TestCaseTask caseTask)
 {
     return(methodTask.AssemblyLocation == caseTask.AssemblyLocation && methodTask.TypeName == caseTask.TypeName &&
            methodTask.MethodName == caseTask.MethodName);
 }