Skip to content

Commit 5ce9388

Browse files
committed
.
1 parent 38b34eb commit 5ce9388

3 files changed

Lines changed: 81 additions & 22 deletions

File tree

readme.md

Lines changed: 53 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -832,16 +832,15 @@ Use custom code to create a `HttpResponseMessage` base on a `HttpRequestMessage`
832832
[Fact]
833833
public async Task ResponseBuilder()
834834
{
835-
using var client = new MockHttpClient(
836-
request =>
835+
using var client = new MockHttpClient(request =>
836+
{
837+
var content = $"Hello to {request.RequestUri}";
838+
var response = new HttpResponseMessage(HttpStatusCode.OK)
837839
{
838-
var content = $"Hello to {request.RequestUri}";
839-
var response = new HttpResponseMessage(HttpStatusCode.OK)
840-
{
841-
Content = new StringContent(content),
842-
};
843-
return response;
844-
});
840+
Content = new StringContent(content),
841+
};
842+
return response;
843+
});
845844

846845
var result1 = await client.GetAsync("https://fake/get1");
847846
var result2 = await client.GetAsync("https://fake/get2");
@@ -853,7 +852,7 @@ public async Task ResponseBuilder()
853852
});
854853
}
855854
```
856-
<sup><a href='/src/Tests/MockHttpClientTests.cs#L125-L151' title='Snippet source file'>snippet source</a> | <a href='#snippet-ResponseBuilder' title='Start of snippet'>anchor</a></sup>
855+
<sup><a href='/src/Tests/MockHttpClientTests.cs#L125-L150' title='Snippet source file'>snippet source</a> | <a href='#snippet-ResponseBuilder' title='Start of snippet'>anchor</a></sup>
857856
<!-- endSnippet -->
858857

859858

@@ -951,6 +950,50 @@ public async Task EnumerableResponses()
951950
<!-- endSnippet -->
952951

953952

953+
954+
### Recording Mock Interactions
955+
956+
<!-- snippet: RecordingMockInteractions -->
957+
<a id='snippet-RecordingMockInteractions'></a>
958+
```cs
959+
[Fact]
960+
public async Task RecordingMockInteractions()
961+
{
962+
using var client = new MockHttpClient(recording: true);
963+
964+
Recording.Start();
965+
await client.GetStringAsync("https://fake/getOne");
966+
await client.GetStringAsync("https://fake/getTwo");
967+
968+
await Verify();
969+
}
970+
```
971+
<sup><a href='/src/Tests/MockHttpClientTests.cs#L291-L305' title='Snippet source file'>snippet source</a> | <a href='#snippet-RecordingMockInteractions' title='Start of snippet'>anchor</a></sup>
972+
<!-- endSnippet -->
973+
974+
975+
#### Resulting verified file
976+
977+
<!-- snippet: MockHttpClientTests.RecordingMockInteractions.verified.txt -->
978+
<a id='snippet-MockHttpClientTests.RecordingMockInteractions.verified.txt'></a>
979+
```txt
980+
{
981+
httpCall: [
982+
{
983+
Request: https://fake/getOne,
984+
Response: 200 Ok
985+
},
986+
{
987+
Request: https://fake/getTwo,
988+
Response: 200 Ok
989+
}
990+
]
991+
}
992+
```
993+
<sup><a href='/src/Tests/MockHttpClientTests.RecordingMockInteractions.verified.txt#L1-L12' title='Snippet source file'>snippet source</a> | <a href='#snippet-MockHttpClientTests.RecordingMockInteractions.verified.txt' title='Start of snippet'>anchor</a></sup>
994+
<!-- endSnippet -->
995+
996+
954997
## Icon
955998

956999
[Spider](https://thenounproject.com/term/spider/904683/) designed by [marialuisa iborra](https://thenounproject.com/marialuisa.iborra/) from [The Noun Project](https://thenounproject.com).
Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,12 @@
1-
emptyString
1+
{
2+
httpCall: [
3+
{
4+
Request: https://fake/getOne,
5+
Response: 200 Ok
6+
},
7+
{
8+
Request: https://fake/getTwo,
9+
Response: 200 Ok
10+
}
11+
]
12+
}

src/Tests/MockHttpClientTests.cs

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -127,16 +127,15 @@ await Verify(new
127127
[Fact]
128128
public async Task ResponseBuilder()
129129
{
130-
using var client = new MockHttpClient(
131-
request =>
130+
using var client = new MockHttpClient(request =>
131+
{
132+
var content = $"Hello to {request.RequestUri}";
133+
var response = new HttpResponseMessage(HttpStatusCode.OK)
132134
{
133-
var content = $"Hello to {request.RequestUri}";
134-
var response = new HttpResponseMessage(HttpStatusCode.OK)
135-
{
136-
Content = new StringContent(content),
137-
};
138-
return response;
139-
});
135+
Content = new StringContent(content),
136+
};
137+
return response;
138+
});
140139

141140
var result1 = await client.GetAsync("https://fake/get1");
142141
var result2 = await client.GetAsync("https://fake/get2");
@@ -289,13 +288,19 @@ await Verify(
289288
.UniqueForRuntimeAndVersion();
290289
}
291290

291+
#region RecordingMockInteractions
292+
292293
[Fact]
293294
public async Task RecordingMockInteractions()
294295
{
295296
using var client = new MockHttpClient(recording: true);
296297

297-
var result = await client.GetStringAsync("https://fake/get");
298+
Recording.Start();
299+
await client.GetStringAsync("https://fake/getOne");
300+
await client.GetStringAsync("https://fake/getTwo");
298301

299-
await Verify(result);
302+
await Verify();
300303
}
304+
305+
#endregion
301306
}

0 commit comments

Comments
 (0)