-
Notifications
You must be signed in to change notification settings - Fork 439
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
Restructure testing #929
Restructure testing #929
Conversation
This looks really good! Re the bootstrap files in the root of core - is it sensible to put them somewhere in Core/src/Testing? I am not sure whether that is better though. |
@michaelbausor @dwsupplee Added the component integration. A new CLI called If a component is updated and about to be released, the test will use the local copy of that component. Otherwise it will allow composer to install at the requested version. The process in detail:
If you run this locally, I suggest making sure you're authenticated with github by setting the The latest commit also includes some fixes to composer files to provide dependencies required by tests. We'll need to figure out how to integrate this into our process. I'd like to setup some sort of a Travis trigger which will run against release pull requests. in the interim, it should be run locally before a release pull request is opened. edit: it won't work out of the box until |
* Add system test credentials CLI * Update Snippet testing for restructure * Fix unit tests for restructure * Fix system test runner * Fix conformance bootstrap * fix credentials CLIts * Fix docs * exclude dev folder from snippet parsing * install latest composer * Credentials CLI should not throw exception * Test component integration * Don't fail if extension is missing * skip tests if debugger ext is missing * Allow setting the search location paths for the SourceLocationResolver (googleapis#6)
* Manual changes for restructure * Restructure APIs via script * Fix Debugger snippets * Add github PR templates * Initial fixes for subrepos * Fix Core system tests * Update BigQuery system tests * Changes for Spanner * Update phpunit files * Update bootstrap files * Datastore updates * Add keyfile stub files * Updates for Firestore * Fix Language composer * Fix logging tests and composer * Fix pubsub composer and unit tests * Update Speech composer * Fix composer and tests for Storage * Update Trace composer * Update Translate composer * Update Vision composer * Update gapic only APIs * Update composer files * Rename test folders * Move tests and update namespaces * Update phpunit files * Update Core * Update doc generator to work with API restructure. * Changes after merging from master * Update after merge * Small fixes for docs * Update dev CLI for API restructure * Updates after merge, update Snippet namespaces * Move conformance and perf * Update bootstrap files * Update bootstrap * Address PR comments * Restore snippet test * Remove keyfile stubs * Update pubsub dependencies * Update composer, move debugger bin * Remove references to local Core * Update bootstrap files * Update docs * Update core to pass doc gen * Fix doc generator * Add daemonutils to locate autoloader * Remove DaemonUtils, update autoloader locator * Restructure testing (#929) * Add system test credentials CLI * Update Snippet testing for restructure * Fix unit tests for restructure * Fix system test runner * Fix conformance bootstrap * fix credentials CLIts * Fix docs * exclude dev folder from snippet parsing * install latest composer * Credentials CLI should not throw exception * Test component integration * Don't fail if extension is missing * skip tests if debugger ext is missing * Allow setting the search location paths for the SourceLocationResolver (#6) * update bin paths * move dlp v2 to new structure * require opis/closure for tests * add internal tags and fix cs * update configurations * resolve issues with perf/conformance tests * update bootstraps * update PR template * show bigtable on docs * fix doc generation
This pull request updates the four test suites to be (i think -- see below for more) fully compatible with the restructure. It also improves the management of snippet tests especially.
Unit, snippet and conformance tests can be run as a whole or on a single repository. System tests can be run against the full project just as they are now.
Next up is the pre-release tests of each component as a separate unit, which will have the added benefit of proving that the unit, snippet and conformance tests work as expected as a discrete suite (as opposed to as part of the umbrella). That'll be done early next week.
I placed a couple of bootstrap files in the root of Core. I'm not especially happy with that, but they need to be available to every component, so the umbrella
tests
folder wasn't an option. They can be moved quite easily though.sidenote: you don't need to include the composer autoloader. phpunit will find it on its own.