< Summary

Information
Class: DatatypeTests.DateTests
Assembly: datatypetests.dll
File(s): C:\skola_karlovka\RP\code\csv-validator\CSV_Validator\Tests\DatatypeTests\DateTests.cs
Line coverage
100%
Covered lines: 20
Uncovered lines: 0
Coverable lines: 20
Total lines: 85
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

File(s)

C:\skola_karlovka\RP\code\csv-validator\CSV_Validator\Tests\DatatypeTests\DateTests.cs

#LineLine coverage
 1using ValidateLib.ErrorsAndWarnings.Errors.Specific;
 2using ValidateLib.Metadata.Descriptors;
 3using ValidateLib.TabularData.Datatypes;
 4
 5namespace DatatypeTests
 6{
 7    public class DateTests
 8    {
 9        [Theory]
 10        [InlineData("2015-03-22", "yyyy-MM-dd")]
 11        [InlineData("20150322", "yyyyMMdd")]
 12        [InlineData("22-03-2015", "dd-MM-yyyy")]
 13        [InlineData("22-3-2015", "d-M-yyyy")]
 14        [InlineData("03-22-2015", "MM-dd-yyyy")]
 15        [InlineData("3-22-2015", "M-d-yyyy")]
 16        [InlineData("22/03/2015", "dd/MM/yyyy")]
 17        [InlineData("22/3/2015", "d/M/yyyy")]
 18        [InlineData("03/22/2015", "MM/dd/yyyy")]
 19        [InlineData("3/22/2015", "M/d/yyyy")]
 20        [InlineData("22.03.2015", "dd.MM.yyyy")]
 21        [InlineData("22.3.2015", "d.M.yyyy")]
 22        [InlineData("03.22.2015", "MM.dd.yyyy")]
 23        [InlineData("3.22.2015", "M.d.yyyy")]
 24        [InlineData("2015-03-22Z", "yyyy-MM-ddX")]
 25        [InlineData("22.03.2015 Z", "dd.MM.yyyy XXX")]
 26
 27        public void DateTimeSupportedPatternsTests(string stringValue, string formatPattern)
 128        {
 129            FormatDescriptor format = new FormatDescriptor { pattern = formatPattern };
 130            DatatypeFactory.GetDatatype(stringValue, "date", format);
 131        }
 32
 33        [Theory]
 34        [InlineData("2015-03-15T15:02:37.143", "yyyy-MM-ddTHH:mm:ss.SSS")]
 35        [InlineData("2015-03-15T15:02:37.14356", "yyyy-MM-ddTHH:mm:ss.SSSSS")]
 36        [InlineData("2015-03-15T15:02:37", "yyyy-MM-ddTHH:mm:ss")]
 37        [InlineData("2015-03-15T15:02", "yyyy-MM-ddTHH:mm")]
 38        [InlineData("3/22/2015 15:02", "M/d/yyyy HH:mm")]
 39        [InlineData("22.03.2015 15:02:37", "dd.MM.yyyy HH:mm:ss")]
 40
 41        public void DateTimeNotSupportedPatternsTests(string stringValue, string formatPattern)
 142        {
 143            FormatDescriptor format = new FormatDescriptor { pattern = formatPattern };
 144            Assert.Throws<InvalidFormatError>(() => DatatypeFactory.GetDatatype(stringValue, "date", format));
 145        }
 46
 47        [Theory]
 48        [InlineData("2015-03-15+00:00")]
 49        [InlineData("2015-03-15Z")]
 50        [InlineData("2015-03-15-05:00")]
 51        [InlineData("2015-03-15")]
 52
 53        public void DateTimeValidDatesWithoutFormatTests(string stringValue)
 154        {
 155            FormatDescriptor format = new FormatDescriptor { };
 156            DatatypeFactory.GetDatatype(stringValue, "date", null);
 157        }
 58
 59        [Theory]
 60        [InlineData("2015-03-15T15:02:14")]
 61        [InlineData("03-04-1999T15:02:14")]
 62
 63        public void DateTimeInvalidDatesWithoutFormatTests(string stringValue)
 164        {
 165            FormatDescriptor format = new FormatDescriptor { };
 166            Assert.Throws<DatatypeValidationError>(() => DatatypeFactory.GetDatatype(stringValue, "date", null));
 167        }
 68
 69        [Theory]
 70        [InlineData("2015-03-15T15:02:37")]
 71        [InlineData("2015-03-15T15:02:37.143")]
 72        [InlineData("15-01-05")]
 73        [InlineData("15-03-2032T15:02")]
 74        [InlineData("3/22/2015 15:02+05:00")]
 75        [InlineData("22.03.2015 15:02:37Z")]
 76        [InlineData("2015-03T15:02:37-05:00")]
 77
 78        public void DateTimeInvalidValuesWithOutPatternTests(string stringValue)
 179        {
 180            FormatDescriptor format = new FormatDescriptor { };
 181            Assert.Throws<DatatypeValidationError>(() => DatatypeFactory.GetDatatype(stringValue, "date", format));
 182        }
 83
 84    }
 85}