-
Notifications
You must be signed in to change notification settings - Fork 81
Disable V8-dependent API tests for V2 since future arangods will ship… #722
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
base: master
Are you sure you want to change the base?
Disable V8-dependent API tests for V2 since future arangods will ship… #722
Conversation
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.
This PR is being reviewed by Cursor Bugbot
Details
Your team is on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle for each member of your team.
To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.
d23b95e to
cb2476a
Compare
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.
Pull request overview
This PR prepares the go-driver for future ArangoDB versions (4.0+) that will ship without V8 JavaScript engine support by gating V8-dependent tests. The implementation uses two different strategies: V2 employs feature detection via the requireV8Enabled helper that checks the server's v8-version field, while V1 uses version-based skipping via skipIfVersionGTE for versions >= 4.0. Additionally, the PR includes minor improvements such as relaxing an HTTP status assertion, clarifying documentation, standardizing timeouts, and increasing CI resources.
- Added
requireV8Enabledhelper to V2 that checksv8-versionin server details - Added
skipIfVersionGTEhelper to V1 for version-based test skipping (>= 4.0) - Gated V8-dependent tests: Foxx, UDFs, JS transactions, tasks, async job pending/delete operations
- Relaxed
CallWithCheckstest to accept both 404 and 501 status codes - Clarified
ReloadRoutingTabledocumentation to mention Foxx routing rebuild - Standardized test timeouts to use
defaultTestTimeoutconstant
Reviewed changes
Copilot reviewed 14 out of 14 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| v2/tests/util_test.go | Added requireV8Enabled helper function to check if V8 is enabled via version details |
| v2/tests/tasks_test.go | Added V8 guards to task creation tests |
| v2/tests/foxx_test.go | Added V8 guards to Foxx service tests |
| v2/tests/database_transactionsjs_test.go | Added V8 guard to JavaScript transaction tests |
| v2/tests/database_query_test.go | Added V8 guard to user-defined function tests |
| v2/tests/call_test.go | Relaxed status assertion to accept 404 or 501 for non-existent endpoints |
| v2/tests/asyncjob_test.go | Added V8 guards to async job pending and delete tests |
| v2/tests/admin_test.go | Added V8 guards to routing table reload and admin script tests; standardized timeouts |
| v2/tests/admin_cluster_test.go | Moved requireClusterMode check outside Wrap for consistency |
| v2/arangodb/client_admin.go | Clarified ReloadRoutingTable documentation to mention Foxx routing rebuild |
| test/database_transaction_test.go | Added version skip for >= 4.0 to JavaScript transaction tests |
| test/client_test.go | Added skipIfVersionGTE helper for version-based test skipping |
| test/asyncjob_test.go | Added version skips for >= 4.0 to async job tests using JS transactions |
| .circleci/config.yml | Increased x86 machine executor to large resource class |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
… without V8
Note
Gates V8-dependent v2 tests with a new requireV8Enabled/version skips, adjusts some test timeouts/assertions, and bumps CircleCI x86 executor resources.
requireV8Enabled(...)gate and apply it to V8-dependent tests: async jobs (pending/delete/expired), Foxx, tasks, UDFs, JS transactions, and routing/script admin ops.requireV8Enabledhelper inv2/tests/util_test.go.defaultTestTimeoutin multiple admin tests; add non-parallelWrapOptionswhere needed.CallWithChecksassertion to accept404or501.>= 4.0intest/asyncjob_test.goanddatabase_transaction_test.go.ReloadRoutingTabledoc to mention Foxx services rebuilding routes.x86-machine-executorresource_classtolarge.Written by Cursor Bugbot for commit 0a0d3ea. This will update automatically on new commits. Configure here.