[Koha-bugs] [Bug 35199] Fix error handling in http-client.js
bugzilla-daemon at bugs.koha-community.org
bugzilla-daemon at bugs.koha-community.org
Tue Oct 31 15:31:48 CET 2023
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=35199
Jonathan Druart <jonathan.druart+koha at gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #158121|0 |1
is obsolete| |
--- Comment #3 from Jonathan Druart <jonathan.druart+koha at gmail.com> ---
Created attachment 158125
-->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=158125&action=edit
Bug 35199: (bug 34448 follow-up) Fix error handling in http-client.js
>From bug bug 34448.
386 // Submit the form, get 500
387 cy.intercept("POST", "/api/v1/erm/agreements", {
388 statusCode: 500,
389 error: "Something went wrong",
390 });
391 cy.get("#agreements_add").contains("Submit").click();
392 cy.get("main div[class='dialog alert']").contains(
393 "Something went wrong: SyntaxError: Unexpected end of JSON
input"
394 );
This is wrong: we are now showing a JS error (SyntaxError) instead of the
expected 500: internal server error!
The problem was that a regular 500 does not have anything in the body,
and _fetchJSON didn't handle that ( JSON.parse(text) ).
If the body of the response does not contain anything we need to get the
text from statusText (which contains "Internal Server Error" in case of
500).
Test plan:
1. Make sure all cypress tests pass
2. Confirm the above:
Raise an exception from a given route (/agreements for instance) and
confirm that the error displayed on the interface is correct (ie. not
SyntaxError, but "Error: Internal Server Error")
For QA:
* This change is covered properly in Dialog_spec.ts, no need to redo it in
every other test files.
* Without the following change in count, we see:
"Something went wrong: Error: Error: Internal Server Error" because
setError is called twice. We don't need to set the error from count, it
has been set from _fetchJSON already.
- error => {
- setError(error.toString());
- }
+ error => {}
--
You are receiving this mail because:
You are watching all bug changes.
More information about the Koha-bugs
mailing list