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))); }