@@ -1,4 +1,4 @@
|
||||
namespace Railway.Tests.Errors;
|
||||
namespace Raliway.Tests.Errors;
|
||||
|
||||
public class Serialization
|
||||
{
|
||||
@@ -8,18 +8,17 @@ public class Serialization
|
||||
// Given
|
||||
Error many_errors = new ManyErrors(
|
||||
[
|
||||
Error.New("err1", "msg1", new KeyValuePair<string, string>[]
|
||||
{
|
||||
Error.New("err1", "msg1",
|
||||
[
|
||||
new("ext", "ext_value"),
|
||||
}),
|
||||
]),
|
||||
Error.New(new Exception("msg2")),
|
||||
]);
|
||||
// When
|
||||
var result = JsonSerializer.Serialize(many_errors);
|
||||
// Then
|
||||
Assert.Equal(
|
||||
expected: "[{\"type\":\"err1\",\"msg\":\"msg1\",\"ext\":\"ext_value\"},{\"type\":\"System.Exception\",\"msg\":\"msg2\"}]",
|
||||
result);
|
||||
result.ShouldBe(
|
||||
"[{\"type\":\"err1\",\"msg\":\"msg1\",\"ext\":\"ext_value\"},{\"type\":\"System.Exception\",\"msg\":\"msg2\"}]");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -30,23 +29,17 @@ public class Serialization
|
||||
// When
|
||||
var result = JsonSerializer.Deserialize<Error>(json);
|
||||
// Then
|
||||
Assert.IsType<ManyErrors>(result);
|
||||
result.ShouldBeOfType<ManyErrors>();
|
||||
ManyErrors manyErrors = (ManyErrors)result;
|
||||
|
||||
Assert.True(manyErrors.Count == 2);
|
||||
Assert.Equal(
|
||||
expected: Error.Many(
|
||||
manyErrors.Count.ShouldBe(2);
|
||||
manyErrors.ShouldBe(
|
||||
Error.Many(
|
||||
Error.New("err1", "msg1"),
|
||||
Error.New(new Exception("msg2"))
|
||||
).ToEnumerable(),
|
||||
manyErrors
|
||||
);
|
||||
Assert.Equal(
|
||||
expected: "ext_value1",
|
||||
manyErrors[0]["ext1"]);
|
||||
Assert.Equal(
|
||||
expected: "ext_value2",
|
||||
manyErrors[0]["ext2"]);
|
||||
).ToEnumerable());
|
||||
manyErrors[0]["ext1"].ShouldBe("ext_value1");
|
||||
manyErrors[0]["ext2"].ShouldBe("ext_value2");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -57,20 +50,14 @@ public class Serialization
|
||||
// When
|
||||
var result = JsonSerializer.Deserialize<ManyErrors>(json);
|
||||
// Then
|
||||
Assert.NotNull(result);
|
||||
Assert.True(result.Count == 2);
|
||||
Assert.Equal(
|
||||
expected: Error.Many(
|
||||
result.ShouldNotBeNull();
|
||||
result.Count.ShouldBe(2);
|
||||
result.ShouldBe(
|
||||
Error.Many(
|
||||
Error.New("err1", "msg1"),
|
||||
Error.New(new Exception("msg2"))
|
||||
).ToEnumerable(),
|
||||
result
|
||||
);
|
||||
Assert.Equal(
|
||||
expected: "ext_value1",
|
||||
result[0]["ext1"]);
|
||||
Assert.Equal(
|
||||
expected: "ext_value2",
|
||||
result[0]["ext2"]);
|
||||
).ToEnumerable());
|
||||
result[0]["ext1"].ShouldBe("ext_value1");
|
||||
result[0]["ext2"].ShouldBe("ext_value2");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user