public void constructor_should_initialize_instance(
            [Values(false, true)] bool isEnabled)
        {
            var subject = new ReadPreferenceHedge(isEnabled);

            subject.IsEnabled.Should().Be(isEnabled);
        }
        public void ToString_should_return_expected_result(bool isEnabled, string expectedResult)
        {
            var subject = new ReadPreferenceHedge(isEnabled);

            var result = subject.ToString();

            result.Should().Be(expectedResult);
        }
        public void Equals_should_return_false_when_other_is_not_a_ReadPreferenceHedge(bool isEnabled)
        {
            var subject = new ReadPreferenceHedge(isEnabled);
            var other   = new object();

            var result = subject.Equals(other);

            result.Should().BeFalse();
        }
        public void IsEnabled_should_return_expected_result(
            [Values(false, true)] bool isEnabled)
        {
            var subject = new ReadPreferenceHedge(isEnabled);

            var result = subject.IsEnabled;

            result.Should().Be(isEnabled);
        }
        public void GetHashCode_should_return_expected_result(
            [Values(false, true)] bool isEnabled)
        {
            var subject = new ReadPreferenceHedge(isEnabled);

            var result = subject.GetHashCode();

            var expectedResult = isEnabled.GetHashCode();

            result.Should().Be(expectedResult);
        }
        public void Equals_should_return_expected_result(bool lhsIsEnabled, bool rhsIsEnabled, bool expectedResult)
        {
            var subject = new ReadPreferenceHedge(lhsIsEnabled);
            var other   = new ReadPreferenceHedge(rhsIsEnabled);

            var result1 = subject.Equals(other);
            var result2 = subject.Equals((object)other);

            result1.Should().Be(expectedResult);
            result2.Should().Be(expectedResult);
        }