public void Execute(Types data, IConventionResultContext result)
 {
     result.IsSymmetric(
         string.Format("{0}s must be under the '{1}' namespace", classType, namespaceToCheck),
         string.Format("Non-{0}s must not be under the '{1}' namespace", classType, namespaceToCheck),
         classIsApplicable,
         TypeLivesInSpecifiedNamespace,
         data.TypesToVerify.Where(t => !t.IsCompilerGenerated()));
 }
コード例 #2
0
 public void Execute(Types data, IConventionResultContext result)
 {
     result.IsSymmetric(
         "All types inheriting from exception must end with 'Exception'",
         data
         .Where(t => t.IsSubclassOf(typeof(Exception)))
         .Where(t => !t.Name.EndsWith("Exception")),
         "All types ending with 'Exception' must inherit from Exception",
         data
         .Where(t => t.Name.EndsWith("Exception"))
         .Where(t => !t.IsSubclassOf(typeof(Exception))));
 }
        public void Execute(Types data, IConventionResultContext result)
        {
            var controllers = GetControllers(data);
            var typesWhichDoNotEndInController = controllers.Where(c => !c.Name.EndsWith("Controller"));

            var typesWhichEndInController = data.TypesToVerify.Where(t => t.Name.EndsWith("Controller"));
            var controllersWhichDoNotInheritFromController =
                typesWhichEndInController.Where(t => !IsMvcController(t) && !IsWebApiController(t));

            result.IsSymmetric(
                GetControllerTypeName() + "s must be suffixed with Controller", typesWhichDoNotEndInController,
                "Types named *Controller must inherit from ApiController or Controller",
                controllersWhichDoNotInheritFromController);
        }
コード例 #4
0
        public void Execute(Types data, IConventionResultContext result)
        {
            var shouldThrowMethods = data
                                     .SelectMany(t => t.GetMethods())
                                     .Where(method => method.Name.StartsWith("Throw") || method.Name.StartsWith("ShouldThrow"))
                                     .Select(throwMethod => new ShouldThrowMethod(throwMethod))
                                     .ToList();

            var extensionMethods = shouldThrowMethods.Where(m => m.IsShouldlyExtension).ToList();
            var staticMethods    = shouldThrowMethods.Where(m => !m.IsShouldlyExtension).ToList();

            var firstSetFailureData  = staticMethods.Where(e => !extensionMethods.Any(e.Equals));
            var secondSetFailureData = extensionMethods.Where(e => !staticMethods.Any(e.Equals));

            result.IsSymmetric(
                "Should.Throw method without corresponding ShouldThrow extension method",
                firstSetFailureData,
                "ShouldThrow extension method without Should.Throw static method",
                secondSetFailureData);
        }