aboutsummaryrefslogtreecommitdiff
path: root/BackEnd/Timeline.Tests/IntegratedTests2/IntegratedTestBase.cs
diff options
context:
space:
mode:
Diffstat (limited to 'BackEnd/Timeline.Tests/IntegratedTests2/IntegratedTestBase.cs')
-rw-r--r--BackEnd/Timeline.Tests/IntegratedTests2/IntegratedTestBase.cs9
1 files changed, 9 insertions, 0 deletions
diff --git a/BackEnd/Timeline.Tests/IntegratedTests2/IntegratedTestBase.cs b/BackEnd/Timeline.Tests/IntegratedTests2/IntegratedTestBase.cs
index de41181b..d30c807d 100644
--- a/BackEnd/Timeline.Tests/IntegratedTests2/IntegratedTestBase.cs
+++ b/BackEnd/Timeline.Tests/IntegratedTests2/IntegratedTestBase.cs
@@ -1,4 +1,5 @@
using System;
+using System.Net;
using System.Net.Http;
using System.Threading.Tasks;
using Microsoft.AspNetCore.TestHost;
@@ -138,5 +139,13 @@ namespace Timeline.Tests.IntegratedTests2
{
return CreateClientWithToken(NormalUserToken);
}
+
+ public async Task TestOnlySelfAndAdminCanCall(HttpMethod httpMethod, string selfResourceUrl, string otherResourceUrl, object? body)
+ {
+ await DefaultClient.TestJsonSendAsync(httpMethod, selfResourceUrl, body, expectedStatusCode: HttpStatusCode.Unauthorized);
+ await UserClient.TestJsonSendAsync(httpMethod, selfResourceUrl, body);
+ await UserClient.TestJsonSendAsync(httpMethod, otherResourceUrl, body, expectedStatusCode: HttpStatusCode.Forbidden);
+ await AdminClient.TestJsonSendAsync(httpMethod, selfResourceUrl, body);
+ }
}
}