-
Notifications
You must be signed in to change notification settings - Fork 124
Add tools for C++ integration tests #103
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
Conversation
Adds the tools needed to build and run C++ integration tests. These derive from the corresponding tools in google3, with some changes and exceptions: build_testapps.py and build_desktop_testapps.py have been merged into a single, simpler build_testapps.py. restore_secrets.py is a new script that decrypts the secret files in scripts/gha-encrypted and restores all the files/values that were stripped out when pushing the integration source code to Github. Except for the reverse ids in the Info.plists needed for iOS, which are not present yet. xcodebuild.py, provisioning.py and xcode_tool.rb are all for iOS, which is not yet supported until signing is figured out. This also includes a change to .gitignore to ignore temporary Python files, as well as unencrypted secrets.
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.
Looks pretty good!
Probably worth discussing overall style guide we follow to keep things consistent in this repo
- documentation style
- absl-py as you mentioned
The reversed client ID can be extracted from GoogleService-Info.plist and google-services.json, if you want to just do that. |
Yeah that's a good call, simple to do and results in one fewer thing to maintain. |
The following changes have been made: - config_reader.py has been simplified to just return a plain data object containing all the needed config upfront. Thus it's only needed to call one function from the module once. - Added types to args in docstrings. - restore_secrets now restores the reverse id in Info.plists, using the value from the decrypted GoogleService-Info.plist as the source of truth.
We've decided to use absl.flags as the flag-parsing library for Python in the repo. Also removed reverse id patching from the xcode tool, since that's being handled by the secret restoration script.
Adds the tools needed to build and run C++ integration tests.
These derive from the corresponding tools in the internal repo, with some changes and exceptions:
This also includes a change to .gitignore to ignore temporary Python files, as well as unencrypted secrets.
There are still a few things I think I could improved, as we take this stuff out of the internal repo.
I'm open to making other large scale changes as well.
Another question is where we should be putting this stuff. testing/integration_testing might not be the best place, especially for restore_secrets.py, which should probably go into scripts/