-
Notifications
You must be signed in to change notification settings - Fork 3.2k
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
fix: failing Create Instance api call no longer skips spec #30697
Conversation
packages/errors/src/errors.ts
Outdated
@@ -188,6 +188,8 @@ export const AllCypressErrors = { | |||
|
|||
${fmt.highlightSecondary(arg1.response)} | |||
|
|||
Because you passed the ${fmt.flag(`--record`)} flag, this run cannot proceed because it requires a valid response from our servers. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just removing the double 'because'
Because you passed the ${fmt.flag(`--record`)} flag, this run cannot proceed because it requires a valid response from our servers. | |
Because you passed the ${fmt.flag(`--record`)} flag, this run cannot proceed since it requires a valid response from our servers. |
Co-authored-by: Jennifer Shehane <[email protected]>
cypress Run #58617
Run Properties:
|
Project |
cypress
|
Branch Review |
cacie/api-call-skips-spec
|
Run status |
Passed #58617
|
Run duration | 22m 14s |
Commit |
48de0bb93a: snapshots
|
Committer | Cacie Prins |
View all properties for this run ↗︎ |
Test results | |
---|---|
Failures |
0
|
Flaky |
3
|
Pending |
1326
|
Skipped |
0
|
Passing |
29400
|
View all changes introduced in this branch ↗︎ |
UI Coverage
46.24%
|
|
---|---|
Untested elements |
188
|
Tested elements |
166
|
Accessibility
92.55%
|
|
---|---|
Failed rules |
3 critical
8 serious
2 moderate
2 minor
|
Failed elements |
903
|
count = 0 | ||
}) | ||
|
||
it('errors and does not create or update instances when parallel', function () { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
any reason we don't make these async/await tests to help with readability?
Released in This comment thread has been locked. If you are still experiencing this issue after upgrading to |
/runs/<runId>/instances
call fails #30628Additional details
POSTing to create an instance is not idempotent.
In situations where the in-flight request is accepted by the Cloud API, but the client does not receive a response within the given timeout window, the retry attempt would create a new instance for the next spec, effectively bypassing specs.
Steps to test
The updated system tests now ensure this call is not retried; for manual testing, use Charles proxy or similar to cause a timeout on the POST runs/:id/instances request.
How has the user experience changed?
Runs will fail if the client fails to register the creation of an instance when either the
--record
or--parallel
flag is passed. This prevents potential false negatives, where a spec skipped due to this would have failed and thus reported a test failure.PR Tasks
cypress-documentation
?type definitions
?