Skip to content

Commit eed0469

Browse files
JarLobmichaelnebel
authored andcommitted
Add tests
1 parent f05d4b8 commit eed0469

File tree

3 files changed

+103
-4
lines changed

3 files changed

+103
-4
lines changed

csharp/ql/test/library-tests/frameworks/microsoft/AspNetCore.cs

Lines changed: 95 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,100 @@
11
using Microsoft.AspNetCore.Mvc;
22

3-
public class HomeController : Controller
3+
// has sufix "Controller"
4+
public class HomeController
5+
{
6+
public string Index()
7+
{
8+
return "This is Home Controller";
9+
}
10+
}
11+
12+
// derived from Microsoft.AspNetCore.Mvc.Controller which has suffix "Controller"
13+
public class HomeController1 : Controller
14+
{
15+
public string Index()
16+
{
17+
return "This is Home Controller";
18+
}
19+
}
20+
21+
// derived from Microsoft.AspNetCore.Mvc.ControllerBase which has attribute [Microsoft.AspNetCore.Mvc.Controller]
22+
public class HomeController2 : ControllerBase
23+
{
24+
public string Index()
25+
{
26+
return "This is Home Controller";
27+
}
28+
}
29+
30+
// has [ApiController] attribute
31+
[ApiController]
32+
public class HomeController3
33+
{
34+
public string Index()
35+
{
36+
return "This is Home Controller";
37+
}
38+
}
39+
40+
// has [Controller] attribute
41+
[Controller]
42+
public class HomeController4
43+
{
44+
public string Index()
45+
{
46+
return "This is Home Controller";
47+
}
48+
}
49+
50+
// derived from a class that is a controller
51+
public class HomeController5 : HomeController4
52+
{
53+
public string Index()
54+
{
55+
return "This is Home Controller";
56+
}
57+
}
58+
59+
// is not public
60+
internal class NotHomeController : Controller
61+
{
62+
public string Index()
63+
{
64+
return "This is Home Controller";
65+
}
66+
}
67+
68+
// is abstract
69+
public abstract class NotHomeController2 : Controller
70+
{
71+
public string Index()
72+
{
73+
return "This is Home Controller";
74+
}
75+
}
76+
77+
// contains generic paramiters
78+
public class NotHomeController3<T> : Controller
79+
{
80+
public string Index()
81+
{
82+
return "This is Home Controller";
83+
}
84+
}
85+
86+
// has [NonController] attribute
87+
[NonController]
88+
public class NotHomeController4 : Controller
89+
{
90+
public string Index()
91+
{
92+
return "This is Home Controller";
93+
}
94+
}
95+
96+
// derived from a class that has [NonController] attribute
97+
public class NotController : NotHomeController4
498
{
599
public string Index()
6100
{
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
| AspNetCore.cs:4:14:4:27 | HomeController |
2+
| AspNetCore.cs:13:14:13:28 | HomeController1 |
3+
| AspNetCore.cs:22:14:22:28 | HomeController2 |
4+
| AspNetCore.cs:32:14:32:28 | HomeController3 |
5+
| AspNetCore.cs:42:14:42:28 | HomeController4 |
6+
| AspNetCore.cs:51:14:51:28 | HomeController5 |
Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
1-
semmle-extractor-options: --load-sources-from-project:../../../resources/stubs/_frameworks/Microsoft.AspNetCore.App/Microsoft.AspNetCore.App.csproj
2-
semmle-extractor-options: /nostdlib
3-
semmle-extractor-options: /noconfig
1+
semmle-extractor-options: --load-sources-from-project:${testdir}/../../../resources/stubs/_frameworks/Microsoft.AspNetCore.App/Microsoft.AspNetCore.App.csproj
2+
semmle-extractor-options: /nostdlib /noconfig

0 commit comments

Comments
 (0)