public void ConstructorSetsInnerFilter() { var innerFilter = new FakeSettingFilter(); var filter = new BlocklistSettingFilter(new[] { "foo" }, innerFilter); filter.InnerFilter.Should().BeSameAs(innerFilter); }
public void ConstructorSetsBlockedSettings() { string[] blockedSettings = new[] { "foo" }; var filter = new BlocklistSettingFilter(blockedSettings); filter.BlockedSettings.Should().BeEquivalentTo(blockedSettings); }
public void ReturnsFalseWhenTheSettingIsAChildOfAnItemInTheBlocklist() { var mockInnerFilter = new Mock <ISettingFilter>(); var filter = new BlocklistSettingFilter(new[] { "foo" }, mockInnerFilter.Object); filter.ShouldProcessSettingChange("foo:bar", new Dictionary <string, object>()) .Should().Be(false); mockInnerFilter.Verify(m => m.ShouldProcessSettingChange( It.IsAny <string>(), It.IsAny <IReadOnlyDictionary <string, object> >()), Times.Never); }
public void ReturnsWhatTheInnerFilterReturnsWhenTheSettingIsNotInTheBlocklist() { var mockInnerFilter = new Mock <ISettingFilter>(); mockInnerFilter .Setup(m => m.ShouldProcessSettingChange(It.IsAny <string>(), It.IsAny <IReadOnlyDictionary <string, object> >())) .Returns(false); var filter = new BlocklistSettingFilter(new[] { "foo" }, mockInnerFilter.Object); var receivedMessageHeaders = new Dictionary <string, object>(); filter.ShouldProcessSettingChange("bar", receivedMessageHeaders) .Should().Be(false); mockInnerFilter.Verify(m => m.ShouldProcessSettingChange( It.Is <string>(s => s == "bar"), It.Is <IReadOnlyDictionary <string, object> >(headers => headers == receivedMessageHeaders))); }