|
@@ -1,68 +0,0 @@
|
|
|
-using System;
|
|
|
-using Xunit;
|
|
|
-
|
|
|
-namespace Jellyfin.Extensions.Tests
|
|
|
-{
|
|
|
- public class TypeExtensionsTests
|
|
|
- {
|
|
|
- [Theory]
|
|
|
- [InlineData(typeof(byte), byte.MaxValue, false)]
|
|
|
- [InlineData(typeof(short), short.MinValue, false)]
|
|
|
- [InlineData(typeof(ushort), ushort.MaxValue, false)]
|
|
|
- [InlineData(typeof(int), int.MinValue, false)]
|
|
|
- [InlineData(typeof(uint), uint.MaxValue, false)]
|
|
|
- [InlineData(typeof(long), long.MinValue, false)]
|
|
|
- [InlineData(typeof(ulong), ulong.MaxValue, false)]
|
|
|
- [InlineData(typeof(decimal), -1.0, false)]
|
|
|
- [InlineData(typeof(bool), true, false)]
|
|
|
- [InlineData(typeof(char), 'a', false)]
|
|
|
- [InlineData(typeof(string), "", false)]
|
|
|
- [InlineData(typeof(object), 1, false)]
|
|
|
- [InlineData(typeof(byte), 0, true)]
|
|
|
- [InlineData(typeof(short), 0, true)]
|
|
|
- [InlineData(typeof(ushort), 0, true)]
|
|
|
- [InlineData(typeof(int), 0, true)]
|
|
|
- [InlineData(typeof(uint), 0, true)]
|
|
|
- [InlineData(typeof(long), 0, true)]
|
|
|
- [InlineData(typeof(ulong), 0, true)]
|
|
|
- [InlineData(typeof(decimal), 0, true)]
|
|
|
- [InlineData(typeof(bool), false, true)]
|
|
|
- [InlineData(typeof(char), '\x0000', true)]
|
|
|
- [InlineData(typeof(string), null, true)]
|
|
|
- [InlineData(typeof(object), null, true)]
|
|
|
- [InlineData(typeof(PhonyClass), null, true)]
|
|
|
- [InlineData(typeof(DateTime), null, true)] // Special case handled within the test.
|
|
|
- [InlineData(typeof(DateTime), null, false)] // Special case handled within the test.
|
|
|
- [InlineData(typeof(byte?), null, true)]
|
|
|
- [InlineData(typeof(short?), null, true)]
|
|
|
- [InlineData(typeof(ushort?), null, true)]
|
|
|
- [InlineData(typeof(int?), null, true)]
|
|
|
- [InlineData(typeof(uint?), null, true)]
|
|
|
- [InlineData(typeof(long?), null, true)]
|
|
|
- [InlineData(typeof(ulong?), null, true)]
|
|
|
- [InlineData(typeof(decimal?), null, true)]
|
|
|
- [InlineData(typeof(bool?), null, true)]
|
|
|
- [InlineData(typeof(char?), null, true)]
|
|
|
- public void IsNullOrDefault_Matches_Expected(Type type, object? value, bool expectedResult)
|
|
|
- {
|
|
|
- if (type == typeof(DateTime))
|
|
|
- {
|
|
|
- if (expectedResult)
|
|
|
- {
|
|
|
- value = default(DateTime);
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- value = DateTime.Now;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- Assert.Equal(expectedResult, type.IsNullOrDefault(value));
|
|
|
- Assert.Equal(expectedResult, value.IsNullOrDefault());
|
|
|
- }
|
|
|
-
|
|
|
- private class PhonyClass
|
|
|
- {
|
|
|
- }
|
|
|
- }
|
|
|
-}
|