Exemplo n.º 1
0
        private void ProcessSkippedAction(SkippedMethod skippedMethod)
        {
            switch (skippedMethod)
            {
            case SkippedMethod.File:
                RemoveSkippedMethods(SkippedMethod.File);
                RemoveEmptyClasses();
                RemoveUnreferencedFiles();
                break;

            case SkippedMethod.Filter:
                RemoveSkippedModules(SkippedMethod.Filter);
                RemoveSkippedClasses(SkippedMethod.Filter);
                break;

            case SkippedMethod.FolderExclusion:
                RemoveSkippedModules(SkippedMethod.FolderExclusion);
                break;

            case SkippedMethod.MissingPdb:
                RemoveSkippedModules(SkippedMethod.MissingPdb);
                break;

            case SkippedMethod.Attribute:
                RemoveSkippedClasses(SkippedMethod.Attribute);
                RemoveSkippedMethods(SkippedMethod.Attribute);
                RemoveEmptyClasses();
                break;

            case SkippedMethod.AutoImplementedProperty:
                RemoveSkippedMethods(SkippedMethod.Attribute);
                RemoveEmptyClasses();
                break;
            }
        }
Exemplo n.º 2
0
        public void HideSkipped_With_X_Removes_SkippedModules(
            [ValueSource("_skippedReasonsModules")] SkippedMethod reason)
        {
            // arrange
            Container.GetMock <ICommandLine>()
            .SetupGet(x => x.HideSkipped)
            .Returns(new List <SkippedMethod> {
                reason
            });

            var module = new Module {
                FullName = "Skipped"
            };

            module.MarkAsSkipped(reason);
            Instance.PersistModule(module);
            Instance.PersistModule(new Module {
                FullName = "Keep"
            });

            // act
            Instance.Commit();

            // assert
            Assert.AreEqual(1, Instance.CoverageSession.Modules.Count());
            Assert.AreEqual("Keep", Instance.CoverageSession.Modules[0].FullName);
        }
Exemplo n.º 3
0
        public void HideSkipped_With_X_Removes_SkippedClasses(
            [ValueSource("_skippedReasonsClasses")] SkippedMethod reason)
        {
            // arrange
            Container.GetMock <ICommandLine>()
            .SetupGet(x => x.HideSkipped)
            .Returns(new List <SkippedMethod> {
                reason
            });

            var @class = new Class {
                FullName = "Skipped"
            };

            @class.MarkAsSkipped(reason);
            Instance.PersistModule(new Module
            {
                ModulePath = "Keep",
                Classes    = new[]
                {
                    @class,
                    new Class {
                        FullName = "KeepClass", Methods = new[] { new Method() }
                    }
                }
            });

            // act
            Instance.Commit();

            // assert
            Assert.AreEqual(1, Instance.CoverageSession.Modules[0].Classes.Count());
            Assert.AreEqual("KeepClass", Instance.CoverageSession.Modules[0].Classes[0].FullName);
        }
Exemplo n.º 4
0
        private void RemoveSkippedModules(SkippedMethod skipped)
        {
            if (CoverageSession.Modules == null)
            {
                return;
            }
            var modules = CoverageSession.Modules;

            modules = modules.Where(x => x.SkippedDueTo != skipped).ToArray();
            CoverageSession.Modules = modules;
        }
Exemplo n.º 5
0
 public override void MarkAsSkipped(SkippedMethod reason)
 {
     SkippedDueTo = reason;
     if (MethodPoint != null)
     {
         MethodPoint.IsSkipped = true;
     }
     MethodPoint    = null;
     SequencePoints = null;
     BranchPoints   = null;
 }
