@@ -86,7 +86,7 @@ public void Serialize_Null()
86
86
var uuidType = new UuidType ( ) ;
87
87
88
88
// act
89
- object ? serializedValue = uuidType . Serialize ( null ) ;
89
+ var serializedValue = uuidType . Serialize ( null ) ;
90
90
91
91
// assert
92
92
Assert . Null ( serializedValue ) ;
@@ -113,7 +113,7 @@ public void Deserialize_Null()
113
113
var uuidType = new UuidType ( ) ;
114
114
115
115
// act
116
- var success = uuidType . TryDeserialize ( null , out object ? o ) ;
116
+ var success = uuidType . TryDeserialize ( null , out var o ) ;
117
117
118
118
// assert
119
119
Assert . True ( success ) ;
@@ -128,7 +128,7 @@ public void Deserialize_String()
128
128
var guid = Guid . NewGuid ( ) ;
129
129
130
130
// act
131
- var success = uuidType . TryDeserialize ( guid . ToString ( "N" ) , out object ? o ) ;
131
+ var success = uuidType . TryDeserialize ( guid . ToString ( "N" ) , out var o ) ;
132
132
133
133
// assert
134
134
Assert . True ( success ) ;
@@ -143,7 +143,7 @@ public void Deserialize_Guid()
143
143
var guid = Guid . NewGuid ( ) ;
144
144
145
145
// act
146
- var success = uuidType . TryDeserialize ( guid , out object ? o ) ;
146
+ var success = uuidType . TryDeserialize ( guid , out var o ) ;
147
147
148
148
// assert
149
149
Assert . True ( success ) ;
@@ -219,7 +219,7 @@ public void ParseLiteral_NullValueNode()
219
219
NullValueNode literal = NullValueNode . Default ;
220
220
221
221
// act
222
- object ? value = uuidType . ParseLiteral ( literal ) ;
222
+ var value = uuidType . ParseLiteral ( literal ) ;
223
223
224
224
// assert
225
225
Assert . Null ( value ) ;
@@ -283,7 +283,7 @@ public void ParseValue_Int()
283
283
}
284
284
285
285
[ Fact ]
286
- public void EnsureDateTypeKindIsCorret ( )
286
+ public void EnsureDateTypeKindIsCorrect ( )
287
287
{
288
288
// arrange
289
289
var type = new UuidType ( ) ;
@@ -374,12 +374,108 @@ public void Specify_Invalid_Format()
374
374
void Action ( ) => new UuidType ( defaultFormat : 'z' ) ;
375
375
376
376
// assert
377
- #if NETCOREAPP2_1
377
+ #if NETCOREAPP2_1
378
378
Assert . Throws < ArgumentException > ( Action ) . Message
379
379
. MatchSnapshot ( new SnapshotNameExtension ( "NETCOREAPP2_1" ) ) ;
380
- #else
380
+ #else
381
381
Assert . Throws < ArgumentException > ( Action ) . Message . MatchSnapshot ( ) ;
382
- #endif
382
+ #endif
383
+ }
384
+
385
+ [ InlineData ( false ) ]
386
+ [ InlineData ( true ) ]
387
+ [ Theory ]
388
+ public void Parse_Guid_String_With_Appended_String ( bool enforceFormat )
389
+ {
390
+ // arrange
391
+ var input = new StringValueNode ( "fbdef721-93c5-4267-8f92-ca27b60aa51f-foobar" ) ;
392
+ var uuidType = new UuidType ( defaultFormat : 'D' , enforceFormat : enforceFormat ) ;
393
+
394
+ // act
395
+ void Fail ( ) => uuidType . ParseLiteral ( input ) ;
396
+
397
+ // assert
398
+ Assert . Throws < SerializationException > ( Fail ) ;
399
+ }
400
+
401
+ [ InlineData ( false ) ]
402
+ [ InlineData ( true ) ]
403
+ [ Theory ]
404
+ public void Parse_Guid_Valid_Input ( bool enforceFormat )
405
+ {
406
+ // arrange
407
+ var input = new StringValueNode ( "fbdef721-93c5-4267-8f92-ca27b60aa51f" ) ;
408
+ var uuidType = new UuidType ( defaultFormat : 'D' , enforceFormat : enforceFormat ) ;
409
+
410
+ // act
411
+ var guid = ( Guid ) uuidType . ParseLiteral ( input ) ! ;
412
+
413
+ // assert
414
+ Assert . Equal ( input . Value , guid . ToString ( "D" ) ) ;
415
+ }
416
+
417
+ [ InlineData ( false ) ]
418
+ [ InlineData ( true ) ]
419
+ [ Theory ]
420
+ public void Deserialize_Guid_String_With_Appended_String ( bool enforceFormat )
421
+ {
422
+ // arrange
423
+ var input = "fbdef721-93c5-4267-8f92-ca27b60aa51f-foobar" ;
424
+ var uuidType = new UuidType ( defaultFormat : 'D' , enforceFormat : enforceFormat ) ;
425
+
426
+ // act
427
+ void Fail ( ) => uuidType . Deserialize ( input ) ;
428
+
429
+ // assert
430
+ Assert . Throws < SerializationException > ( Fail ) ;
431
+ }
432
+
433
+ [ InlineData ( false ) ]
434
+ [ InlineData ( true ) ]
435
+ [ Theory ]
436
+ public void Deserialize_Guid_Valid_Format ( bool enforceFormat )
437
+ {
438
+ // arrange
439
+ var input = "fbdef721-93c5-4267-8f92-ca27b60aa51f" ;
440
+ var uuidType = new UuidType ( defaultFormat : 'D' , enforceFormat : enforceFormat ) ;
441
+
442
+ // act
443
+ var guid = ( Guid ) uuidType . Deserialize ( input ) ! ;
444
+
445
+ // assert
446
+ Assert . Equal ( input , guid . ToString ( "D" ) ) ;
447
+ }
448
+
449
+ [ InlineData ( false ) ]
450
+ [ InlineData ( true ) ]
451
+ [ Theory ]
452
+ public void IsInstanceOf_Guid_String_With_Appended_String ( bool enforceFormat )
453
+ {
454
+ // arrange
455
+ var input = new StringValueNode ( "fbdef721-93c5-4267-8f92-ca27b60aa51f-foobar" ) ;
456
+ var uuidType = new UuidType ( defaultFormat : 'D' , enforceFormat : enforceFormat ) ;
457
+
458
+ // act
459
+ var result = uuidType . IsInstanceOfType ( input ) ;
460
+
461
+ // assert
462
+ Assert . False ( result ) ;
463
+ }
464
+
465
+ [ InlineData ( false ) ]
466
+ [ InlineData ( true ) ]
467
+ [ Theory ]
468
+ public void IsInstanceOf_Guid_Valid_Format ( bool enforceFormat )
469
+ {
470
+ // arrange
471
+ var input = new StringValueNode ( "fbdef721-93c5-4267-8f92-ca27b60aa51f" ) ;
472
+ var uuidType = new UuidType ( defaultFormat : 'D' , enforceFormat : enforceFormat ) ;
473
+
474
+ // act
475
+ var result = uuidType . IsInstanceOfType ( input ) ;
476
+
477
+ // assert
478
+ Assert . True ( result ) ;
383
479
}
384
480
}
385
481
}
0 commit comments