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); }
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); }
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); }
public void All_Repositories_are_transient() { var nonTransientRepositorys = InstallerTestHelper.GetHandlersFor(typeof(IRepository), containerWithRepositories) .Where(Repository => Repository.ComponentModel.LifestyleType != LifestyleType.Transient) .ToArray(); Assert.IsEmpty(nonTransientRepositorys); }
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); }
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); }
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)); }
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)); }