mirror of
https://github.com/foss42/apidash.git
synced 2025-05-30 05:21:15 +08:00
Fixes #415
This commit is contained in:
@ -101,7 +101,9 @@ String stripUrlParams(String url) {
|
||||
|
||||
(List<ResponseBodyView>, String?) getResponseBodyViewOptions(
|
||||
MediaType? mediaType) {
|
||||
if (mediaType != null) {
|
||||
if (mediaType == null) {
|
||||
return (kRawBodyViewOptions, null);
|
||||
}
|
||||
var type = mediaType.type;
|
||||
var subtype = mediaType.subtype;
|
||||
if (kResponseBodyViewOptions.containsKey(type)) {
|
||||
@ -128,7 +130,6 @@ String stripUrlParams(String url) {
|
||||
subtype
|
||||
);
|
||||
}
|
||||
}
|
||||
return (kNoBodyViewOptions, null);
|
||||
}
|
||||
|
||||
|
@ -345,12 +345,14 @@ class ResponseBody extends StatelessWidget {
|
||||
);
|
||||
}
|
||||
|
||||
var mediaType = responseModel.mediaType;
|
||||
if (mediaType == null) {
|
||||
return ErrorMessage(
|
||||
message:
|
||||
'$kMsgUnknowContentType - ${responseModel.contentType}. $kUnexpectedRaiseIssue');
|
||||
}
|
||||
final mediaType =
|
||||
responseModel.mediaType ?? MediaType(kTypeText, kSubTypePlain);
|
||||
// Fix #415: Treat null Content-type as plain text instead of Error message
|
||||
// if (mediaType == null) {
|
||||
// return ErrorMessage(
|
||||
// message:
|
||||
// '$kMsgUnknowContentType - ${responseModel.contentType}. $kUnexpectedRaiseIssue');
|
||||
// }
|
||||
|
||||
var responseBodyView = getResponseBodyViewOptions(mediaType);
|
||||
var options = responseBodyView.$1;
|
||||
|
@ -214,8 +214,13 @@ void main() {
|
||||
findsOneWidget);
|
||||
});
|
||||
|
||||
testWidgets('Testing Response Body, no mediaType', (tester) async {
|
||||
var responseModelNoHeaders = responseModel.copyWith(headers: null);
|
||||
testWidgets(
|
||||
'Testing Response Body, no mediaType; shoud be default plaintext preview',
|
||||
(tester) async {
|
||||
var responseModelNoHeaders = responseModel.copyWith(
|
||||
headers: null,
|
||||
formattedBody: null,
|
||||
);
|
||||
var requestModelNoResponseHeaders =
|
||||
testRequestModel.copyWith(httpResponseModel: responseModelNoHeaders);
|
||||
|
||||
@ -230,10 +235,8 @@ void main() {
|
||||
),
|
||||
);
|
||||
|
||||
expect(
|
||||
find.text(
|
||||
'Unknown Response Content-Type - ${responseModelNoHeaders.contentType}. $kUnexpectedRaiseIssue'),
|
||||
findsOneWidget);
|
||||
expect(find.text("Raw"), findsOneWidget);
|
||||
expect(find.text('{"data":"world"}'), findsOneWidget);
|
||||
});
|
||||
|
||||
testWidgets('Testing Response Body for No body view', (tester) async {
|
||||
|
Reference in New Issue
Block a user