Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Removing type validation for errors #19361

Merged
merged 4 commits into from
Dec 17, 2021
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -163,11 +163,12 @@ export async function assertThrowsRestError(
await testFunction();
assert.fail(`${message}: No error thrown`);
} catch (err) {
if (!(err instanceof RestError)) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did the pipeline fail because of this line should assert Error instead? The other two look fine to me if we expect them to be Error. Since the code is already merged in main, we could leave them there if they are correct, which would save us from doing it again later when moving to TypeScript v4.4

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

min-max pipelines were failing, which is why this PR was needed in the first place.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suspect that we were getting some unexpected errors in the min-max testing. It should have passed this check if it's expected. Even if we removed this check, it would fail below. I was thinking that we might want to do instance of Error check here, and let it fail later.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The main problem with the pipelines was related to this check, err was not an instance of RestError.
I can try checking for instance of Error and see if we don't get the "Error is not recognized" on the pipeline

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suspect that it is caused by two different versions of core-http in min/max testing. Pushed an update. This hopefully should fix the build.

if (!(err instanceof Error)) {
throw new Error("Error is not recognized");
}
if (err.name === "RestError") {
assert.equal(expectedStatusCode, err.statusCode, message);
const restError = err as RestError;
assert.equal(expectedStatusCode, restError.statusCode, message);
return err;
}

Expand Down