public void should_deserialize_empty_litst_of_toggles() { var content = File.ReadAllText("resources/features-v1-empty.json"); var toggleCollection = JsonToggleParser.FromJson(content); Assert.Empty(toggleCollection.Features); }
public void should_deserialize_correctly_version0() { var content = File.ReadAllText("resources/features-v0.json"); var toggleCollection = JsonToggleParser.FromJson(content); Assert.Equal(3, toggleCollection.Features.Count()); Assert.True(toggleCollection.GetToggle("featureX").IsEnabled); }
public void should_deserialize_with_one_strategy() { var content = File.ReadAllText("resources/features-v1.json"); var toggleCollection = JsonToggleParser.FromJson(content); var featureY = toggleCollection.GetToggle("featureY"); Assert.Single(featureY.Strategies); Assert.Equal("baz", featureY.Strategies.First().Name); Assert.Equal("bar", featureY.Strategies.First().Parameters["foo"]); }
public void should_deserialize_with_multiple_strategies() { var content = File.ReadAllText("resources/features-v1.json"); var toggleCollection = JsonToggleParser.FromJson(content); var featureZ = toggleCollection.GetToggle("featureZ"); Assert.True(featureZ.IsEnabled); Assert.Equal(2, featureZ.Strategies.Count()); Assert.Equal("hola", featureZ.Strategies.ToArray()[1].Name); Assert.Equal("val", featureZ.Strategies.ToArray()[1].Parameters["name"]); }
public void test_write_strategies() { var backupFile = Path.GetTempPath() + Path.PathSeparator + "unleash-repo-test-write.json"; var config = UnleashConfig.TheBuilder() .AppName("test") .UnleashAPI("http://unleash.org") .BackupFile(backupFile) .Build(); var staticData = "{\"features\": [{\"name\": \"writableFeature\",\"enabled\": true,\"strategy\": \"default\"}]}"; var toggleCollection = JsonToggleParser.FromJson(staticData); var toggleBackupHandlerFile = new ToggleBackupHandlerFile(config); toggleBackupHandlerFile.Write(toggleCollection); toggleBackupHandlerFile = new ToggleBackupHandlerFile(config); toggleCollection = toggleBackupHandlerFile.Read(); Assert.NotNull(toggleCollection.GetToggle("writableFeature")); }
public void should_throw_on_mission_features() { var content = File.ReadAllText("resources/empty-v1.json"); Assert.Throws <Exception>(() => JsonToggleParser.FromJson(content)); }
public void should_throw() { var content = File.ReadAllText("resources/empty.json"); Assert.Throws <ArgumentException>(() => JsonToggleParser.FromJson(content)); }