Skip to content

Commit 3280aa5

Browse files
authored
Merge pull request #173 from ivaylokenov/view-component-testing
Separated packages for Controllers, Routing, Authentication, Http and Dependency Injection
2 parents e8cc48d + fced14c commit 3280aa5

File tree

619 files changed

+144703
-5208
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

619 files changed

+144703
-5208
lines changed

MyTested.AspNetCore.Mvc.sln

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,36 @@ Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Opt
6868
EndProject
6969
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Options.Test", "test\MyTested.AspNetCore.Mvc.Options.Test\MyTested.AspNetCore.Mvc.Options.Test.xproj", "{1309FBA5-F93D-4F4B-9819-63D298B837FF}"
7070
EndProject
71+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Abstractions", "src\MyTested.AspNetCore.Mvc.Abstractions\MyTested.AspNetCore.Mvc.Abstractions.xproj", "{0346A33A-BB28-4F3C-B788-2CF8C00CA048}"
72+
EndProject
73+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Configuration", "src\MyTested.AspNetCore.Mvc.Configuration\MyTested.AspNetCore.Mvc.Configuration.xproj", "{C4D78D04-D99C-48D7-9339-1E2D0F616A4C}"
74+
EndProject
75+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Http", "src\MyTested.AspNetCore.Mvc.Http\MyTested.AspNetCore.Mvc.Http.xproj", "{5B60F95F-8A87-4166-8C75-1328E7063365}"
76+
EndProject
77+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Routing", "src\MyTested.AspNetCore.Mvc.Routing\MyTested.AspNetCore.Mvc.Routing.xproj", "{2101DDC1-36A4-4D4E-A4D8-EF24D47116A4}"
78+
EndProject
79+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Authentication", "src\MyTested.AspNetCore.Mvc.Authentication\MyTested.AspNetCore.Mvc.Authentication.xproj", "{18B6C20B-9C4B-4444-AD61-8DAF57012599}"
80+
EndProject
81+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Controllers", "src\MyTested.AspNetCore.Mvc.Controllers\MyTested.AspNetCore.Mvc.Controllers.xproj", "{9B2A773E-3A37-44F3-83D0-5D156526FA84}"
82+
EndProject
83+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.DependencyInjection", "src\MyTested.AspNetCore.Mvc.DependencyInjection\MyTested.AspNetCore.Mvc.DependencyInjection.xproj", "{C15BB589-9421-4D9C-A26D-61FF1BCD17AC}"
84+
EndProject
85+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Test.Setups", "test\MyTested.AspNetCore.Mvc.Test.Setups\MyTested.AspNetCore.Mvc.Test.Setups.xproj", "{3F114973-4E8D-4E90-88E8-EA681D6978BD}"
86+
EndProject
87+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Abstractions.Test", "test\MyTested.AspNetCore.Mvc.Abstractions.Test\MyTested.AspNetCore.Mvc.Abstractions.Test.xproj", "{28610D5E-173A-4A36-8E6E-C5CEFEBDD2B9}"
88+
EndProject
89+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Authentication.Test", "test\MyTested.AspNetCore.Mvc.Authentication.Test\MyTested.AspNetCore.Mvc.Authentication.Test.xproj", "{6DD2FCA0-A52B-4BBB-A9A5-785461AB481C}"
90+
EndProject
91+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Configuration.Test", "test\MyTested.AspNetCore.Mvc.Configuration.Test\MyTested.AspNetCore.Mvc.Configuration.Test.xproj", "{8D626A3C-55CD-4FAF-B10E-E6771E33B764}"
92+
EndProject
93+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Controllers.Test", "test\MyTested.AspNetCore.Mvc.Controllers.Test\MyTested.AspNetCore.Mvc.Controllers.Test.xproj", "{55B3D29C-624E-47EA-8F36-22515181A618}"
94+
EndProject
95+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.DependencyInjection.Test", "test\MyTested.AspNetCore.Mvc.DependencyInjection.Test\MyTested.AspNetCore.Mvc.DependencyInjection.Test.xproj", "{41E51D79-AC4A-42A3-A55D-912DDB6F0FA9}"
96+
EndProject
97+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Http.Test", "test\MyTested.AspNetCore.Mvc.Http.Test\MyTested.AspNetCore.Mvc.Http.Test.xproj", "{D9F6A7BB-6E8E-4983-8007-3BC0D23016D0}"
98+
EndProject
99+
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "MyTested.AspNetCore.Mvc.Routing.Test", "test\MyTested.AspNetCore.Mvc.Routing.Test\MyTested.AspNetCore.Mvc.Routing.Test.xproj", "{56348217-F55C-4C61-8779-B94C009DC4BE}"
100+
EndProject
71101
Global
72102
GlobalSection(SolutionConfigurationPlatforms) = preSolution
73103
Debug|Any CPU = Debug|Any CPU
@@ -174,6 +204,66 @@ Global
174204
{1309FBA5-F93D-4F4B-9819-63D298B837FF}.Debug|Any CPU.Build.0 = Debug|Any CPU
175205
{1309FBA5-F93D-4F4B-9819-63D298B837FF}.Release|Any CPU.ActiveCfg = Release|Any CPU
176206
{1309FBA5-F93D-4F4B-9819-63D298B837FF}.Release|Any CPU.Build.0 = Release|Any CPU
207+
{0346A33A-BB28-4F3C-B788-2CF8C00CA048}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
208+
{0346A33A-BB28-4F3C-B788-2CF8C00CA048}.Debug|Any CPU.Build.0 = Debug|Any CPU
209+
{0346A33A-BB28-4F3C-B788-2CF8C00CA048}.Release|Any CPU.ActiveCfg = Release|Any CPU
210+
{0346A33A-BB28-4F3C-B788-2CF8C00CA048}.Release|Any CPU.Build.0 = Release|Any CPU
211+
{C4D78D04-D99C-48D7-9339-1E2D0F616A4C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
212+
{C4D78D04-D99C-48D7-9339-1E2D0F616A4C}.Debug|Any CPU.Build.0 = Debug|Any CPU
213+
{C4D78D04-D99C-48D7-9339-1E2D0F616A4C}.Release|Any CPU.ActiveCfg = Release|Any CPU
214+
{C4D78D04-D99C-48D7-9339-1E2D0F616A4C}.Release|Any CPU.Build.0 = Release|Any CPU
215+
{5B60F95F-8A87-4166-8C75-1328E7063365}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
216+
{5B60F95F-8A87-4166-8C75-1328E7063365}.Debug|Any CPU.Build.0 = Debug|Any CPU
217+
{5B60F95F-8A87-4166-8C75-1328E7063365}.Release|Any CPU.ActiveCfg = Release|Any CPU
218+
{5B60F95F-8A87-4166-8C75-1328E7063365}.Release|Any CPU.Build.0 = Release|Any CPU
219+
{2101DDC1-36A4-4D4E-A4D8-EF24D47116A4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
220+
{2101DDC1-36A4-4D4E-A4D8-EF24D47116A4}.Debug|Any CPU.Build.0 = Debug|Any CPU
221+
{2101DDC1-36A4-4D4E-A4D8-EF24D47116A4}.Release|Any CPU.ActiveCfg = Release|Any CPU
222+
{2101DDC1-36A4-4D4E-A4D8-EF24D47116A4}.Release|Any CPU.Build.0 = Release|Any CPU
223+
{18B6C20B-9C4B-4444-AD61-8DAF57012599}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
224+
{18B6C20B-9C4B-4444-AD61-8DAF57012599}.Debug|Any CPU.Build.0 = Debug|Any CPU
225+
{18B6C20B-9C4B-4444-AD61-8DAF57012599}.Release|Any CPU.ActiveCfg = Release|Any CPU
226+
{18B6C20B-9C4B-4444-AD61-8DAF57012599}.Release|Any CPU.Build.0 = Release|Any CPU
227+
{9B2A773E-3A37-44F3-83D0-5D156526FA84}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
228+
{9B2A773E-3A37-44F3-83D0-5D156526FA84}.Debug|Any CPU.Build.0 = Debug|Any CPU
229+
{9B2A773E-3A37-44F3-83D0-5D156526FA84}.Release|Any CPU.ActiveCfg = Release|Any CPU
230+
{9B2A773E-3A37-44F3-83D0-5D156526FA84}.Release|Any CPU.Build.0 = Release|Any CPU
231+
{C15BB589-9421-4D9C-A26D-61FF1BCD17AC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
232+
{C15BB589-9421-4D9C-A26D-61FF1BCD17AC}.Debug|Any CPU.Build.0 = Debug|Any CPU
233+
{C15BB589-9421-4D9C-A26D-61FF1BCD17AC}.Release|Any CPU.ActiveCfg = Release|Any CPU
234+
{C15BB589-9421-4D9C-A26D-61FF1BCD17AC}.Release|Any CPU.Build.0 = Release|Any CPU
235+
{3F114973-4E8D-4E90-88E8-EA681D6978BD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
236+
{3F114973-4E8D-4E90-88E8-EA681D6978BD}.Debug|Any CPU.Build.0 = Debug|Any CPU
237+
{3F114973-4E8D-4E90-88E8-EA681D6978BD}.Release|Any CPU.ActiveCfg = Release|Any CPU
238+
{3F114973-4E8D-4E90-88E8-EA681D6978BD}.Release|Any CPU.Build.0 = Release|Any CPU
239+
{28610D5E-173A-4A36-8E6E-C5CEFEBDD2B9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
240+
{28610D5E-173A-4A36-8E6E-C5CEFEBDD2B9}.Debug|Any CPU.Build.0 = Debug|Any CPU
241+
{28610D5E-173A-4A36-8E6E-C5CEFEBDD2B9}.Release|Any CPU.ActiveCfg = Release|Any CPU
242+
{28610D5E-173A-4A36-8E6E-C5CEFEBDD2B9}.Release|Any CPU.Build.0 = Release|Any CPU
243+
{6DD2FCA0-A52B-4BBB-A9A5-785461AB481C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
244+
{6DD2FCA0-A52B-4BBB-A9A5-785461AB481C}.Debug|Any CPU.Build.0 = Debug|Any CPU
245+
{6DD2FCA0-A52B-4BBB-A9A5-785461AB481C}.Release|Any CPU.ActiveCfg = Release|Any CPU
246+
{6DD2FCA0-A52B-4BBB-A9A5-785461AB481C}.Release|Any CPU.Build.0 = Release|Any CPU
247+
{8D626A3C-55CD-4FAF-B10E-E6771E33B764}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
248+
{8D626A3C-55CD-4FAF-B10E-E6771E33B764}.Debug|Any CPU.Build.0 = Debug|Any CPU
249+
{8D626A3C-55CD-4FAF-B10E-E6771E33B764}.Release|Any CPU.ActiveCfg = Release|Any CPU
250+
{8D626A3C-55CD-4FAF-B10E-E6771E33B764}.Release|Any CPU.Build.0 = Release|Any CPU
251+
{55B3D29C-624E-47EA-8F36-22515181A618}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
252+
{55B3D29C-624E-47EA-8F36-22515181A618}.Debug|Any CPU.Build.0 = Debug|Any CPU
253+
{55B3D29C-624E-47EA-8F36-22515181A618}.Release|Any CPU.ActiveCfg = Release|Any CPU
254+
{55B3D29C-624E-47EA-8F36-22515181A618}.Release|Any CPU.Build.0 = Release|Any CPU
255+
{41E51D79-AC4A-42A3-A55D-912DDB6F0FA9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
256+
{41E51D79-AC4A-42A3-A55D-912DDB6F0FA9}.Debug|Any CPU.Build.0 = Debug|Any CPU
257+
{41E51D79-AC4A-42A3-A55D-912DDB6F0FA9}.Release|Any CPU.ActiveCfg = Release|Any CPU
258+
{41E51D79-AC4A-42A3-A55D-912DDB6F0FA9}.Release|Any CPU.Build.0 = Release|Any CPU
259+
{D9F6A7BB-6E8E-4983-8007-3BC0D23016D0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
260+
{D9F6A7BB-6E8E-4983-8007-3BC0D23016D0}.Debug|Any CPU.Build.0 = Debug|Any CPU
261+
{D9F6A7BB-6E8E-4983-8007-3BC0D23016D0}.Release|Any CPU.ActiveCfg = Release|Any CPU
262+
{D9F6A7BB-6E8E-4983-8007-3BC0D23016D0}.Release|Any CPU.Build.0 = Release|Any CPU
263+
{56348217-F55C-4C61-8779-B94C009DC4BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
264+
{56348217-F55C-4C61-8779-B94C009DC4BE}.Debug|Any CPU.Build.0 = Debug|Any CPU
265+
{56348217-F55C-4C61-8779-B94C009DC4BE}.Release|Any CPU.ActiveCfg = Release|Any CPU
266+
{56348217-F55C-4C61-8779-B94C009DC4BE}.Release|Any CPU.Build.0 = Release|Any CPU
177267
EndGlobalSection
178268
GlobalSection(SolutionProperties) = preSolution
179269
HideSolutionNode = FALSE
@@ -206,5 +296,20 @@ Global
206296
{285E08F2-2E5A-4226-B867-FD3DF7C52053} = {D140FA14-A6C2-4279-8A41-35BC55279DA8}
207297
{ACE92892-8F86-44B1-8F78-3B1F8DDE7DD4} = {09353A03-2B0C-496B-8EB1-2CB6A22D758B}
208298
{1309FBA5-F93D-4F4B-9819-63D298B837FF} = {D140FA14-A6C2-4279-8A41-35BC55279DA8}
299+
{0346A33A-BB28-4F3C-B788-2CF8C00CA048} = {09353A03-2B0C-496B-8EB1-2CB6A22D758B}
300+
{C4D78D04-D99C-48D7-9339-1E2D0F616A4C} = {09353A03-2B0C-496B-8EB1-2CB6A22D758B}
301+
{5B60F95F-8A87-4166-8C75-1328E7063365} = {09353A03-2B0C-496B-8EB1-2CB6A22D758B}
302+
{2101DDC1-36A4-4D4E-A4D8-EF24D47116A4} = {09353A03-2B0C-496B-8EB1-2CB6A22D758B}
303+
{18B6C20B-9C4B-4444-AD61-8DAF57012599} = {09353A03-2B0C-496B-8EB1-2CB6A22D758B}
304+
{9B2A773E-3A37-44F3-83D0-5D156526FA84} = {09353A03-2B0C-496B-8EB1-2CB6A22D758B}
305+
{C15BB589-9421-4D9C-A26D-61FF1BCD17AC} = {09353A03-2B0C-496B-8EB1-2CB6A22D758B}
306+
{3F114973-4E8D-4E90-88E8-EA681D6978BD} = {D140FA14-A6C2-4279-8A41-35BC55279DA8}
307+
{28610D5E-173A-4A36-8E6E-C5CEFEBDD2B9} = {D140FA14-A6C2-4279-8A41-35BC55279DA8}
308+
{6DD2FCA0-A52B-4BBB-A9A5-785461AB481C} = {D140FA14-A6C2-4279-8A41-35BC55279DA8}
309+
{8D626A3C-55CD-4FAF-B10E-E6771E33B764} = {D140FA14-A6C2-4279-8A41-35BC55279DA8}
310+
{55B3D29C-624E-47EA-8F36-22515181A618} = {D140FA14-A6C2-4279-8A41-35BC55279DA8}
311+
{41E51D79-AC4A-42A3-A55D-912DDB6F0FA9} = {D140FA14-A6C2-4279-8A41-35BC55279DA8}
312+
{D9F6A7BB-6E8E-4983-8007-3BC0D23016D0} = {D140FA14-A6C2-4279-8A41-35BC55279DA8}
313+
{56348217-F55C-4C61-8779-B94C009DC4BE} = {D140FA14-A6C2-4279-8A41-35BC55279DA8}
209314
EndGlobalSection
210315
EndGlobal

README.md

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,21 @@ You can install this library using NuGet into your test project (or reference it
1515

1616
Install-Package MyTested.AspNetCore.Mvc -Pre
1717

18+
This package will include all available assertion methods in your test project. If you prefer, you can be more specific by including only some of the features:
19+
20+
- `MyTested.AspNetCore.Mvc.Controllers` - contains setup and assertion methods for controllers
21+
- `MyTested.AspNetCore.Mvc.Routing` - contains setup and assertion methods for routes
22+
- `MyTested.AspNetCore.Mvc.Core` - contains setup and assertion methods for MVC core features
23+
- `MyTested.AspNetCore.Mvc.ViewFeatures` - contains setup and assertion methods for MVC view features
24+
- `MyTested.AspNetCore.Mvc.Http` - contains setup and assertion methods for HTTP context, request and response
25+
- `MyTested.AspNetCore.Mvc.Authentication` - contains setup for `ClaimsPrincipal`
26+
- `MyTested.AspNetCore.Mvc.DataAnnotations` - contains setup and assertion methods for `ModelState` validations
27+
- `MyTested.AspNetCore.Mvc.EntityFrameworkCore` - contains setup and assertion methods for `DbContext`
28+
- `MyTested.AspNetCore.Mvc.DependencyInjection` - contains setup methods for dependency injection services
29+
- `MyTested.AspNetCore.Mvc.Caching` - contains setup and assertion methods for `IMemoryCache`
30+
- `MyTested.AspNetCore.Mvc.Session` - contains setup and assertion methods for `ISession`
31+
- `MyTested.AspNetCore.Mvc.Options` - contains setup and assertion methods for `IOptions`
32+
1833
After the downloading is complete, just add `using MyTested.AspNetCore.Mvc;` to your source code and you are ready to test in the most elegant and developer friendly way.
1934

2035
using MyTested.AspNetCore.Mvc;
@@ -88,7 +103,7 @@ Here are some random examples of what the fluent testing API is capable of:
88103
```c#
89104
// tests a route for correct controller, action and resolved route values
90105
MyMvc
91-
.Routes()
106+
.Routing()
92107
.ShouldMap(request => request
93108
.WithLocation("/My/Action/1")
94109
.WithMethod(HttpMethod.Post)

samples/ApplicationParts/ApplicationParts.Test/RouteTest.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ public class RouteTest
99
[Fact]
1010
public void HomeIndexShouldMatchCorrectController()
1111
{
12-
MyMvc
13-
.Routes()
12+
MyRouting
13+
.Configuration()
1414
.ShouldMap("/")
1515
.To<HomeController>(c => c.Index());
1616
}

samples/ApplicationParts/ApplicationParts.Test/project.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
"dependencies": {
1111
"dotnet-test-xunit": "2.2.0-*",
1212
"xunit": "2.2.0-*",
13-
"MyTested.AspNetCore.Mvc": "1.0.0-*",
13+
"MyTested.AspNetCore.Mvc.Routing": "1.0.0-*",
1414
"ApplicationParts.Web": "1.0.0-*",
1515
"ApplicationParts.Controllers": "1.0.0-*",
1616
"Microsoft.EntityFrameworkCore.InMemory": "1.0.0-*"

0 commit comments

Comments
 (0)