@@ -9,11 +9,20 @@ namespace Scarlet.System.Text.Json.DateTimeConverter.Tests;
99/// </summary>
1010public class NullableConverterWriteTests
1111{
12+ private const string TestDateFormat = "yyyy-MM-dd" ;
13+ private const string TestTimeFormat = "HH:mm:ss" ;
14+ private const int TestYear = 2023 ;
15+ private const int TestMonth = 10 ;
16+ private const int TestDay = 15 ;
17+ private const int TestHour = 14 ;
18+ private const int TestMinute = 30 ;
19+ private const int TestSecond = 45 ;
20+
1221 [ Fact ]
1322 public void DateTimeNullableConverter_Write_DirectCallWithNull_WritesNullValue ( )
1423 {
1524 // Arrange
16- var converter = Converters . DateTimeNullableConverter . FromFormat ( "yyyy-MM-dd" ) ;
25+ var converter = Converters . DateTimeNullableConverter . FromFormat ( TestDateFormat ) ;
1726 using var stream = new MemoryStream ( ) ;
1827 using var writer = new Utf8JsonWriter ( stream ) ;
1928 DateTime ? value = null ;
@@ -31,10 +40,10 @@ public void DateTimeNullableConverter_Write_DirectCallWithNull_WritesNullValue()
3140 public void DateTimeNullableConverter_Write_DirectCallWithValue_WritesFormattedDate ( )
3241 {
3342 // Arrange
34- var converter = Converters . DateTimeNullableConverter . FromFormat ( "yyyy-MM-dd" ) ;
43+ var converter = Converters . DateTimeNullableConverter . FromFormat ( TestDateFormat ) ;
3544 using var stream = new MemoryStream ( ) ;
3645 using var writer = new Utf8JsonWriter ( stream ) ;
37- DateTime ? value = new DateTime ( 2023 , 10 , 15 ) ;
46+ DateTime ? value = new DateTime ( TestYear , TestMonth , TestDay ) ;
3847
3948 // Act
4049 converter . Write ( writer , value , new JsonSerializerOptions ( ) ) ;
@@ -49,7 +58,7 @@ public void DateTimeNullableConverter_Write_DirectCallWithValue_WritesFormattedD
4958 public void DateTimeOffsetNullableConverter_Write_DirectCallWithNull_WritesNullValue ( )
5059 {
5160 // Arrange
52- var converter = Converters . DateTimeOffsetNullableConverter . FromFormat ( "yyyy-MM-dd" ) ;
61+ var converter = Converters . DateTimeOffsetNullableConverter . FromFormat ( TestDateFormat ) ;
5362 using var stream = new MemoryStream ( ) ;
5463 using var writer = new Utf8JsonWriter ( stream ) ;
5564 DateTimeOffset ? value = null ;
@@ -67,10 +76,10 @@ public void DateTimeOffsetNullableConverter_Write_DirectCallWithNull_WritesNullV
6776 public void DateTimeOffsetNullableConverter_Write_DirectCallWithValue_WritesFormattedDate ( )
6877 {
6978 // Arrange
70- var converter = Converters . DateTimeOffsetNullableConverter . FromFormat ( "yyyy-MM-dd" ) ;
79+ var converter = Converters . DateTimeOffsetNullableConverter . FromFormat ( TestDateFormat ) ;
7180 using var stream = new MemoryStream ( ) ;
7281 using var writer = new Utf8JsonWriter ( stream ) ;
73- DateTimeOffset ? value = new DateTimeOffset ( 2023 , 10 , 15 , 0 , 0 , 0 , TimeSpan . Zero ) ;
82+ DateTimeOffset ? value = new DateTimeOffset ( TestYear , TestMonth , TestDay , 0 , 0 , 0 , TimeSpan . Zero ) ;
7483
7584 // Act
7685 converter . Write ( writer , value , new JsonSerializerOptions ( ) ) ;
@@ -85,7 +94,7 @@ public void DateTimeOffsetNullableConverter_Write_DirectCallWithValue_WritesForm
8594 public void DateOnlyNullableConverter_Write_DirectCallWithNull_WritesNullValue ( )
8695 {
8796 // Arrange
88- var converter = Converters . DateOnlyNullableConverter . FromFormat ( "yyyy-MM-dd" ) ;
97+ var converter = Converters . DateOnlyNullableConverter . FromFormat ( TestDateFormat ) ;
8998 using var stream = new MemoryStream ( ) ;
9099 using var writer = new Utf8JsonWriter ( stream ) ;
91100 DateOnly ? value = null ;
@@ -103,10 +112,10 @@ public void DateOnlyNullableConverter_Write_DirectCallWithNull_WritesNullValue()
103112 public void DateOnlyNullableConverter_Write_DirectCallWithValue_WritesFormattedDate ( )
104113 {
105114 // Arrange
106- var converter = Converters . DateOnlyNullableConverter . FromFormat ( "yyyy-MM-dd" ) ;
115+ var converter = Converters . DateOnlyNullableConverter . FromFormat ( TestDateFormat ) ;
107116 using var stream = new MemoryStream ( ) ;
108117 using var writer = new Utf8JsonWriter ( stream ) ;
109- DateOnly ? value = new DateOnly ( 2023 , 10 , 15 ) ;
118+ DateOnly ? value = new DateOnly ( TestYear , TestMonth , TestDay ) ;
110119
111120 // Act
112121 converter . Write ( writer , value , new JsonSerializerOptions ( ) ) ;
@@ -121,7 +130,7 @@ public void DateOnlyNullableConverter_Write_DirectCallWithValue_WritesFormattedD
121130 public void TimeOnlyNullableConverter_Write_DirectCallWithNull_WritesNullValue ( )
122131 {
123132 // Arrange
124- var converter = Converters . TimeOnlyNullableConverter . FromFormat ( "HH:mm:ss" ) ;
133+ var converter = Converters . TimeOnlyNullableConverter . FromFormat ( TestTimeFormat ) ;
125134 using var stream = new MemoryStream ( ) ;
126135 using var writer = new Utf8JsonWriter ( stream ) ;
127136 TimeOnly ? value = null ;
@@ -139,10 +148,10 @@ public void TimeOnlyNullableConverter_Write_DirectCallWithNull_WritesNullValue()
139148 public void TimeOnlyNullableConverter_Write_DirectCallWithValue_WritesFormattedTime ( )
140149 {
141150 // Arrange
142- var converter = Converters . TimeOnlyNullableConverter . FromFormat ( "HH:mm:ss" ) ;
151+ var converter = Converters . TimeOnlyNullableConverter . FromFormat ( TestTimeFormat ) ;
143152 using var stream = new MemoryStream ( ) ;
144153 using var writer = new Utf8JsonWriter ( stream ) ;
145- TimeOnly ? value = new TimeOnly ( 14 , 30 , 45 ) ;
154+ TimeOnly ? value = new TimeOnly ( TestHour , TestMinute , TestSecond ) ;
146155
147156 // Act
148157 converter . Write ( writer , value , new JsonSerializerOptions ( ) ) ;
@@ -157,8 +166,8 @@ public void TimeOnlyNullableConverter_Write_DirectCallWithValue_WritesFormattedT
157166 public void DateTimeNullableConverter_Write_NullWriter_ThrowsArgumentNullException ( )
158167 {
159168 // Arrange
160- var converter = Converters . DateTimeNullableConverter . FromFormat ( "yyyy-MM-dd" ) ;
161- DateTime ? value = new DateTime ( 2023 , 10 , 15 ) ;
169+ var converter = Converters . DateTimeNullableConverter . FromFormat ( TestDateFormat ) ;
170+ DateTime ? value = new DateTime ( TestYear , TestMonth , TestDay ) ;
162171
163172 // Act & Assert
164173 Assert . Throws < ArgumentNullException > ( ( ) => converter . Write ( null ! , value , new JsonSerializerOptions ( ) ) ) ;
@@ -168,8 +177,8 @@ public void DateTimeNullableConverter_Write_NullWriter_ThrowsArgumentNullExcepti
168177 public void DateTimeOffsetNullableConverter_Write_NullWriter_ThrowsArgumentNullException ( )
169178 {
170179 // Arrange
171- var converter = Converters . DateTimeOffsetNullableConverter . FromFormat ( "yyyy-MM-dd" ) ;
172- DateTimeOffset ? value = new DateTimeOffset ( 2023 , 10 , 15 , 0 , 0 , 0 , TimeSpan . Zero ) ;
180+ var converter = Converters . DateTimeOffsetNullableConverter . FromFormat ( TestDateFormat ) ;
181+ DateTimeOffset ? value = new DateTimeOffset ( TestYear , TestMonth , TestDay , 0 , 0 , 0 , TimeSpan . Zero ) ;
173182
174183 // Act & Assert
175184 Assert . Throws < ArgumentNullException > ( ( ) => converter . Write ( null ! , value , new JsonSerializerOptions ( ) ) ) ;
@@ -179,8 +188,8 @@ public void DateTimeOffsetNullableConverter_Write_NullWriter_ThrowsArgumentNullE
179188 public void DateOnlyNullableConverter_Write_NullWriter_ThrowsArgumentNullException ( )
180189 {
181190 // Arrange
182- var converter = Converters . DateOnlyNullableConverter . FromFormat ( "yyyy-MM-dd" ) ;
183- DateOnly ? value = new DateOnly ( 2023 , 10 , 15 ) ;
191+ var converter = Converters . DateOnlyNullableConverter . FromFormat ( TestDateFormat ) ;
192+ DateOnly ? value = new DateOnly ( TestYear , TestMonth , TestDay ) ;
184193
185194 // Act & Assert
186195 Assert . Throws < ArgumentNullException > ( ( ) => converter . Write ( null ! , value , new JsonSerializerOptions ( ) ) ) ;
@@ -190,8 +199,8 @@ public void DateOnlyNullableConverter_Write_NullWriter_ThrowsArgumentNullExcepti
190199 public void TimeOnlyNullableConverter_Write_NullWriter_ThrowsArgumentNullException ( )
191200 {
192201 // Arrange
193- var converter = Converters . TimeOnlyNullableConverter . FromFormat ( "HH:mm:ss" ) ;
194- TimeOnly ? value = new TimeOnly ( 14 , 30 , 45 ) ;
202+ var converter = Converters . TimeOnlyNullableConverter . FromFormat ( TestTimeFormat ) ;
203+ TimeOnly ? value = new TimeOnly ( TestHour , TestMinute , TestSecond ) ;
195204
196205 // Act & Assert
197206 Assert . Throws < ArgumentNullException > ( ( ) => converter . Write ( null ! , value , new JsonSerializerOptions ( ) ) ) ;
0 commit comments