예제 #1
0
파일: Fixture.cs 프로젝트: ncgonz/fixie
 public Fixture(Type testClass, object instance, CaseBehavior caseExecutionBehavior, Case[] cases)
 {
     TestClass = testClass;
     Instance = instance;
     CaseExecutionBehavior = caseExecutionBehavior;
     Cases = cases;
 }
예제 #2
0
 public void CaseFailed(Case @case, Exception[] exceptions)
 {
     using (Foreground.Red)
         Console.WriteLine("Test '{0}' failed: {1}", @case.Name, exceptions.First().GetType().FullName);
     Console.Out.WriteCompoundStackTrace(exceptions);
     Console.WriteLine();
     Console.WriteLine();
 }
예제 #3
0
        private string LogRemovedFeature(Case arg)
        {
            var attr = arg.Method.GetCustomAttribute<FeatureAttribute>(true);

            var writer = GetWriter(attr.ReferenceAssembly);
            writer.Write(arg);

            return arg.Method.GetCustomAttribute<RemovedAttribute>().FeatureText;
        }
 public void Execute(Case context, Action next)
 {
     try
     {
         TrySetCultureFromAttribute(context.Method);
         next();
     }
     finally
     {
         ResetCulture();
     }
 }
예제 #5
0
        public void Write(Case @case)
        {
            var attribute = @case.Method.GetCustomAttribute<FeatureAttribute>(true);
            var parts = @case.Class.Name.Split('_');

            var line = string.Format("{0},{1},{2},{3},{4},{5}",
                attribute.Type,
                _assemblyName.Name,
                _releaseVersion,
                parts[ClassIndex],
                parts[MethodIndex],
                attribute.FeatureText);

            File.AppendAllLines(_path, new[] { line });
        }
예제 #6
0
        private void SetupTestData(Case @case, object instance)
        {
            var db = _container.GetInstance<MongoDatabase>();

            db.DropCollection(Properties.Settings.Default.LogCollectionName);
            db.CreateCollection(Properties.Settings.Default.LogCollectionName);

            var coll = db.GetCollection<MongoScript>(Properties.Settings.Default.LogCollectionName);
            coll.Insert(new MongoScript { Digest = "79124E2D1EF143FB9EF81B61A242253C53B704D3", Name = "1 - script.js" });
            coll.Insert(new MongoScript { Digest = "wronghashcode", Name = "11 - script.js" });
        }
예제 #7
0
 private bool IsDatabaseTest(Case @case, object instance)
 {
     return (@case.Class.Namespace == typeof(DbIntegrationTestMarker).Namespace);
 }
예제 #8
0
 public void CasePassed(Case @case)
 {
     var durationInMilliseconds = ((int)Math.Ceiling(@case.Duration.TotalMilliseconds)).ToString();
     Message("testStarted name='{0}'", @case.Name);
     Message("testFinished name='{0}' duration='{1}'", @case.Name, durationInMilliseconds);
 }
예제 #9
0
 public void CaseFailed(Case @case, Exception[] exceptions)
 {
     Message("testStarted name='{0}'", @case.Name);
     Message("testFailed name='{0}' details='{1}'", @case.Name, CompoundStackTrace(exceptions));
     Message("testFinished name='{0}'", @case.Name);
 }
 static bool SkipWhenSpecificationIsInconclusive(Case @case)
 {
     return @case.Method.DeclaringType.Has<InconclusiveAttribute>();
 }
예제 #11
0
파일: Runner.cs 프로젝트: kmcginnes/fixie
 public void CasePassed(Case @case)
 {
     passed++;
     inner.CasePassed(@case);
 }
예제 #12
0
 public CaseExecution(Case @case)
 {
     Case = @case;
     exceptions = new List<Exception>();
 }
예제 #13
0
 public void CasePassed(Case @case)
 {
 }
예제 #14
0
        public void CaseSkipped(Case @case)
        {
            if (isParameterized)
            {
                var newTask = new TestCaseTask(@case.Name, nodeRunner.CurrentTask.AssemblyLocation);
                server.CreateDynamicElement(newTask);
                nodeRunner.AddTask(newTask);
            }

            var task = nodeRunner.CurrentTask;
            task.CloseTask(TaskResult.Skipped, @case.Name);

            if (isParameterized)
                nodeRunner.FinishCurrentTask(task);
        }
예제 #15
0
 private void TearDownTestData(Case @case, object instance)
 {
     _container.GetInstance<MongoDatabase>().DropCollection(Properties.Settings.Default.LogCollectionName);
 }
 static bool SkipWhenAssertionStepIsInconclusive(Case @case)
 {
     return @case.Method.Has<InconclusiveAttribute>();
 }
예제 #17
0
파일: Runner.cs 프로젝트: jrios/fixie
 public void CaseSkipped(Case @case)
 {
     skipped++;
     inner.CaseSkipped(@case);
 }
예제 #18
0
파일: Runner.cs 프로젝트: kmcginnes/fixie
 public void CaseFailed(Case @case, Exception[] exceptions)
 {
     failed++;
     inner.CaseFailed(@case, exceptions);
 }