send method
Performs request and waits for the whole body.
Implementation
@override
Future<KataCxResponse> send(KataCxRequest request) async {
requests.add(request);
if (responseDelay > Duration.zero) {
await Future<void>.delayed(responseDelay);
}
if (request.url.endsWith('/settings')) {
return KataCxResponse(
statusCode: settingsStatus,
body: settingsBody,
);
}
if (request.url.endsWith('/csat')) {
return KataCxResponse(
statusCode: csatAccepted ? 200 : 422,
body: '',
);
}
if (request.url.endsWith('/chat')) {
final index = _chatCalls.clamp(0, chatReplies.length - 1);
_chatCalls++;
return KataCxResponse(
statusCode: chatStatus,
body: jsonEncode(chatReplies[index]),
);
}
return const KataCxResponse(statusCode: 404, body: '');
}