microsoft/teams.net

Public

mirrored from https://github.com/microsoft/teams.netAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
dev

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

Tests/Microsoft.Teams.Common.Tests/Http/HttpRequestTests.cs

217lines · modeblame

60ae88b8fallothakor1 years ago1using Microsoft.Teams.Api.TaskModules;
2using Microsoft.Teams.Cards;
3using Microsoft.Teams.Common.Http;
4
5namespace Microsoft.Teams.Common.Tests.Http;
6
7public class HttpRequestTests
8{
9
10
11[Fact]
12public void HttpRequest_ValidateHttpRequest_Get()
13{
14HttpRequest request = HttpRequest.Get("https://mocked-url.com");
15Assert.Equal(HttpMethod.Get, request.Method);
16Assert.Equal("https://mocked-url.com", request.Url);
17Assert.Null(request.Body);
18Assert.Empty(request.Headers);
19}
20
21[Fact]
22public void HttpRequest_ValidateHttpRequest_GetWithHeader()
23{
24var options = new Common.Http.HttpRequestOptions();
25options.AddHeader("Authorization", "Bearer mocked-token");
26options.AddHeader("key", "value");
27
28HttpRequest request = HttpRequest.Get("https://mocked-url.com", options);
29Assert.Equal(HttpMethod.Get, request.Method);
30Assert.Equal("https://mocked-url.com", request.Url);
31Assert.Null(request.Body);
32Assert.Equal(2, request.Headers.Count);
33Assert.True(request.Headers.ContainsKey("Authorization"));
34Assert.Contains("Bearer mocked-token", request.Headers["Authorization"]);
35Assert.Contains("value", request.Headers["key"]);
36}
37
38[Fact]
39public void HttpRequest_ValidateHttpRequest_Post()
40{
41HttpRequest request = HttpRequest.Post("https://mocked-url.com?data=true");
42Assert.Equal(HttpMethod.Post, request.Method);
43Assert.Equal("https://mocked-url.com?data=true", request.Url);
44Assert.Null(request.Body);
45Assert.Empty(request.Headers);
46}
47
48[Fact]
49public void HttpRequest_ValidateHttpRequest_PostWithHeader()
50{
51var options = new Common.Http.HttpRequestOptions();
52options.AddHeader("Authorization", "Bearer mocked-token");
53options.AddHeader("key", "value");
54options.AddUserAgent("mocked-user-agent");
55
56HttpRequest request = HttpRequest.Post("https://mocked-url.com?data=true", null, options);
57Assert.Equal(HttpMethod.Post, request.Method);
58Assert.Equal("https://mocked-url.com?data=true", request.Url);
59Assert.Null(request.Body);
60Assert.Equal(3, request.Headers.Count);
61Assert.True(request.Headers.ContainsKey("Authorization"));
62Assert.Contains("Bearer mocked-token", request.Headers["Authorization"]);
63Assert.Contains("value", request.Headers["key"]);
64Assert.Contains("mocked-user-agent", request.Headers["User-Agent"]);
65}
66
67[Fact]
68public void HttpRequest_ValidateHttpRequest_PostWithBody()
69{
70ContinueTask continueTask = new ContinueTask(new TaskInfo()
71{
72Title = "mocked-title",
73Url = "https://mocked-url.com",
74Card = null,
75FallbackUrl = "https://mocked-fallback-url.com",
76CompletionBotId = "mocked-bot-id",
77});
78
79var options = new Common.Http.HttpRequestOptions();
80options.AddHeader("Authorization", "Bearer mocked-token");
81options.AddHeader("key", "value");
82
83
84HttpRequest request = HttpRequest.Post("https://mocked-url.com?data=true", continueTask, options);
85Assert.Equal(HttpMethod.Post, request.Method);
86Assert.Equal("https://mocked-url.com?data=true", request.Url);
87Assert.Equal(2, request.Headers.Count);
88Assert.True(request.Headers.ContainsKey("Authorization"));
89Assert.Contains("Bearer mocked-token", request.Headers["Authorization"]);
90Assert.Contains("value", request.Headers["key"]);
91}
92
93[Fact]
94public void HttpRequest_ValidateHttpRequest_Patch()
95{
96HttpRequest request = HttpRequest.Patch("https://mocked-url.com?data=true");
97Assert.Equal(HttpMethod.Patch, request.Method);
98Assert.Equal("https://mocked-url.com?data=true", request.Url);
99Assert.Null(request.Body);
100Assert.Empty(request.Headers);
101}
102
103[Fact]
104public void HttpRequest_ValidateHttpRequest_PatchWithHeader()
105{
106var options = new Common.Http.HttpRequestOptions();
107options.AddHeader("Authorization", "Bearer mocked-token");
108options.AddHeader("key", "value");
109options.AddUserAgent(["mocked-user-agent1", "mocked-user-agent2"]);
110
111HttpRequest request = HttpRequest.Patch("https://mocked-url.com?data=true", null, options);
112Assert.Equal(HttpMethod.Patch, request.Method);
113Assert.Equal("https://mocked-url.com?data=true", request.Url);
114Assert.Null(request.Body);
115Assert.Equal(3, request.Headers.Count);
116Assert.True(request.Headers.ContainsKey("Authorization"));
117Assert.Contains("Bearer mocked-token", request.Headers["Authorization"]);
118Assert.Contains("value", request.Headers["key"]);
119Assert.Equal(2, request.Headers["User-Agent"].Count);
120}
121
122[Fact]
123public void HttpRequest_ValidateHttpRequest_PatchWithBody()
124{
125ContinueTask continueTask = new ContinueTask(new TaskInfo()
126{
127Title = "mocked-title",
128Url = "https://mocked-url.com",
129Card = null,
130FallbackUrl = "https://mocked-fallback-url.com",
131CompletionBotId = "mocked-bot-id",
132});
133
134var options = new Common.Http.HttpRequestOptions();
135options.AddHeader("Authorization", "Bearer mocked-token");
136options.AddHeader("key", "value");
137
138
139HttpRequest request = HttpRequest.Patch("https://mocked-url.com?data=true", continueTask, options);
140Assert.Equal(HttpMethod.Patch, request.Method);
141Assert.Equal("https://mocked-url.com?data=true", request.Url);
142Assert.Equal(2, request.Headers.Count);
143Assert.True(request.Headers.ContainsKey("Authorization"));
144Assert.Contains("Bearer mocked-token", request.Headers["Authorization"]);
145Assert.Contains("value", request.Headers["key"]);
146}
147
148[Fact]
149public void HttpRequest_ValidateHttpRequest_Put()
150{
151ContinueTask continueTask = new ContinueTask(new TaskInfo()
152{
153Title = "mocked-title",
154Url = "https://mocked-url.com",
155Card = null,
156FallbackUrl = "https://mocked-fallback-url.com",
157CompletionBotId = "mocked-bot-id",
158});
159
160HttpRequest request = HttpRequest.Put("https://mocked-url.com", continueTask);
161Assert.Equal(HttpMethod.Put, request.Method);
162Assert.Equal("https://mocked-url.com", request.Url);
163Assert.Equal(continueTask, request.Body);
164}
165
166[Fact]
167public void HttpRequest_ValidateHttpRequest_PutWithHeader()
168{
169var options = new Common.Http.HttpRequestOptions();
170options.AddHeader("Authorization", "Bearer mocked-token");
171options.AddHeader("key", "value");
172ContinueTask continueTask = new ContinueTask(new TaskInfo()
173{
174Title = "mocked-title",
175Url = "https://mocked-url.com",
176Card = null,
177FallbackUrl = "https://mocked-fallback-url.com",
178CompletionBotId = "mocked-bot-id",
179});
180
181HttpRequest request = HttpRequest.Put("https://mocked-url.com", continueTask, options);
182Assert.Equal(HttpMethod.Put, request.Method);
183Assert.Equal("https://mocked-url.com", request.Url);
184Assert.Equal(continueTask, request.Body);
185Assert.Equal(2, request.Headers.Count);
186Assert.True(request.Headers.ContainsKey("Authorization"));
187Assert.Contains("Bearer mocked-token", request.Headers["Authorization"]);
188Assert.Contains("value", request.Headers["key"]);
189}
190
191[Fact]
192public void HttpRequest_ValidateHttpRequest_Delete()
193{
194
195HttpRequest request = HttpRequest.Delete("https://mocked-url.com?tabid=abc");
196Assert.Equal(HttpMethod.Delete, request.Method);
197Assert.Equal("https://mocked-url.com?tabid=abc", request.Url);
198Assert.Null(request.Body);
199}
200
201[Fact]
202public void HttpRequest_ValidateHttpRequest_DeleteWithHeader()
203{
204var options = new Common.Http.HttpRequestOptions();
205options.AddHeader("Authorization", "Bearer mocked-token");
206options.AddHeader("key", "value");
207
208HttpRequest request = HttpRequest.Delete("https://mocked-url.com?tabid=abc", options);
209Assert.Equal(HttpMethod.Delete, request.Method);
210Assert.Equal("https://mocked-url.com?tabid=abc", request.Url);
211Assert.Null(request.Body);
212Assert.Equal(2, request.Headers.Count);
213Assert.True(request.Headers.ContainsKey("Authorization"));
214Assert.Contains("Bearer mocked-token", request.Headers["Authorization"]);
215Assert.Contains("value", request.Headers["key"]);
216}
217}