< Summary

Information
Class: DatatypeTests.DateTimeTests
Assembly: datatypetests.dll
File(s): C:\skola_karlovka\RP\code\csv-validator\CSV_Validator\Tests\DatatypeTests\DateTimeTests.cs
Line coverage
100%
Covered lines: 17
Uncovered lines: 0
Coverable lines: 17
Total lines: 65
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\DateTimeTests.cs

#LineLine coverage
 1using ValidateLib.ErrorsAndWarnings.Errors.Specific;
 2using ValidateLib.Metadata.Descriptors;
 3using ValidateLib.TabularData.Datatypes;
 4using ValidateLib.TabularData.Datatypes.DateDatatypes;
 5
 6namespace DatatypeTests
 7{
 8    public class DateTimeTests
 9    {
 10        [Theory]
 11        [InlineData("2015-03-15T15:02:37.143", "yyyy-MM-ddTHH:mm:ss.SSS")]
 12        [InlineData("2015-03-15T15:02:37.14356", "yyyy-MM-ddTHH:mm:ss.SSSSS")]
 13        [InlineData("2015-03-15T15:02:37", "yyyy-MM-ddTHH:mm:ss")]
 14        [InlineData("2015-03-15T15:02", "yyyy-MM-ddTHH:mm")]
 15        [InlineData("3/22/2015 15:02", "M/d/yyyy HH:mm")]
 16        [InlineData("22.03.2015 15:02:37", "dd.MM.yyyy HH:mm:ss")]
 17        [InlineData("2015-03-15T15:02:37Z", "yyyy-MM-ddTHH:mm:ssXXX")]
 18        [InlineData("2015-03-15T15:02:37-05:00", "yyyy-MM-ddTHH:mm:ssXXX")]
 19
 20        public void DateTimeSupportedPatternsTests(string stringValue, string formatPattern)
 121        {
 122            FormatDescriptor format = new FormatDescriptor { pattern = formatPattern };
 123            DateTimeDT dateTime = new DateTimeDT(stringValue, format);
 124            DatatypeFactory.GetDatatype(stringValue, "dateTime", format);
 125        }
 26
 27        [Theory]
 28        [InlineData("2015-03-15T15:02:37")]
 29        [InlineData("2015-03-15T15:02:14Z")]
 30        [InlineData("2015-03-15T15:02:37-05:00")]
 31
 32        public void DateTimeDatesWithoutFormatTests(string stringValue)
 133        {
 134            FormatDescriptor format = new FormatDescriptor { };
 135            DatatypeFactory.GetDatatype(stringValue, "dateTime", format);
 136        }
 37
 38        [Theory]
 39        [InlineData("05.09.2001T15:00:32")]
 40        [InlineData("03-04-1999T15:02:14Z")]
 41
 42        public void DateTimeInvalidDatesWithoutFormatTests(string stringValue)
 143        {
 144            FormatDescriptor format = new FormatDescriptor { };
 145            Assert.Throws<DatatypeValidationError>(() => DatatypeFactory.GetDatatype(stringValue, "dateTime", format));
 146        }
 47
 48        [Theory]
 49        [InlineData("2015-03-15T15:02:37", "yyyy-MM-ddTHH:mm:ss.SSS")]
 50        [InlineData("2015-03-15T15:02:37.143", "yyyy-MM-ddTHH:mm:ss.SSSSS")]
 51        [InlineData("2015-03-15T15", "yyyy-MM-ddTHH:mm:ss")]
 52        [InlineData("15-03-2032T15:02", "yyyy-MM-ddTHH:mm")]
 53        [InlineData("3/22/2015 15:02+05:00", "M/d/yyyy HH:mm")]
 54        [InlineData("22.03.2015 15:02:37Z", "dd.MM.yyyy HH:mm:ss")]
 55        [InlineData("2015-03-15T15:02:37", "yyyy-MM-ddTHH:mm:ssXXX")]
 56        [InlineData("2015-03T15:02:37-05:00", "yyyy-MM-ddTHH:mm:ssXXX")]
 57
 58        public void DateTimeInvalidValuesWithPatternTests(string stringValue, string formatPattern)
 159        {
 160            FormatDescriptor format = new FormatDescriptor { pattern = formatPattern };
 161            Assert.Throws<DatatypeValidationError>(() => DatatypeFactory.GetDatatype(stringValue, "dateTime", format));
 162        }
 63
 64    }
 65}