Example #1
0
        public void All_and_only_Repositories_have_Repository_suffix()
        {
            var allRepositorys        = GetPublicClassesFromApplicationAssembly(c => c.Name.EndsWith("Repository"));
            var registeredRepositorys = InstallerTestHelper.GetImplementationTypesFor(typeof(IRepository), containerWithRepositories);

            Assert.AreEqual(allRepositorys, registeredRepositorys);
        }
Example #2
0
 public void AllControllersAreTransient()
 {
     Castle.MicroKernel.IHandler[] nonTransientControllers = InstallerTestHelper.GetAssignableHandlers(typeof(IController), container)
                                                             .Where(c => c.ComponentModel.LifestyleType != LifestyleType.Transient)
                                                             .ToArray();
     Assert.That(nonTransientControllers, Is.Empty);
 }
Example #3
0
 public void AllControllersExposeThemselvesAsService()
 {
     Castle.MicroKernel.IHandler[] controllersWithWrongName = InstallerTestHelper.GetAssignableHandlers(typeof(IController), container)
                                                              .Where(c => !c.ComponentModel.Services.SequenceEqual(new[] { c.ComponentModel.Implementation }))
                                                              .ToArray();
     Assert.That(controllersWithWrongName, Is.Empty);
 }
        public void All_and_only_controllers_live_in_Controllers_namespace()
        {
            var allControllers        = GetPublicClassesFromApplicationAssembly(c => c.Namespace.Contains("Controllers"));
            var registeredControllers = InstallerTestHelper.GetImplementationTypesFor(typeof(IController), containerWithControllers);

            Assert.AreEqual(allControllers, registeredControllers);
        }
        public void All_and_only_controllers_have_Controllers_suffix()
        {
            var allControllers        = GetPublicClassesFromApplicationAssembly(c => c.Name.EndsWith("Controller"));
            var registeredControllers = InstallerTestHelper.GetImplementationTypesFor(typeof(IController), containerWithControllers);

            Assert.AreEqual(allControllers, registeredControllers);
        }
Example #6
0
        public void All_Repositories_are_transient()
        {
            var nonTransientRepositorys = InstallerTestHelper.GetHandlersFor(typeof(IRepository), containerWithRepositories)
                                          .Where(Repository => Repository.ComponentModel.LifestyleType != LifestyleType.Transient)
                                          .ToArray();

            Assert.IsEmpty(nonTransientRepositorys);
        }
Example #7
0
 public void AllControllersAreRegistered()
 {
     // Is<TType> is a helper extension method from Windsor
     // which behaves like 'is' keyword in C# but at a Type, not instance level
     System.Type[] allControllers        = InstallerTestHelper.GetPublicClassesFromApplicationAssembly(c => c.Is <IController>());
     System.Type[] registeredControllers = InstallerTestHelper.GetImplementationTypesFor(typeof(IController), container);
     Assert.That(registeredControllers, Is.EqualTo(allControllers));
 }
        public void All_controllers_are_transient()
        {
            var nonTransientControllers = InstallerTestHelper.GetHandlersFor(typeof(IController), containerWithControllers)
                                          .Where(controller => controller.ComponentModel.LifestyleType != LifestyleType.Transient)
                                          .ToArray();

            Assert.IsEmpty(nonTransientControllers);
        }
        public void All_controllers_implement_IController()
        {
            var allHandlers        = InstallerTestHelper.GetAllHandlers(containerWithControllers);
            var controllerHandlers = InstallerTestHelper.GetHandlersFor(typeof(IController), containerWithControllers);

            Assert.IsNotEmpty(allHandlers);
            Assert.AreEqual(allHandlers, controllerHandlers);
        }
Example #10
0
        public void All_Repositories_are_registered()
        {
            // Is<TType> is an helper, extension method from Windsor
            // which behaves like 'is' keyword in C# but at a Type, not instance level
            var allRepositorys        = GetPublicClassesFromApplicationAssembly(c => c.Is <IRepository>());
            var registeredRepositorys = InstallerTestHelper.GetImplementationTypesFor(typeof(IRepository), containerWithRepositories);

            Assert.AreEqual(allRepositorys, registeredRepositorys);
        }
Example #11
0
 public void AllAndOnlyControllersHaveControllerSuffix()
 {
     System.Type[] allControllers           = InstallerTestHelper.GetPublicClassesFromApplicationAssembly(c => c.Name.EndsWith("Controller"));
     System.Type[] registeredControllers    = InstallerTestHelper.GetImplementationTypesFor(typeof(IController), container);
     System.Type[] registeredApiControllers = InstallerTestHelper.GetImplementationTypesFor(typeof(IHttpController), container);
     System.Type[] actual = registeredControllers.Concat(registeredApiControllers)
                            .OrderBy(x => x.Name)
                            .ToArray();
     Assert.That(actual, Is.EqualTo(allControllers));
 }
Example #12
0
 public void AllControllersImplementIController()
 {
     Castle.MicroKernel.IHandler[] allHandlers           = InstallerTestHelper.GetAllHandlers(container);
     Castle.MicroKernel.IHandler[] controllerHandlers    = InstallerTestHelper.GetAssignableHandlers(typeof(IController), container);
     Castle.MicroKernel.IHandler[] apiControllerHandlers = InstallerTestHelper.GetAssignableHandlers(typeof(IHttpController), container);
     Assert.That(allHandlers, Is.Not.Empty);
     Castle.MicroKernel.IHandler[] handlers = controllerHandlers.Concat(apiControllerHandlers)
                                              .ToArray();
     Assert.That(handlers, Is.EqualTo(allHandlers));
 }