Skip to content
This repository was archived by the owner on Dec 24, 2022. It is now read-only.

Commit 2a8570a

Browse files
committed
Fixed tests to not depend on the timezone of the machine they're running on
1 parent 5e22602 commit 2a8570a

File tree

3 files changed

+17
-18
lines changed

3 files changed

+17
-18
lines changed

tests/ServiceStack.Text.Tests/AdhocModelTests.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -780,20 +780,20 @@ public void Can_serialize_ICollection()
780780
[Test]
781781
public void Can_parse_different_3_part_date_formats()
782782
{
783-
Assert.That("28/06/2015".FromJsv<DateTime>().ToLongDateString(),
784-
Is.EqualTo("Sunday, June 28, 2015"));
783+
Assert.That("28/06/2015".FromJsv<DateTime>(),
784+
Is.EqualTo(new DateTime(2015, 6, 28)));
785785

786-
Assert.That("6/28/2015".FromJsv<DateTime>().ToLongDateString(),
787-
Is.EqualTo("Sunday, June 28, 2015"));
786+
Assert.That("6/28/2015".FromJsv<DateTime>(),
787+
Is.EqualTo(new DateTime(2015, 6, 28)));
788788

789789
DateTimeSerializer.OnParseErrorFn = (s, ex) =>
790790
{
791791
var parts = s.Split('/');
792792
return new DateTime(int.Parse(parts[2]), int.Parse(parts[0]), int.Parse(parts[1]));
793793
};
794794

795-
Assert.That("06/28/2015".FromJsv<DateTime>().ToLongDateString(),
796-
Is.EqualTo("Sunday, June 28, 2015"));
795+
Assert.That("06/28/2015".FromJsv<DateTime>(),
796+
Is.EqualTo(new DateTime(2015, 6, 28)));
797797

798798
DateTimeSerializer.OnParseErrorFn = null;
799799
}

tests/ServiceStack.Text.Tests/JsonTests/InheritAbstractTests.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,11 +48,11 @@ public void Can_serialize_class_with_list_that_classes_inherited_from_non_abstra
4848
// serialize to JSON using ServiceStack
4949
string jsonString = JsonSerializer.SerializeToString(blockBuster);
5050

51-
const string expected = "{\"Address\":\"Av. República do Líbano, 2175 - Indinópolis, São Paulo - SP, 04502-300\",\"Movies\":[{\"Title\":\"The Shawshank Redemption\",\"ImdbId\":\"tt0111161\",\"Rating\":9.2,\"Director\":\"Frank Darabont\",\"ReleaseDate\":\"\\/Date(792950400000-0000)\\/\",\"TagLine\":\"Fear can hold you prisoner. Hope can set you free.\",\"Genres\":[\"Crime\",\"Drama\"]},{\"__type\":\"ServiceStack.Text.Tests.JsonTests.MovieChild, ServiceStack.Text.Tests\",\"Oscar\":[\"Best Picture - 1972\",\"Best Actor - 1972\",\"Best Adapted Screenplay - 1972\"],\"Title\":\"The Godfather\",\"ImdbId\":\"tt0068646\",\"Rating\":9.2,\"Director\":\"Francis Ford Coppola\",\"ReleaseDate\":\"\\/Date(70214400000-0000)\\/\",\"TagLine\":\"An offer you can't refuse.\",\"Genres\":[\"Crime\",\"Drama\",\"Thriller\"]}]}";
51+
var expected = "{\"Address\":\"Av. República do Líbano, 2175 - Indinópolis, São Paulo - SP, 04502-300\",\"Movies\":[{\"Title\":\"The Shawshank Redemption\",\"ImdbId\":\"tt0111161\",\"Rating\":9.2,\"Director\":\"Frank Darabont\",\"ReleaseDate\":"
52+
+ JsonSerializer.SerializeToString(MoviesData.Movies[0].ReleaseDate) + ",\"TagLine\":\"Fear can hold you prisoner. Hope can set you free.\",\"Genres\":[\"Crime\",\"Drama\"]},{\"__type\":\"ServiceStack.Text.Tests.JsonTests.MovieChild, ServiceStack.Text.Tests\",\"Oscar\":[\"Best Picture - 1972\",\"Best Actor - 1972\",\"Best Adapted Screenplay - 1972\"],\"Title\":\"The Godfather\",\"ImdbId\":\"tt0068646\",\"Rating\":9.2,\"Director\":\"Francis Ford Coppola\",\"ReleaseDate\":"
53+
+ JsonSerializer.SerializeToString(child.ReleaseDate) + ",\"TagLine\":\"An offer you can't refuse.\",\"Genres\":[\"Crime\",\"Drama\",\"Thriller\"]}]}";
5254

53-
Assert.That(jsonString, Is.EqualTo(expected).
54-
Or.EqualTo(expected.Replace("792997200000", "792950400000")
55-
.Replace("70261200000", "70214400000")));
55+
Assert.That(jsonString, Is.EqualTo(expected));
5656
}
5757
}
5858
}

tests/ServiceStack.Text.Tests/JsonTests/JsonDateTimeTests.cs

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -523,12 +523,10 @@ public void Can_serialize_json_date_rfc1123_local()
523523
var dateTime = new DateTime(1994, 11, 24, 12, 34, 56, DateTimeKind.Local);
524524
var ssJson = JsonSerializer.SerializeToString(dateTime);
525525

526-
var offsetSpan = TimeZoneInfo.Local.GetUtcOffset(dateTime);
527-
var offset = offsetSpan.ToTimeOffsetString(":");
526+
var dateTimeUtc = dateTime.ToUniversalTime();
527+
var ssJsonUtc = JsonSerializer.SerializeToString(dateTimeUtc);
528528

529-
Assert.That(ssJson, Is.EqualTo(@"""Thu, 24 Nov 1994 04:34:56 GMT"""). //Convert to UTC on wire
530-
Or.EqualTo(@"""Thu, 24 Nov 1994 17:34:56 GMT""").
531-
Or.EqualTo(@"""Thu, 24 Nov 1994 20:34:56 GMT"""));
529+
Assert.That(ssJson, Is.EqualTo(ssJsonUtc)); //Convert to UTC on wire
532530
JsConfig.Reset();
533531
}
534532

@@ -540,9 +538,10 @@ public void Can_serialize_json_date_rfc1123_unspecified()
540538
var dateTime = new DateTime(1994, 11, 24, 12, 34, 56, DateTimeKind.Unspecified);
541539
var ssJson = JsonSerializer.SerializeToString(dateTime);
542540

543-
Assert.That(ssJson, Is.EqualTo(@"""Thu, 24 Nov 1994 04:34:56 GMT"""). //Convert to UTC on wire
544-
Or.EqualTo(@"""Thu, 24 Nov 1994 17:34:56 GMT""").
545-
Or.EqualTo(@"""Thu, 24 Nov 1994 20:34:56 GMT"""));
541+
var dateTimeUtc = dateTime.ToUniversalTime();
542+
var ssJsonUtc = JsonSerializer.SerializeToString(dateTimeUtc);
543+
544+
Assert.That(ssJson, Is.EqualTo(ssJsonUtc)); //Convert to UTC on wire
546545
JsConfig.Reset();
547546
}
548547

0 commit comments

Comments
 (0)