public void WhenIDeleteAFeatureOverride_ThenTheFeatureOverrideIsRemovedAndSignalRClientsAreNotified() { var application = new Application { ApplicationId = 1, Name = "TestApplication1" }; _createApplication.Execute(application); var feature = new Data.Entities.Feature { ApplicationId = application.ApplicationId, Name = "Feature1" }; _createFeature.Execute(feature); var featureOverride = new Data.Entities.FeatureOverride { FeatureId = feature.FeatureId, Hostname = "Test", IsEnabled = true }; _createFeatureOverride.Execute(featureOverride); _browser.Delete("/api/featureoverrides", with => { with.Query("id", "1"); }); feature = _getFeature.Execute(feature.Name, application.Name); CollectionAssert.IsEmpty(feature.FeatureOverrides); _bootstrapper .Resolve <IMockClient>() .Received() .removeFeatureOverride(Arg.Any <dynamic>()); }
public void WhenIPutAFeature_ThenTheFeatureOverrideIsUpdatedAndSignalRClientsAreNotified() { var application = new Application { ApplicationId = 1, Name = "TestApplication1" }; _createApplication.Execute(application); var feature = new Data.Entities.Feature { ApplicationId = application.ApplicationId, Name = "Feature1" }; _createFeature.Execute(feature); var featureOverride = new Data.Entities.FeatureOverride { FeatureId = feature.FeatureId, Hostname = "Test", IsEnabled = true }; _createFeatureOverride.Execute(featureOverride); featureOverride.Hostname = "TEST123"; Put(featureOverride.ToContract()); feature = _getFeature.Execute(feature.Name, application.Name); Assert.That(feature.FeatureOverrides[0].Hostname, Is.EqualTo("TEST123")); _bootstrapper .Resolve <IMockClient>() .Received() .updateFeatureOverride(Arg.Any <dynamic>()); }
public void WhenIDeleteAFeatureOverride_ThenTheFeatureOverrideIsRemovedAndSignalRClientsAreNotified() { var application = new Application { ApplicationId = 1, Name = "TestApplication1" }; _createApplication.Execute(application); var feature = new Data.Entities.Feature { ApplicationId = application.ApplicationId, Name = "Feature1" }; _createFeature.Execute(feature); var featureOverride = new Data.Entities.FeatureOverride { FeatureId = feature.FeatureId, Hostname = "Test", IsEnabled = true }; _createFeatureOverride.Execute(featureOverride); _browser.Delete("/api/featureoverrides", with => { with.Query("id", "1"); }); feature = _getFeature.Execute(feature.Name, application.Name); CollectionAssert.IsEmpty(feature.FeatureOverrides); _bootstrapper .Resolve<IMockClient>() .Received() .removeFeatureOverride(Arg.Any<dynamic>()); }
public void WhenIPostAFeatureOverride_ThenItIsSavedAndSignalRClientsAreNotified() { var application = new Application { ApplicationId = 1, Name = "TestApplication1" }; _createApplication.Execute(application); var feature = new Data.Entities.Feature { ApplicationId = application.ApplicationId, Name = "Feature1" }; _createFeature.Execute(feature); var featureOverride = new FeatureOverride { FeatureId = feature.FeatureId, Hostname = "Test", IsEnabled = true }; Post(featureOverride); var response = _browser.Get("/api/feature", with => { with.Header("Accept", "application/json"); with.Query("application", application.Name); with.Query("feature", feature.Name); }); var result = JsonConvert.DeserializeObject <Contracts.Feature>(response.Body.AsString()); Assert.That(response.StatusCode, Is.EqualTo(HttpStatusCode.OK)); Assert.That(result.FeatureOverrides[0].IsEnabled, Is.True); _bootstrapper .Resolve <IMockClient>() .Received() .addFeatureOverride(Arg.Any <dynamic>()); }
public void WhenIPostAFeatureOverride_ThenItIsSavedAndSignalRClientsAreNotified() { var application = new Application { ApplicationId = 1, Name = "TestApplication1" }; _createApplication.Execute(application); var feature = new Data.Entities.Feature { ApplicationId = application.ApplicationId, Name = "Feature1" }; _createFeature.Execute(feature); var featureOverride = new FeatureOverride { FeatureId = feature.FeatureId, Hostname = "Test", IsEnabled = true }; Post(featureOverride); var response = _browser.Get("/api/feature", with => { with.Header("Accept", "application/json"); with.Query("application", application.Name); with.Query("feature", feature.Name); }); var result = JsonConvert.DeserializeObject<Contracts.Feature>(response.Body.AsString()); Assert.That(response.StatusCode, Is.EqualTo(HttpStatusCode.OK)); Assert.That(result.FeatureOverrides[0].IsEnabled, Is.True); _bootstrapper .Resolve<IMockClient>() .Received() .addFeatureOverride(Arg.Any<dynamic>()); }
public void WhenIPutAFeature_ThenTheFeatureOverrideIsUpdatedAndSignalRClientsAreNotified() { var application = new Application { ApplicationId = 1, Name = "TestApplication1" }; _createApplication.Execute(application); var feature = new Data.Entities.Feature { ApplicationId = application.ApplicationId, Name = "Feature1" }; _createFeature.Execute(feature); var featureOverride = new Data.Entities.FeatureOverride { FeatureId = feature.FeatureId, Hostname = "Test", IsEnabled = true }; _createFeatureOverride.Execute(featureOverride); featureOverride.Hostname = "TEST123"; Put(featureOverride.ToContract()); feature = _getFeature.Execute(feature.Name, application.Name); Assert.That(feature.FeatureOverrides[0].Hostname, Is.EqualTo("TEST123")); _bootstrapper .Resolve<IMockClient>() .Received() .updateFeatureOverride(Arg.Any<dynamic>()); }