public async Task Delete() { //Arrange var toggleToDelete = new MongoDbFeatureToggleModel { Name = "ft1", Enabled = true }; var toggleThatRemains = new MongoDbFeatureToggleModel { Name = "ft2", Enabled = true }; DataSeed.SeedFeatureToggles(new[] { toggleToDelete, toggleThatRemains }); //Act var response = await Client.DeleteAsync($"{ApiUrl}/{toggleToDelete.Id}"); //Assert AssertNoContentResponse(response); var models = await GetToggles(); Assert.AreEqual(1, models.Count); var model = models[0]; Assert.AreEqual(toggleThatRemains.Id, model.Id); }
public async Task Patch_Enable(bool enabled, string patchPropertyName, string patchPropertyValue, HttpStatusCode expectedStatusCode, string assertMessage) { //Arrange var toggle = new MongoDbFeatureToggleModel { Name = "ft1", Enabled = enabled }; DataSeed.SeedFeatureToggles(new[] { toggle }); var patchRequest = new PatchFeatureToggleRequest { Operation = patchPropertyName, Value = patchPropertyValue }; //Act var response = await Client.PatchAsync($"{ApiUrl}/{toggle.Id}", CreateHttpContent(new[] { patchRequest })); //Assert AssertResponse(response, expectedStatusCode); var expectedStatusCodeAsInt = (int)expectedStatusCode; var isSuccessStatusCode = expectedStatusCodeAsInt >= 200 && expectedStatusCodeAsInt <= 299; var expectedEnabledValue = isSuccessStatusCode ? !enabled : enabled; var models = await GetToggles(); Assert.AreEqual(1, models.Count); var model = models[0]; Assert.AreEqual(expectedEnabledValue, model.Enabled, assertMessage); }
public async Task Exists(string existingToggleName, string testToggleName, bool expectedResult, string assertMessage) { //Arrange var toggle = new MongoDbFeatureToggleModel { Name = existingToggleName, Enabled = true }; DataSeed.SeedFeatureToggles(new[] { toggle }); //Act var response = await Client.GetAsync($"{ApiUrl}/exists/{testToggleName}"); //Assert AssertOkResponse(response); var stringResponse = await response.Content.ReadAsStringAsync(); var existsResponse = JsonConvert.DeserializeObject <ExistsResponse>(stringResponse); Assert.AreEqual(expectedResult, existsResponse.Exists, assertMessage); }