Add PROTO BUNDLE integration tests and downstream usage docs - #72
Conversation
Downstream validation in spanner-emulator-survey confirmed the FileDescriptorSet bootstrap options work without API changes; document the pairing pattern and add emulator tests for both descriptor option variants. Co-authored-by: Cursor <cursoragent@cursor.com>
There was a problem hiding this comment.
Code Review
This pull request introduces support and documentation for setting up proto bundles in the Spanner emulator using WithSetupFileDescriptorSet and WithSetupRawFileDescriptorSet. It includes updates to the README, a new runnable example, and integration tests. The review feedback highlights that the test helper exampleShippingFileDescriptorSet constructs an invalid FileDescriptorProto because it lacks a syntax definition, a file name, and enum values, which are required by Cloud Spanner.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
Set file name, syntax, and enum values so the bootstrap helper matches Cloud Spanner descriptor expectations. Co-authored-by: Cursor <cursoragent@cursor.com>
|
/gemini review |
There was a problem hiding this comment.
Code Review
This pull request adds documentation, examples, and tests for using CREATE PROTO BUNDLE and ALTER PROTO BUNDLE setup DDLs alongside WithSetupFileDescriptorSet and WithSetupRawFileDescriptorSet. Specifically, it updates the README, adds a runnable example in example_test.go, clarifies the documentation in options.go, and introduces integration tests in proto_bundle_test.go to verify the proto bundle setup. I have no feedback to provide as the changes are well-implemented and documented.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
Summary
spanner-emulator-surveyconfirmedWithSetupFileDescriptorSet/WithSetupRawFileDescriptorSetwork on the emulator create path; no API bug fixes were needed.INFORMATION_SCHEMA.SCHEMATA.PROTO_BUNDLEis populated after bootstrap.WithSetupDDLs+ descriptor option pairing in README, pkg.go.dev example, and option doc comment.Test plan
go test -race -run 'TestSetupEmulatorWithClientsProtoBundle|TestSetupClientsProtoBundleWithRawDescriptors' .golangci-lint runMade with Cursor