public void Initialize_Calls_MobileAppControllerConfigProvider_Then_TableControllerConfigProvider() { // Arrange HttpConfiguration config = new HttpConfiguration(); HttpControllerSettings settings = new HttpControllerSettings(config); HttpControllerDescriptor descriptor = new HttpControllerDescriptor() { Configuration = config }; string output = string.Empty; Mock<IMobileAppControllerConfigProvider> configProviderMock = new Mock<IMobileAppControllerConfigProvider>(); configProviderMock.Setup(p => p.Configure(settings, descriptor)).Callback(() => output += "1"); config.SetMobileAppControllerConfigProvider(configProviderMock.Object); Mock<ITableControllerConfigProvider> tableConfigProviderMock = new Mock<ITableControllerConfigProvider>(); tableConfigProviderMock.Setup(p => p.Configure(settings, descriptor)).Callback(() => output += "2"); config.SetTableControllerConfigProvider(tableConfigProviderMock.Object); // Act new TableControllerConfigAttribute().Initialize(settings, descriptor); // Assert configProviderMock.VerifyAll(); tableConfigProviderMock.VerifyAll(); Assert.Equal("12", output); }
public void SetMobileAppControllerConfigProvider_ReturnsDefault_IfSetToNull() { // Arrange HttpConfiguration config = new HttpConfiguration(); // Act config.SetMobileAppControllerConfigProvider(null); IMobileAppControllerConfigProvider actual = config.GetMobileAppControllerConfigProvider(); // Assert Assert.NotNull(actual); Assert.IsType <MobileAppControllerConfigProvider>(actual); }
public void SetMobileAppControllerConfigProvider_Roundtrips() { // Arrange MobileAppControllerConfigProvider provider = new MobileAppControllerConfigProvider(); HttpConfiguration config = new HttpConfiguration(); // Act config.SetMobileAppControllerConfigProvider(provider); IMobileAppControllerConfigProvider actual = config.GetMobileAppControllerConfigProvider(); // Assert Assert.Same(provider, actual); }
public void SetMobileAppControllerConfigProvider_ReturnsDefault_IfSetToNull() { // Arrange HttpConfiguration config = new HttpConfiguration(); // Act config.SetMobileAppControllerConfigProvider(null); ITableControllerConfigProvider actual = config.GetTableControllerConfigProvider(); // Assert Assert.NotNull(actual); Assert.IsType<TableControllerConfigProvider>(actual); }
/// <inheritdoc /> public override void ApplyTo(HttpConfiguration config) { if (config.GetMobileAppConfiguration() != null) { throw new InvalidOperationException(RResources.ApplyTo_CalledTwice); } config.SetMobileAppConfiguration(this); config.SetMobileAppControllerConfigProvider(this.configProvider); base.ApplyTo(config); if (this.enableApiControllers) { this.MapApiControllers(config); } }
public void Initialize_CallsRegisteredConfigProvider() { // Arrange var httpConfig = new HttpConfiguration(); var mockConfigProvider = new Mock<IMobileAppControllerConfigProvider>(); httpConfig.SetMobileAppControllerConfigProvider(mockConfigProvider.Object); var attr = new MobileAppControllerAttribute(); var settings = new HttpControllerSettings(httpConfig); var descriptor = new HttpControllerDescriptor() { Configuration = httpConfig }; // Act attr.Initialize(settings, descriptor); // Assert mockConfigProvider.Verify(m => m.Configure(settings, descriptor), Times.Once); }