Example #1
0
        public void When_ReferenceTypeNullHandling_is_NotNull_then_nullability_is_correct()
        {
            //// Arrange
            var checks = new Dictionary <Type, bool>
            {
                { typeof(bool), false },
                { typeof(int), false },
                { typeof(char), false },
                { typeof(short), false },
                { typeof(long), false },
                { typeof(DateTime), false },
                { typeof(NodaTime.Instant), false },

                { typeof(long?), true },

                { typeof(string), false },
                { typeof(Uri), false },
                { typeof(object), false },
                { typeof(JsonSchemaGeneratorSettings), false },
                { typeof(IReflectionService), false },
                { typeof(Type), false },
                { typeof(byte[]), false },
                { typeof(NodaTime.DateTimeZone), false },
                { typeof(Dictionary <string, string>), false },
            };

            //// Act
            var svc = new DefaultReflectionService();

            //// Assert
            foreach (var check in checks)
            {
                Assert.Equal(check.Value, svc.IsNullable(check.Key, null, ReferenceTypeNullHandling.NotNull));
            }
        }