public AddDependency ( IFeatureToggle toggle ) : void | ||
toggle | IFeatureToggle | The toggle to add as a dependency. |
return | void |
public void AssertConfigurationIsValid_Returns_False_For_Non_Circular_Dpendency() { var toggle1 = new DependencyToggle(new BooleanToggle(ToggleName, true)); var toggle2 = new DependencyToggle(new BooleanToggle(ToggleName, true)); var toggle3 = new DependencyToggle(new BooleanToggle(ToggleName, true)); var toggle4 = new BooleanToggle(ToggleName, true); toggle1.AddDependency(toggle2); toggle2.AddDependency(toggle3); toggle2.AddDependency(toggle4); toggle3.AddDependency(toggle4); Assert.DoesNotThrow(toggle1.AssertConfigurationIsValid); }
public void AddDependency_Throws_If_Object_Is_Frozen() { var toggle = new DependencyToggle(new BooleanToggle(ToggleName, true)); toggle.Freeze(); var dependency = new BooleanToggle("a", true); Assert.Throws<ToggleFrozenException>(() => toggle.AddDependency(dependency)); }
public void AssertConfigurationIsValid_Throws_For_CircularDependency() { var toggle1 = new DependencyToggle(new BooleanToggle(ToggleName, true)); var toggle2 = new DependencyToggle(new BooleanToggle(ToggleName, true)); toggle1.AddDependency(toggle2); toggle2.AddDependency(toggle1); Assert.Throws<CircularDependencyException>(toggle1.AssertConfigurationIsValid); }
public void Freeze_Freezes_Dependencies() { var toggle1 = new DependencyToggle(new BooleanToggle(ToggleName, true)); var dependency1 = new Mock<IFeatureToggle>(); var dependency2 = new Mock<IFeatureToggle>(); toggle1.AddDependency(dependency1.Object); toggle1.AddDependency(dependency2.Object); dependency1.Setup(x => x.Freeze()); dependency2.Setup(x => x.Freeze()); toggle1.Freeze(); Assert.IsTrue(toggle1.IsFrozen); dependency1.VerifyAll(); dependency2.VerifyAll(); }
public void Can_Add_Dependencies_To_Toggle() { var toggle = new DependencyToggle(new BooleanToggle(ToggleName, true)); Assert.IsFalse(toggle.Dependencies.Any()); var dependency = new BooleanToggle("a", true); toggle.AddDependency(dependency); Assert.IsTrue(toggle.Dependencies.Any()); Assert.AreSame(toggle.Dependencies.Single(), dependency); }