public async Task WhenAskingTeamInfoThenServerReceive(SlackLibrary.Connections.Models.Team wantedResponse) { var port = GetRandomPort; using (var server = new SlackServer(port)) { server.MockDefaultTeamInfo(wantedResponse); ClientConstants.SlackApiHost = $"http://localhost:{port}"; var client = new FlurlTeamClient(new ResponseVerifier()); var response = await client.GetTeamInfo("SLACK_KEY"); response.ShouldDeepEqual(wantedResponse); } }
public static SlackServer MockDefaultTeamInfo(this SlackServer server, SlackLibrary.Connections.Models.Team team) { server.HttpServer.Given(Request.Create().WithPath(FlurlTeamClient.TEAM_INFO)) .RespondWith(Response.Create().WithCallback(request => { return(new WireMock.ResponseMessage() { StatusCode = 200, BodyData = new WireMock.Util.BodyData() { DetectedBodyType = WireMock.Util.BodyType.Json, BodyAsJson = new TeamInfoResponse() { Ok = true, Team = team } } }); })); return(server); }