mirror of
				https://github.com/Smaug123/WoofWare.Myriad
				synced 2025-10-31 00:29:00 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			22 lines
		
	
	
		
			716 B
		
	
	
	
		
			Forth
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			716 B
		
	
	
	
		
			Forth
		
	
	
	
	
	
| namespace WoofWare.Myriad.Plugins.Test
 | |
| 
 | |
| open System.Net.Http
 | |
| 
 | |
| /// Simple implementation of an HttpClient.
 | |
| type HttpClientMock (result : HttpRequestMessage -> Async<HttpResponseMessage>) =
 | |
|     inherit HttpClient ()
 | |
| 
 | |
|     override this.SendAsync (message, ct) =
 | |
|         Async.StartAsTask (result message, cancellationToken = ct)
 | |
| 
 | |
| [<RequireQualifiedAccess>]
 | |
| module HttpClientMock =
 | |
|     let makeNoUri (handler : HttpRequestMessage -> Async<HttpResponseMessage>) =
 | |
|         let result = new HttpClientMock (handler)
 | |
|         result
 | |
| 
 | |
|     let make (baseUrl : System.Uri) (handler : HttpRequestMessage -> Async<HttpResponseMessage>) =
 | |
|         let result = makeNoUri handler
 | |
|         result.BaseAddress <- baseUrl
 | |
|         result
 |