@@ -11,27 +11,29 @@ public class CodeFix
1111 private static readonly ExpectedDiagnostic ExpectedDiagnostic = ExpectedDiagnostic . Create ( ASP003ParameterType . Descriptor ) ;
1212 private static readonly CodeFixProvider Fix = new ParameterTypeFix ( ) ;
1313
14- [ TestCase ( "{id:int}" , "int id" ) ]
15- [ TestCase ( "api/orders/{id:int}" , "int id" ) ]
16- [ TestCase ( "api/orders/{id:int:min(1)}" , "int id" ) ]
17- [ TestCase ( "api/orders/{id:bool}" , "bool id" ) ]
18- [ TestCase ( "api/orders/{id:datetime}" , "System.DateTime id" ) ]
19- [ TestCase ( "api/orders/{id:decimal}" , "decimal id" ) ]
20- [ TestCase ( "api/orders/{id:double}" , "double id" ) ]
21- [ TestCase ( "api/orders/{id:float}" , "float id" ) ]
22- [ TestCase ( "api/orders/{id:guid}" , "System.Guid id" ) ]
23- [ TestCase ( "api/orders/{id:long}" , "long id" ) ]
24- [ TestCase ( "api/orders/{id:minlength(1)}" , "string id" ) ]
25- [ TestCase ( "api/orders/{id:maxlength(1)}" , "string id" ) ]
26- [ TestCase ( "api/orders/{id:length(1)}" , "string id" ) ]
27- [ TestCase ( "api/orders/{id:length(1,3)}" , "string id" ) ]
28- [ TestCase ( "api/orders/{id:min(1)}" , "long id" ) ]
29- [ TestCase ( "api/orders/{id:max(10)}" , "long id" ) ]
30- [ TestCase ( "api/orders/{id:range(0,10)}" , "long id" ) ]
31- [ TestCase ( "api/orders/{id:alpha}" , "string id" ) ]
32- [ TestCase ( "api/orders/{id:regex(a-(0|1))}" , "string id" ) ]
33- [ TestCase ( "api/orders/{id:regex(^\\ \\ d{{3}}-\\ \\ d{{2}}-\\ \\ d{4}$)}" , "string id" ) ]
34- public void ExplicitType ( string template , string parameter )
14+ [ TestCase ( "\" {id:int}\" " , "int id" ) ]
15+ [ TestCase ( "\" api/orders/{id:int}\" " , "int id" ) ]
16+ [ TestCase ( "\" api/orders/{id:int:min(1)}\" " , "int id" ) ]
17+ [ TestCase ( "\" api/orders/{id:bool}\" " , "bool id" ) ]
18+ [ TestCase ( "\" api/orders/{id:datetime}\" " , "System.DateTime id" ) ]
19+ [ TestCase ( "\" api/orders/{id:decimal}\" " , "decimal id" ) ]
20+ [ TestCase ( "\" api/orders/{id:double}\" " , "double id" ) ]
21+ [ TestCase ( "\" api/orders/{id:float}\" " , "float id" ) ]
22+ [ TestCase ( "\" api/orders/{id:guid}\" " , "System.Guid id" ) ]
23+ [ TestCase ( "\" api/orders/{id:long}\" " , "long id" ) ]
24+ [ TestCase ( "\" api/orders/{id:minlength(1)}\" " , "string id" ) ]
25+ [ TestCase ( "\" api/orders/{id:maxlength(1)}\" " , "string id" ) ]
26+ [ TestCase ( "\" api/orders/{id:length(1)}\" " , "string id" ) ]
27+ [ TestCase ( "\" api/orders/{id:length(1,3)}\" " , "string id" ) ]
28+ [ TestCase ( "\" api/orders/{id:min(1)}\" " , "long id" ) ]
29+ [ TestCase ( "\" api/orders/{id:max(10)}\" " , "long id" ) ]
30+ [ TestCase ( "\" api/orders/{id:range(0,10)}\" " , "long id" ) ]
31+ [ TestCase ( "\" api/orders/{id:alpha}\" " , "string id" ) ]
32+ [ TestCase ( "\" api/orders/{id:regex(a-(0|1))}\" " , "string id" ) ]
33+ [ TestCase ( "\" api/orders/{id:regex(^\\ \\ d{{3}}-\\ \\ d{{2}}-\\ \\ d{4}$)}\" " , "string id" ) ]
34+ [ TestCase ( "@\" api/orders/{id:regex(^\\ d{{3}}-\\ d{{2}}-\\ d{4}$)}\" " , "string id" ) ]
35+ [ TestCase ( "@\" api/orders/{id:regex(^\\ \\ d{{3}}-\\ \\ d{{2}}-\\ \\ d{4}$)}\" " , "string id" ) ]
36+ public void When ( string template , string parameter )
3537 {
3638 var code = @"
3739namespace ValidCode
@@ -47,7 +49,7 @@ public IActionResult GetId(↓byte id)
4749 return this.Ok(id);
4850 }
4951 }
50- }" . AssertReplace ( "api/orders/{id:int}" , template ) ;
52+ }" . AssertReplace ( "\" api/orders/{id:int}\" " , template ) ;
5153
5254 var fixedCode = @"
5355namespace ValidCode
@@ -63,7 +65,7 @@ public IActionResult GetId(byte id)
6365 return this.Ok(id);
6466 }
6567 }
66- }" . AssertReplace ( "api/orders/{id:int}" , template )
68+ }" . AssertReplace ( "\" api/orders/{id:int}\" " , template )
6769 . AssertReplace ( "byte id" , parameter ) ;
6870 AnalyzerAssert . CodeFix ( Analyzer , Fix , ExpectedDiagnostic , code , fixedCode ) ;
6971 }
0 commit comments