Exemplo n.º 6
0
        public void HideSkipped_With_X_Removes_SkippedMethods(
            [ValueSource("_skippedReasonsMethods")] SkippedMethod reason)
        {
            // arrange
            Container.GetMock <ICommandLine>()
            .SetupGet(x => x.HideSkipped)
            .Returns(new List <SkippedMethod> {
                reason
            });

            var method = new Method {
                Name = "SkippedMethod", FileRef = new FileRef()
            };

            method.MarkAsSkipped(reason);

            var module = new Module
            {
                FullName = "Keep",
                Classes  = new[]
                {
                    new Class
                    {
                        FullName = "RemoveClassThoughSkippedAttribute",
                        Methods  = new[] { method }
                    },
                    new Class
                    {
                        FullName = "KeepClass",
                        Methods  = new[] { method, new Method {
                                               Name = "KeepMethod", FileRef = new FileRef()
                                           } }
                    }
                }
            };

            module.Classes[0].MarkAsSkipped(SkippedMethod.Attribute);

            Instance.PersistModule(module);

            // act
            Instance.Commit();

            // assert
            Assert.AreEqual(1, Instance.CoverageSession.Modules[0].Classes.Count());
            Assert.AreEqual(1, Instance.CoverageSession.Modules[0].Classes[0].Methods.Count());
            Assert.AreEqual("KeepMethod", Instance.CoverageSession.Modules[0].Classes[0].Methods[0].Name);
        }
Exemplo n.º 7
0
 private void RemoveSkippedClasses(SkippedMethod skipped)
 {
     if (CoverageSession.Modules == null)
     {
         return;
     }
     foreach (var module in CoverageSession.Modules)
     {
         if (module.Classes == null)
         {
             continue;
         }
         var classes = module.Classes.Where(x => x.SkippedDueTo != skipped).ToArray();
         module.Classes = classes;
     }
 }
Exemplo n.º 8
0
 public override void MarkAsSkipped(SkippedMethod reason)
 {
     SkippedDueTo = reason;
 }
Exemplo n.º 9
0
 /// <summary>
 ///     Mark an entity as skipped
 /// </summary>
 /// <param name="reason">Provide a reason</param>
 public abstract void MarkAsSkipped(SkippedMethod reason);
Exemplo n.º 10
0
 /// <summary>
 /// Mark an entity as skipped
 /// </summary>
 /// <param name="reason">Provide a reason</param>
 public abstract void MarkAsSkipped(SkippedMethod reason);
Exemplo n.º 11
0
 public override void MarkAsSkipped(SkippedMethod reason)
 {
     SkippedDueTo = reason;
     if (MethodPoint != null) MethodPoint.IsSkipped = true;
     MethodPoint = null;
     SequencePoints = null;
     BranchPoints = null;
 }
Exemplo n.º 12
0
 /// <summary>
 /// Mark an entity as skipped
 /// </summary>
 /// <param name="reason">Provide a reason</param>
 public override void MarkAsSkipped(SkippedMethod reason)
 {
     SkippedDueTo = reason;
 }
Exemplo n.º 13
0
 private void RemoveSkippedModules(SkippedMethod skipped)
 {
     if (CoverageSession.Modules == null) return;
     var modules = CoverageSession.Modules;
     modules = modules.Where(x => x.SkippedDueTo != skipped).ToArray();
     CoverageSession.Modules = modules;
 }
Exemplo n.º 14
0
 private void RemoveSkippedMethods(SkippedMethod skipped)
 {
     if (CoverageSession.Modules == null) return;
     foreach (var module in CoverageSession.Modules)
     {
         if (module.Classes == null) continue;
         foreach (var @class in module.Classes)
         {
             if (@class.Methods == null) continue;
             var methods = @class.Methods.Where(x => x.SkippedDueTo != skipped).ToArray();
             @class.Methods = methods;
         }
     }
 }
Exemplo n.º 15
0
 private void ProcessSkippedAction(SkippedMethod skippedMethod)
 {
     switch (skippedMethod)
     {
         case SkippedMethod.File:
             RemoveSkippedMethods(SkippedMethod.File);
             RemoveEmptyClasses();
             RemoveUnreferencedFiles();
             break;
         case SkippedMethod.Filter:
             RemoveSkippedModules(SkippedMethod.Filter);
             RemoveSkippedClasses(SkippedMethod.Filter);
             break;
         case SkippedMethod.FolderExclusion:
             RemoveSkippedModules(SkippedMethod.FolderExclusion);
             break;
         case SkippedMethod.MissingPdb:
             RemoveSkippedModules(SkippedMethod.MissingPdb);
             break;
         case SkippedMethod.Attribute:
             RemoveSkippedClasses(SkippedMethod.Attribute);
             RemoveSkippedMethods(SkippedMethod.Attribute);
             RemoveEmptyClasses();
             break;
         case SkippedMethod.AutoImplementedProperty:
             RemoveSkippedMethods(SkippedMethod.Attribute);
             RemoveEmptyClasses();
             break;
     }
 }