databricks-cli/integration
Denis Bilenko e5b836a6ac
Refactor initTestTemplate/deployBundle/destroyBundle to not return errors (#2017)
## Changes
These test helpers were updated to handle the error internally and not
return it. Since they have testing.T object, they can do so directly. On
the caller side, this functions were always followed by
require.NoError(t, err), that was cleaned up.

This approach helps reduce the setup/teardown boilerplate in the test
cases.

## Tests
Existing tests.
2024-12-16 13:41:32 +01:00
..
assumptions Remove superfluous name prefix for integration tests (#2012) 2024-12-13 15:47:50 +01:00
bundle Refactor initTestTemplate/deployBundle/destroyBundle to not return errors (#2017) 2024-12-16 13:41:32 +01:00
cmd Remove calls to `t.Setenv` from integration tests (#2018) 2024-12-16 12:34:37 +01:00
internal Move integration tests to `integration` package (#2009) 2024-12-13 15:38:58 +01:00
libs Remove calls to `t.Setenv` from integration tests (#2018) 2024-12-16 12:34:37 +01:00
python Remove calls to `testutil.GetEnvOrSkipTest(t, "CLOUD_ENV")` (#2014) 2024-12-13 16:09:51 +00:00
README.md Move integration tests to `integration` package (#2009) 2024-12-13 15:38:58 +01:00
enforce_convention_test.go Move integration tests to `integration` package (#2009) 2024-12-13 15:38:58 +01:00

README.md

Integration tests

This directory contains integration tests for the project.

The tree structure generally mirrors the source code tree structure.

Requirements for new files in this directory:

  • Every package must be named after its directory with _test appended
    • Requiring a different package name for integration tests avoids aliasing with the main package.
  • Every integration test package must include a main_test.go file.

These requirements are enforced by a unit test in this directory.

Running integration tests

Integration tests require the following environment variables:

  • CLOUD_ENV - set to the cloud environment to use (e.g. aws, azure, gcp)
  • DATABRICKS_HOST - set to the Databricks workspace to use
  • DATABRICKS_TOKEN - set to the Databricks token to use

Optional environment variables:

  • TEST_DEFAULT_WAREHOUSE_ID - set to the default warehouse ID to use
  • TEST_METASTORE_ID - set to the metastore ID to use
  • TEST_INSTANCE_POOL_ID - set to the instance pool ID to use
  • TEST_BRICKS_CLUSTER_ID - set to the cluster ID to use

To run all integration tests, use the following command:

go test ./integration/...

Alternatively:

make integration