Skip to content

Commit 1b7ef73

Browse files
committed
Adds two-part format parser tests
Introduces tests for parsing date ranges using various delimiters including dashes, "TO", and Elasticsearch bracket syntax. Also, adds tests for wildcard support in date range parsing. Addresses and updates existing wildcard parser tests.
1 parent 46a32f7 commit 1b7ef73

File tree

2 files changed

+27
-27
lines changed

2 files changed

+27
-27
lines changed

tests/Exceptionless.DateTimeExtensions.Tests/FormatParsers/PartParsers/WildcardPartParserTests.cs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -44,21 +44,21 @@ public static IEnumerable<object[]> ParseInputs
4444
{
4545
// Valid wildcard inputs
4646
new object[] { "*", false, DateTimeOffset.MinValue },
47-
new object[] { "*", true, DateTimeOffset.MaxValue },
48-
new object[] { " * ", false, DateTimeOffset.MinValue },
49-
new object[] { " * ", true, DateTimeOffset.MaxValue },
50-
new object[] { " * ", false, DateTimeOffset.MinValue },
51-
new object[] { " * ", true, DateTimeOffset.MaxValue },
47+
["*", true, DateTimeOffset.MaxValue],
48+
[" * ", false, DateTimeOffset.MinValue],
49+
[" * ", true, DateTimeOffset.MaxValue],
50+
[" * ", false, DateTimeOffset.MinValue],
51+
[" * ", true, DateTimeOffset.MaxValue],
5252

5353
// Invalid inputs (patterns that should not match a complete wildcard)
54-
new object[] { "blah", false, null },
55-
new object[] { "blah", true, null },
56-
new object[] { "2012", false, null },
57-
new object[] { "2012", true, null },
58-
new object[] { "**", false, null },
54+
["blah", false, null],
55+
["blah", true, null],
56+
["2012", false, null],
57+
["2012", true, null],
58+
["**", false, null],
5959

6060
// This should match the first * in a two-part context like "* *"
61-
new object[] { "* *", false, DateTimeOffset.MinValue },
61+
["* *", false, DateTimeOffset.MinValue],
6262
};
6363
}
6464
}

tests/Exceptionless.DateTimeExtensions.Tests/FormatParsers/TwoPartFormatParserTests.cs

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -24,30 +24,30 @@ public static IEnumerable<object[]> Inputs
2424
return new[] {
2525
// Original dash delimiter syntax
2626
new object[] { "2012-2013", _now.ChangeYear(2012).StartOfYear(), _now.ChangeYear(2013).EndOfYear() },
27-
new object[] { "5 days ago - now", _now.SubtractDays(5).StartOfDay(), _now },
28-
new object[] { "jan-feb", _now.ChangeMonth(1).StartOfMonth(), _now.ChangeMonth(2).EndOfMonth() },
29-
new object[] { "now-this feb", _now, _now.AddYears(1).ChangeMonth(2).EndOfMonth() },
27+
["5 days ago - now", _now.SubtractDays(5).StartOfDay(), _now],
28+
["jan-feb", _now.ChangeMonth(1).StartOfMonth(), _now.ChangeMonth(2).EndOfMonth()],
29+
["now-this feb", _now, _now.AddYears(1).ChangeMonth(2).EndOfMonth()],
3030

3131
// TO delimiter syntax (case-insensitive)
32-
new object[] { "2012 TO 2013", _now.ChangeYear(2012).StartOfYear(), _now.ChangeYear(2013).EndOfYear() },
33-
new object[] { "jan to feb", _now.ChangeMonth(1).StartOfMonth(), _now.ChangeMonth(2).EndOfMonth() },
34-
new object[] { "5 days ago TO now", _now.SubtractDays(5).StartOfDay(), _now },
32+
["2012 TO 2013", _now.ChangeYear(2012).StartOfYear(), _now.ChangeYear(2013).EndOfYear()],
33+
["jan to feb", _now.ChangeMonth(1).StartOfMonth(), _now.ChangeMonth(2).EndOfMonth()],
34+
["5 days ago TO now", _now.SubtractDays(5).StartOfDay(), _now],
3535

3636
// Elasticsearch bracket syntax
37-
new object[] { "[2012 TO 2013]", _now.ChangeYear(2012).StartOfYear(), _now.ChangeYear(2013).EndOfYear() },
38-
new object[] { "{jan TO feb}", _now.ChangeMonth(1).StartOfMonth(), _now.ChangeMonth(2).EndOfMonth() },
39-
new object[] { "[2012-2013]", _now.ChangeYear(2012).StartOfYear(), _now.ChangeYear(2013).EndOfYear() },
37+
["[2012 TO 2013]", _now.ChangeYear(2012).StartOfYear(), _now.ChangeYear(2013).EndOfYear()],
38+
["{jan TO feb}", _now.ChangeMonth(1).StartOfMonth(), _now.ChangeMonth(2).EndOfMonth()],
39+
["[2012-2013]", _now.ChangeYear(2012).StartOfYear(), _now.ChangeYear(2013).EndOfYear()],
4040

4141
// Wildcard support
42-
new object[] { "* TO 2013", DateTime.MinValue, _now.ChangeYear(2013).EndOfYear() },
43-
new object[] { "2012 TO *", _now.ChangeYear(2012).StartOfYear(), DateTime.MaxValue},
44-
new object[] { "[* TO 2013]", DateTime.MinValue, _now.ChangeYear(2013).EndOfYear() },
45-
new object[] { "{2012 TO *}", _now.ChangeYear(2012).StartOfYear(), DateTime.MaxValue },
42+
["* TO 2013", DateTime.MinValue, _now.ChangeYear(2013).EndOfYear()],
43+
["2012 TO *", _now.ChangeYear(2012).StartOfYear(), DateTime.MaxValue],
44+
["[* TO 2013]", DateTime.MinValue, _now.ChangeYear(2013).EndOfYear()],
45+
["{2012 TO *}", _now.ChangeYear(2012).StartOfYear(), DateTime.MaxValue],
4646

4747
// Invalid inputs
48-
new object[] { "blah", null, null },
49-
new object[] { "[invalid", null, null },
50-
new object[] { "invalid}", null, null }
48+
["blah", null, null],
49+
["[invalid", null, null],
50+
["invalid}", null, null]
5151
};
5252
}
5353
}

0 commit comments

Comments
 (0)