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 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)); }