public async Task GetFeatureFlagIntegrationTest() { //Arrange FeatureFlagsStorageTable da = new FeatureFlagsStorageTable(Configuration); string name = "UnitTestFeatureFlag01"; //Act FeatureFlag featureFlag = await da.GetFeatureFlag(name); //Assert Assert.IsTrue(featureFlag != null); }
public async Task GetFeatureFlagsIntegrationTest() { //Arrange FeatureFlagsStorageTable da = new FeatureFlagsStorageTable(Configuration); //Act IEnumerable <FeatureFlag> featureFlags = await da.GetFeatureFlags(); //Assert Assert.IsTrue(featureFlags != null); Assert.IsTrue(featureFlags.Count() >= 0); }
public async Task CheckFeatureFlagProdIntegrationTest() { //Arrange FeatureFlagsStorageTable da = new FeatureFlagsStorageTable(Configuration); string name = "UnitTestFeatureFlag01"; string environment = "prod"; //Act bool result = await da.CheckFeatureFlag(name, environment); //Assert Assert.IsTrue(result == false); }
public async Task SaveFeatureFlagsStatePRUnitTest() { //Arrange Mock <IConfiguration> mockConfiguration = new Mock <IConfiguration>(); FeatureFlagsStorageTable context = new FeatureFlagsStorageTable(mockConfiguration.Object); Mock <IFeatureFlagsStorageTable> mock = new Mock <IFeatureFlagsStorageTable>(); mock.Setup(repo => repo.GetFeatureFlag(It.IsAny <string>())).Returns(Task.FromResult(GetTestRow())); FeatureFlagsController controller = new FeatureFlagsController(mock.Object); FeatureFlag featureFlag = GetTestRow(); //Act bool result = await controller.SaveFeatureFlagState(featureFlag.Name, "pr", true); //Assert Assert.IsTrue(result == true); }
public async Task GetFeatureFlagUnitTest() { //Arrange Mock <IConfiguration> mockConfiguration = new Mock <IConfiguration>(); FeatureFlagsStorageTable context = new FeatureFlagsStorageTable(mockConfiguration.Object); Mock <IFeatureFlagsStorageTable> mock = new Mock <IFeatureFlagsStorageTable>(); mock.Setup(repo => repo.GetFeatureFlag(It.IsAny <string>())).Returns(Task.FromResult(GetTestRow())); FeatureFlagsController controller = new FeatureFlagsController(mock.Object); string featureFlagName = "abc"; //Act FeatureFlag result = await controller.GetFeatureFlag(featureFlagName); //Assert Assert.IsTrue(result != null); TestFeatureFlag(result ?? new FeatureFlag()); }
public async Task GetFeatureFlagsUnitTest() { //Arrange Mock <IConfiguration> mockConfiguration = new Mock <IConfiguration>(); FeatureFlagsStorageTable context = new FeatureFlagsStorageTable(mockConfiguration.Object); Mock <IFeatureFlagsStorageTable> mock = new Mock <IFeatureFlagsStorageTable>(); mock.Setup(repo => repo.GetFeatureFlags()).Returns(Task.FromResult(GetFeatureFlagsTestData())); FeatureFlagsController controller = new FeatureFlagsController(mock.Object); //Act IEnumerable <FeatureFlag> results = await controller.GetFeatureFlags(); //Assert Assert.IsTrue(results != null); Assert.IsTrue(results?.Count() == 1); TestFeatureFlag(results.FirstOrDefault()); }
public async Task CheckFeatureFlagUnitTest() { //Arrange Mock <IConfiguration> mockConfiguration = new Mock <IConfiguration>(); FeatureFlagsStorageTable context = new FeatureFlagsStorageTable(mockConfiguration.Object); Mock <IFeatureFlagsStorageTable> mock = new Mock <IFeatureFlagsStorageTable>(); mock.Setup(repo => repo.CheckFeatureFlag(It.IsAny <string>(), It.IsAny <string>())).Returns(Task.FromResult(true)); FeatureFlagsController controller = new FeatureFlagsController(mock.Object); string featureFlagName = "abc"; string environment = "def"; //Act bool result = await controller.CheckFeatureFlag(featureFlagName, environment); //Assert Assert.IsTrue(result == true); }
public async Task CheckFeatureFlagExceptionIntegrationTest() { //Arrange FeatureFlagsStorageTable da = new FeatureFlagsStorageTable(Configuration); string name = "UnitTestFeatureFlag01"; string environment = "exception"; //Act string exceptionGenerated = ""; try { await da.CheckFeatureFlag(name, environment); } catch (Exception ex) { exceptionGenerated = ex.Message; } //Assert Assert.AreEqual(exceptionGenerated, "Unknown environment: " + environment + " for feature flag " + name); }
public async Task SaveFeatureFlagIntegrationTest() { //Arrange FeatureFlagsStorageTable da = new FeatureFlagsStorageTable(Configuration); string featureFlagName = "UnitTestFeatureFlag01"; FeatureFlag featureFlag = new FeatureFlag(featureFlagName) { Name = featureFlagName, Description = "Feature Flag for unit tests", PRIsEnabled = false, DevIsEnabled = true, DevViewCount = 1, QAIsEnabled = false, ProdIsEnabled = false, LastUpdated = DateTime.Now }; //Act bool result = await da.SaveFeatureFlag(featureFlag); //Assert Assert.IsTrue(result == true); }
public async Task DeleteFeatureFlagIntegrationTest() { //Arrange FeatureFlagsStorageTable da = new FeatureFlagsStorageTable(Configuration); string featureFlagName = "TestFeatureFlag02"; FeatureFlag featureFlag = new FeatureFlag(featureFlagName) { Name = featureFlagName, Description = "Feature Flag #2", PRIsEnabled = false, DevIsEnabled = false, QAIsEnabled = false, ProdIsEnabled = false, LastUpdated = DateTime.Now }; //Act await da.SaveFeatureFlag(featureFlag); bool result = await da.DeleteFeatureFlag(featureFlagName); //Assert Assert.IsTrue(result == true); }