aboutsummaryrefslogtreecommitdiff
path: root/BackEnd/Timeline.Tests/IntegratedTests/HttpClientTimelineExtensions.cs
blob: 5ae4d8a23014920641dc17c1d04a3363b6b7018c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using System.Net.Http;
using System.Threading.Tasks;
using Timeline.Models.Http;

namespace Timeline.Tests.IntegratedTests
{
    public static class HttpClientTimelineExtensions
    {
        public static Task<HttpTimeline> GetTimelineAsync(this HttpClient client, string timelineName)
            => client.TestGetAsync<HttpTimeline>($"timelines/{timelineName}");

        public static Task<HttpTimeline> PatchTimelineAsync(this HttpClient client, string timelineName, HttpTimelinePatchRequest body)
            => client.TestPatchAsync<HttpTimeline>($"timelines/{timelineName}", body);

        public static Task PutTimelineMemberAsync(this HttpClient client, string timelineName, string memberUsername)
            => client.TestPutAsync($"timelines/{timelineName}/members/{memberUsername}");

        public static Task DeleteTimelineMemberAsync(this HttpClient client, string timelineName, string memberUsername)
            => client.TestDeleteAsync($"timelines/{timelineName}/members/{memberUsername}");
    }
}