public static void Test_Infinity_InclusiveValue_CountConstraint(long value, bool valid)
        {
            // (-∞, 11]
            var range = new CountConstraint(null, 11);

            Assert.True(range.IsValid(value) == valid);
            Assert.NotEqual(0, range.GetHashCode());
        }
        public static void Test_InclusiveValue_CountConstraint(long value, bool valid)
        {
            // [0, 10]
            var range = new CountConstraint(3, 10);

            Assert.True(range.IsValid(value) == valid);
            Assert.NotEqual(0, range.GetHashCode());
        }
        public static void Test_Empty_CountConstraint(long value, bool valid)
        {
            // (0, ∞)
            var range = new CountConstraint(null, null);

            Assert.True(range.IsValid(value) == valid);
            Assert.NotEqual(0, range.GetHashCode());
        }