コード例 #1
0
ファイル: Executor.cs プロジェクト: edwardt/DreamNJasmine
            public void RunTests(string assemblyName, string[] testNames, string explictlyIncluding, ITestResultListener listener)
            {
                using(var nativeTestFactory = RunTestDiscovery(Assembly.Load(assemblyName), t => true))
                {
                    foreach(var name in testNames)
                    {
                        var testContext = nativeTestFactory.Contexts[name];

                        var ignoreReason = nativeTestFactory.GetIgnoreReason(name, explictlyIncluding);

                        listener.NotifyStart(testContext.Name.FullName);

                        List<string> traceMessages = new List<string>();

                        if (ignoreReason == null)
                        {
                            var result = SpecificationRunner.RunTest(testContext, traceMessages);

                            listener.NotifyEnd(testContext.Name.FullName, result);
                        }
                        else
                        {
                            var result = new TestResultShim();
                            result.SetSkipped(ignoreReason);
                            listener.NotifyEnd(testContext.Name.FullName, result);
                        }
                    }
                }
            }
コード例 #2
0
ファイル: Spec.cs プロジェクト: davidmfoley/bickle
 public void Execute(ITestResultListener listener)
 {
     foreach (ExampleContainer describe in _describes)
     {
         describe.Execute(listener);
     }
 }
コード例 #3
0
ファイル: ListenerWrapper.cs プロジェクト: davidmfoley/bickle
        public static object GetWrapperForTargetType(Type type, ITestResultListener listener, ISpec spec)
        {
            foreach (var source in GetAssemblies(type))
            {
                var wrappedListenerType = source.GetType(typeof(ListenerWrapper).FullName);
                if (wrappedListenerType != null)
                    return Activator.CreateInstance(wrappedListenerType, listener, new ExampleTranslator(spec));
            }

            return null;
        }
コード例 #4
0
        private void ExecuteIgnored(ExampleContainer container, ITestResultListener listener)
        {
            foreach (ExampleContainer exampleContainer in container.ExampleContainers)
            {
                ExecuteIgnored(exampleContainer, listener);
            }

            foreach (Example example in container.Examples)
            {
                listener.Ignored(example);
            }
        }
コード例 #5
0
ファイル: Example.cs プロジェクト: davidmfoley/bickle
 public override void Execute(ITestResultListener listener)
 {
     try
     {
         if (IsIgnored())
         {
             listener.Ignored(this);
             return;
         }
         _action();
         listener.Success(this);
     }
     catch (PendingException)
     {
         listener.Pending(this);
     }
     catch (Exception ex)
     {
         listener.Failed(this, ex);
     }
 }
コード例 #6
0
        public override void Execute(ITestResultListener listener)
        {
            foreach (Example it in Examples)
            {
                foreach (Action before in GetBefores())
                {
                    before();
                }

                it.Execute(listener);

                foreach (Action after in GetAfters())
                {
                    after();
                }
            }

            foreach (ExampleContainer describe in ExampleContainers)
            {
                describe.Execute(listener);
            }
        }
コード例 #7
0
ファイル: SpecWrapper.cs プロジェクト: davidmfoley/bickle
 public void Execute(ITestResultListener listener)
 {
     var wrappedListener = ListenerWrapper.GetWrapperForTargetType(_inner.GetType(),listener, this);
     _inner.InvokeWithReflection("Execute", wrappedListener);
 }
コード例 #8
0
 public void Execute(ITestResultListener listener)
 {
     _inner.InvokeWithReflection("Execute", ListenerWrapper.GetWrapperForTargetType(_inner.GetType(), listener, ContainingSpec));
 }
コード例 #9
0
ファイル: Executor.cs プロジェクト: marwesfur/DreamNJasmine
            public void RunTests(string assemblyName, string[] testNames, string explictlyIncluding, ITestResultListener listener)
            {
                using (var nativeTestFactory = RunTestDiscovery(Assembly.Load(assemblyName), t => true))
                {
                    foreach (var name in testNames)
                    {
                        var testContext = nativeTestFactory.Contexts[name];

                        var ignoreReason = nativeTestFactory.GetIgnoreReason(name, explictlyIncluding);

                        listener.NotifyStart(testContext.Name.FullName);

                        List <string> traceMessages = new List <string>();

                        if (ignoreReason == null)
                        {
                            var result = SpecificationRunner.RunTest(testContext, traceMessages);

                            listener.NotifyEnd(testContext.Name.FullName, result);
                        }
                        else
                        {
                            var result = new TestResultShim();
                            result.SetSkipped(ignoreReason);
                            listener.NotifyEnd(testContext.Name.FullName, result);
                        }
                    }
                }
            }
コード例 #10
0
 public override void Execute(ITestResultListener listener)
 {
     ExecuteIgnored(this, listener);
 }
コード例 #11
0
        public static void RunTests(string dllPath, AppDomainWrapper appDomainWrapper, string[] testNames, string explictlyIncluding, ITestResultListener sink)
        {
            var o = appDomainWrapper.CreateObject <Marshalled.Executor.SpecRunner>("NJasmine.dll");

            o.RunTests(AssemblyName.GetAssemblyName(dllPath).FullName, testNames, explictlyIncluding, sink);
        }
コード例 #12
0
ファイル: ExampleNode.cs プロジェクト: davidmfoley/bickle
 public abstract void Execute(ITestResultListener listener);
コード例 #13
0
        public static void RunTests(string dllPath, AppDomainWrapper appDomainWrapper, string[] testNames, string explictlyIncluding, ITestResultListener sink)
        {
            var o = appDomainWrapper.CreateObject<Marshalled.Executor.SpecRunner>("NJasmine.dll");

            o.RunTests(AssemblyName.GetAssemblyName(dllPath).FullName, testNames, explictlyIncluding, sink);
        }