Skip to content

Commit ffa2ce5

Browse files
CopilotScarletKuro
andcommitted
Improve test naming and model class names for better clarity
Co-authored-by: ScarletKuro <19953225+ScarletKuro@users.noreply.github.com>
1 parent 487f2ae commit ffa2ce5

6 files changed

Lines changed: 51 additions & 36 deletions

File tree

src/Scarlet.System.Text.Json.DateTimeConverter.Tests/JsonDateTimeConverterAttributeTests.cs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ namespace Scarlet.System.Text.Json.DateTimeConverter.Tests;
66
public class JsonDateTimeConverterAttributeTests
77
{
88
[Fact]
9-
public void SerializeAndDeserialize_DateTime_ShouldMatchOriginal()
9+
public void ReflectionBased_DateTime_WithAttribute()
1010
{
1111
// Arrange
1212
var options = new JsonSerializerOptions
@@ -25,7 +25,7 @@ public void SerializeAndDeserialize_DateTime_ShouldMatchOriginal()
2525
}
2626

2727
[Fact]
28-
public void SerializeAndDeserialize_NullableDateTime_ShouldMatchOriginal()
28+
public void ReflectionBased_NullableDateTime_WithAttribute()
2929
{
3030
// Arrange
3131
var options = new JsonSerializerOptions
@@ -44,7 +44,7 @@ public void SerializeAndDeserialize_NullableDateTime_ShouldMatchOriginal()
4444
}
4545

4646
[Fact]
47-
public void SerializeAndDeserialize_DateTimeOffset_ShouldMatchOriginal()
47+
public void ReflectionBased_DateTimeOffset_WithAttribute()
4848
{
4949
// Arrange
5050
var options = new JsonSerializerOptions
@@ -63,7 +63,7 @@ public void SerializeAndDeserialize_DateTimeOffset_ShouldMatchOriginal()
6363
}
6464

6565
[Fact]
66-
public void SerializeAndDeserialize_NullableDateTimeOffset_ShouldMatchOriginal()
66+
public void ReflectionBased_NullableDateTimeOffset_WithAttribute()
6767
{
6868
// Arrange
6969
var options = new JsonSerializerOptions
@@ -82,14 +82,14 @@ public void SerializeAndDeserialize_NullableDateTimeOffset_ShouldMatchOriginal()
8282
}
8383

8484
[Fact]
85-
public void SerializeAndDeserialize_TestModel_ShouldMatchOriginal()
85+
public void ReflectionBased_CompleteModel_WithAttribute()
8686
{
8787
// Arrange
8888
var options = new JsonSerializerOptions
8989
{
9090
WriteIndented = true
9191
};
92-
var originalModel = new TestModelJsonDateTimeConverter
92+
var originalModel = new ReflectionBasedModel
9393
{
9494
DateTimeProperty = new DateTime(2023, 10, 1, 12, 0, 0, DateTimeKind.Utc),
9595
NullableDateTimeProperty = new DateTime(2023, 10, 1, 12, 0, 0, DateTimeKind.Utc),
@@ -107,7 +107,7 @@ public void SerializeAndDeserialize_TestModel_ShouldMatchOriginal()
107107

108108
// Act
109109
var json = JsonSerializer.Serialize(originalModel, options);
110-
var deserializedModel = JsonSerializer.Deserialize<TestModelJsonDateTimeConverter>(json, options);
110+
var deserializedModel = JsonSerializer.Deserialize<ReflectionBasedModel>(json, options);
111111

112112
// Assert
113113
Assert.NotNull(deserializedModel);
@@ -119,14 +119,14 @@ public void SerializeAndDeserialize_TestModel_ShouldMatchOriginal()
119119
}
120120

121121
[Fact]
122-
public void SerializeAndDeserialize_TestModel_WithNullValues_ShouldMatchOriginal()
122+
public void ReflectionBased_CompleteModel_WithAttribute_WithNullValues()
123123
{
124124
// Arrange
125125
var options = new JsonSerializerOptions
126126
{
127127
WriteIndented = true
128128
};
129-
var originalModel = new TestModelJsonDateTimeConverter
129+
var originalModel = new ReflectionBasedModel
130130
{
131131
DateTimeProperty = new DateTime(2023, 10, 1, 12, 0, 0, DateTimeKind.Utc),
132132
NullableDateTimeProperty = null,
@@ -144,7 +144,7 @@ public void SerializeAndDeserialize_TestModel_WithNullValues_ShouldMatchOriginal
144144

145145
// Act
146146
var json = JsonSerializer.Serialize(originalModel, options);
147-
var deserializedModel = JsonSerializer.Deserialize<TestModelJsonDateTimeConverter>(json, options);
147+
var deserializedModel = JsonSerializer.Deserialize<ReflectionBasedModel>(json, options);
148148

149149
// Assert
150150
Assert.NotNull(deserializedModel);

src/Scarlet.System.Text.Json.DateTimeConverter.Tests/JsonDateTimeFormatConverterTests.cs

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,14 @@ namespace Scarlet.System.Text.Json.DateTimeConverter.Tests;
66
public class JsonDateTimeFormatConverterTests
77
{
88
[Fact]
9-
public void SerializeAndDeserialize_Reflection_TestModel_ShouldMatchOriginal()
9+
public void ReflectionBased_CompleteModel_WithFormatConverter()
1010
{
1111
// Arrange
1212
var options = new JsonSerializerOptions
1313
{
1414
WriteIndented = true
1515
};
16-
var originalModel = new TestModelSourceGenerator
16+
var originalModel = new SourceGeneratorModel
1717
{
1818
DateTimeProperty = new DateTime(2023, 10, 1, 12, 0, 0, DateTimeKind.Utc),
1919
NullableDateTimeProperty = new DateTime(2023, 10, 1, 12, 0, 0, DateTimeKind.Utc),
@@ -31,7 +31,7 @@ public void SerializeAndDeserialize_Reflection_TestModel_ShouldMatchOriginal()
3131

3232
// Act
3333
var json = JsonSerializer.Serialize(originalModel, options);
34-
var deserializedModel = JsonSerializer.Deserialize<TestModelSourceGenerator>(json, options);
34+
var deserializedModel = JsonSerializer.Deserialize<SourceGeneratorModel>(json, options);
3535

3636
// Assert
3737
Assert.NotNull(deserializedModel);
@@ -43,14 +43,14 @@ public void SerializeAndDeserialize_Reflection_TestModel_ShouldMatchOriginal()
4343
}
4444

4545
[Fact]
46-
public void SerializeAndDeserialize_Reflection_TestModel_WithNullValues_ShouldMatchOriginal()
46+
public void ReflectionBased_CompleteModel_WithFormatConverter_WithNullValues()
4747
{
4848
// Arrange
4949
var options = new JsonSerializerOptions
5050
{
5151
WriteIndented = true
5252
};
53-
var originalModel = new TestModelSourceGenerator
53+
var originalModel = new SourceGeneratorModel
5454
{
5555
DateTimeProperty = new DateTime(2023, 10, 1, 12, 0, 0, DateTimeKind.Utc),
5656
NullableDateTimeProperty = null,
@@ -68,7 +68,7 @@ public void SerializeAndDeserialize_Reflection_TestModel_WithNullValues_ShouldMa
6868

6969
// Act
7070
var json = JsonSerializer.Serialize(originalModel, options);
71-
var deserializedModel = JsonSerializer.Deserialize<TestModelSourceGenerator>(json, options);
71+
var deserializedModel = JsonSerializer.Deserialize<SourceGeneratorModel>(json, options);
7272

7373
// Assert
7474
Assert.NotNull(deserializedModel);
@@ -80,12 +80,12 @@ public void SerializeAndDeserialize_Reflection_TestModel_WithNullValues_ShouldMa
8080
}
8181

8282
[Fact]
83-
public void SerializeAndDeserialize_SourceGenerator_TestModel_ShouldMatchOriginal()
83+
public void SourceGenerator_CompleteModel_WithFormatConverter()
8484
{
8585
// Arrange
86-
var testModelType = typeof(TestModelSourceGenerator);
86+
var testModelType = typeof(SourceGeneratorModel);
8787
var context = TestModelSourceGeneratorJsonSerializerContext.Default;
88-
var originalModel = new TestModelSourceGenerator
88+
var originalModel = new SourceGeneratorModel
8989
{
9090
DateTimeProperty = new DateTime(2023, 10, 1, 12, 0, 0, DateTimeKind.Utc),
9191
NullableDateTimeProperty = new DateTime(2023, 10, 1, 12, 0, 0, DateTimeKind.Utc),
@@ -103,7 +103,7 @@ public void SerializeAndDeserialize_SourceGenerator_TestModel_ShouldMatchOrigina
103103

104104
// Act
105105
var json = JsonSerializer.Serialize(originalModel, testModelType, context);
106-
var deserializedModel = (TestModelSourceGenerator?)JsonSerializer.Deserialize(json, testModelType, context);
106+
var deserializedModel = (SourceGeneratorModel?)JsonSerializer.Deserialize(json, testModelType, context);
107107

108108
// Assert
109109
Assert.NotNull(deserializedModel);
@@ -115,15 +115,15 @@ public void SerializeAndDeserialize_SourceGenerator_TestModel_ShouldMatchOrigina
115115
}
116116

117117
[Fact]
118-
public void SerializeAndDeserialize_SourceGenerator_TypeInfoResolver_TestModel_ShouldMatchOriginal()
118+
public void SourceGenerator_WithResolver_WithAttribute_UsingOptions()
119119
{
120120
// Arrange
121121
var sourceGenOptions = new JsonSerializerOptions
122122
{
123123
WriteIndented = true,
124124
TypeInfoResolver = new DateTimeConverterResolver(TestModelSourceGeneratorJsonSerializerContext.Default)
125125
};
126-
var originalModel = new TestModelSourceGeneratorAttributes
126+
var originalModel = new SourceGeneratorWithResolverModel
127127
{
128128
DateTimeProperty = new DateTime(2023, 10, 1, 12, 0, 0, DateTimeKind.Utc),
129129
NullableDateTimeProperty = new DateTime(2023, 10, 1, 12, 0, 0, DateTimeKind.Utc),
@@ -141,7 +141,7 @@ public void SerializeAndDeserialize_SourceGenerator_TypeInfoResolver_TestModel_S
141141

142142
// Act
143143
var json = JsonSerializer.Serialize(originalModel, sourceGenOptions);
144-
var deserializedModel = JsonSerializer.Deserialize<TestModelSourceGenerator>(json, sourceGenOptions);
144+
var deserializedModel = JsonSerializer.Deserialize<SourceGeneratorModel>(json, sourceGenOptions);
145145

146146
// Assert
147147
Assert.NotNull(deserializedModel);
@@ -153,12 +153,12 @@ public void SerializeAndDeserialize_SourceGenerator_TypeInfoResolver_TestModel_S
153153
}
154154

155155
[Fact]
156-
public void SerializeAndDeserialize_SourceGeneratorWithResolver_JsonSerializerContext_TestModel_ShouldMatchOriginal()
156+
public void SourceGenerator_WithResolver_WithAttribute_UsingContext()
157157
{
158158
// Arrange
159-
var testModelType = typeof(TestModelSourceGeneratorAttributes);
159+
var testModelType = typeof(SourceGeneratorWithResolverModel);
160160
var context = new DateTimeConverterResolver(TestModelSourceGeneratorJsonSerializerContext.Default);
161-
var originalModel = new TestModelSourceGeneratorAttributes
161+
var originalModel = new SourceGeneratorWithResolverModel
162162
{
163163
DateTimeProperty = new DateTime(2023, 10, 1, 12, 0, 0, DateTimeKind.Utc),
164164
NullableDateTimeProperty = new DateTime(2023, 10, 1, 12, 0, 0, DateTimeKind.Utc),
@@ -176,7 +176,7 @@ public void SerializeAndDeserialize_SourceGeneratorWithResolver_JsonSerializerCo
176176

177177
// Act
178178
var json = JsonSerializer.Serialize(originalModel, testModelType, context);
179-
var deserializedModel = (TestModelSourceGeneratorAttributes?)JsonSerializer.Deserialize(json, testModelType, context);
179+
var deserializedModel = (SourceGeneratorWithResolverModel?)JsonSerializer.Deserialize(json, testModelType, context);
180180

181181
// Assert
182182
Assert.NotNull(deserializedModel);
@@ -188,12 +188,12 @@ public void SerializeAndDeserialize_SourceGeneratorWithResolver_JsonSerializerCo
188188
}
189189

190190
[Fact]
191-
public void SerializeAndDeserialize_SourceGenerator_TestModel_WithNullValues_ShouldMatchOriginal()
191+
public void SourceGenerator_CompleteModel_WithFormatConverter_WithNullValues()
192192
{
193193
// Arrange
194-
var testModelType = typeof(TestModelSourceGenerator);
194+
var testModelType = typeof(SourceGeneratorModel);
195195
var context = TestModelSourceGeneratorJsonSerializerContext.Default;
196-
var originalModel = new TestModelSourceGenerator
196+
var originalModel = new SourceGeneratorModel
197197
{
198198
DateTimeProperty = new DateTime(2023, 10, 1, 12, 0, 0, DateTimeKind.Utc),
199199
NullableDateTimeProperty = null,
@@ -211,7 +211,7 @@ public void SerializeAndDeserialize_SourceGenerator_TestModel_WithNullValues_Sho
211211

212212
// Act
213213
var json = JsonSerializer.Serialize(originalModel, testModelType, context);
214-
var deserializedModel = (TestModelSourceGenerator?)JsonSerializer.Deserialize(json, testModelType, context);
214+
var deserializedModel = (SourceGeneratorModel?)JsonSerializer.Deserialize(json, testModelType, context);
215215

216216
// Assert
217217
Assert.NotNull(deserializedModel);

src/Scarlet.System.Text.Json.DateTimeConverter.Tests/Model/TestModelJsonDateTimeConverter.cs renamed to src/Scarlet.System.Text.Json.DateTimeConverter.Tests/Model/ReflectionBasedModel.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
namespace Scarlet.System.Text.Json.DateTimeConverter.Tests.Model;
22

3-
public class TestModelJsonDateTimeConverter
3+
/// <summary>
4+
/// Test model demonstrating JsonDateTimeConverter attribute usage with reflection-based serialization.
5+
/// This model uses the JsonDateTimeConverter attribute which only works with reflection-based
6+
/// System.Text.Json serialization (not with source generators).
7+
/// </summary>
8+
public class ReflectionBasedModel
49
{
510
[JsonDateTimeConverter("yyyy-MM-ddTHH:mm:ss")]
611
public DateTime DateTimeProperty { get; set; }

src/Scarlet.System.Text.Json.DateTimeConverter.Tests/Model/TestModelSourceGenerator.cs renamed to src/Scarlet.System.Text.Json.DateTimeConverter.Tests/Model/SourceGeneratorModel.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,12 @@
22

33
namespace Scarlet.System.Text.Json.DateTimeConverter.Tests.Model;
44

5-
public class TestModelSourceGenerator
5+
/// <summary>
6+
/// Test model demonstrating JsonDateTimeFormatConverter usage with source generators.
7+
/// This model uses the JsonConverter attribute with JsonDateTimeFormatConverter which works
8+
/// with both source generator and reflection-based serialization.
9+
/// </summary>
10+
public class SourceGeneratorModel
611
{
712
[JsonConverter(typeof(JsonDateTimeFormatConverter<JsonDateTimeFormat.DateTimeFormat>))]
813
public DateTime DateTimeProperty { get; set; }

src/Scarlet.System.Text.Json.DateTimeConverter.Tests/Model/TestModelSourceGeneratorAttributes.cs renamed to src/Scarlet.System.Text.Json.DateTimeConverter.Tests/Model/SourceGeneratorWithResolverModel.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
namespace Scarlet.System.Text.Json.DateTimeConverter.Tests.Model;
22

3-
public class TestModelSourceGeneratorAttributes
3+
/// <summary>
4+
/// Test model demonstrating JsonDateTimeConverter attribute usage with DateTimeConverterResolver (.NET 9+).
5+
/// This model uses the JsonDateTimeConverter attribute which, when combined with DateTimeConverterResolver,
6+
/// works with source generators in .NET 9 and above.
7+
/// </summary>
8+
public class SourceGeneratorWithResolverModel
49
{
510
[JsonDateTimeConverter("yyyy-MM-ddTHH:mm:ss")]
611
public DateTime DateTimeProperty { get; set; }

src/Scarlet.System.Text.Json.DateTimeConverter.Tests/Model/TestModelSourceGeneratorJsonSerializerContext.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
namespace Scarlet.System.Text.Json.DateTimeConverter.Tests.Model;
44

5-
[JsonSerializable(typeof(TestModelSourceGenerator))]
6-
[JsonSerializable(typeof(TestModelSourceGeneratorAttributes))]
5+
[JsonSerializable(typeof(SourceGeneratorModel))]
6+
[JsonSerializable(typeof(SourceGeneratorWithResolverModel))]
77
[JsonSourceGenerationOptions(WriteIndented = true)]
88
public sealed partial class TestModelSourceGeneratorJsonSerializerContext : JsonSerializerContext;

0 commit comments

Comments
 (0)