Get Involved
Edit on GitHubCommand: test
The turbot test
command runs tests for the mods. For example, you want to run a test
on the aws-chime
mod. Navigate to /turbot-v5/turbot-mods/packages/aws-chime
, and run:
turbot test
The Turbot Guardrails CLI will execute the complete test suite for aws-chime
mod and output the following result:
mod ✓ is parseable Compile mod ✓ Mod was successfully compiled Resource Types Chime [chime] Metadata map ✓ Valid - Base test Account [chimeAccount] ✓ Valid - All properties (95ms) ✓ Invalid - Wrong Account type (94ms) ✓ Invalid - Missing turbot data (78ms) Metadata map ✓ Valid - Base test Definitions chimeAka ✓ base (77ms) ✓ invalid aka (77ms) chimeAccount ✓ Valid - All properties (85ms) ✓ Invalid - Wrong Account type (75ms) ✓ Invalid - Missing turbot data (72ms) accId ✓ 8deafd50-6a37-404f-a96a-49acc1eb590b (71ms) ✓ invalid - cannot start at (86ms) name ✓ Valid - Base case (73ms) ✓ Invalid - Can not start with special characters (105ms) accountType ✓ Team (71ms) ✓ invalid - not listed in options (70ms) ✓ invalid - null value (76ms) accountAka ✓ Valid - Base case (72ms) ✓ Invalid - Region not needed (62ms) ✓ Invalid - Incorrect Account name (69ms)
22 passing (1s)
Usage
Usage: turbot test [options]
The turbot test
command runs tests for the mods.
The --dir
argument specifies the directory of the root module to use. If a path is not specified, the current working directory is used.
The supported options are:
--dir or -d
: Path to the Turbot mod that you want to run theturbot test
in.--pre-build
: Pre-build shell script.--peer-path
: Path to peer-dependencies.--quiet
: Set output verbosity level to quiet (only show failed tests).--watch or -w
: Watch the mod directory recursively and automatically re-run the command when a change is detected.--help
: Shows help.--verbose
: Set output verbosity level to verbose (show log output for all tests).--definitions
: Runs resource and definitions tests only. Does not run control or action tests.--control
: Select the control to run tests for. For example,turbot test --control chimeAccountCmdb
runs theCMDB
control forAWS > Chime > Account
.--action
: Select the action to run tests for. For example,turbot test --action chimeAccountDelete
runs theDelete
action forAWS > Chime > Account
.--policy
: Select the policy to run tests for. For example,turbot test --policy chimeAccountApproved
runs theApproved
policy forAWS > Chime > Account
.--report
: Select the report to run tests for.--test
: Select the control test to run. For example,turbot test --test "Pagination" --control chimeAccountDiscovery
runs the pagination test forAWS > Chime > Account
. The--test
parameter defaults to a case insensitive match, and also supports specific regular expressions by surrounding the string with/.../
.--control-log-level
: Set verbosity of inline controls logging output. Supported values areerror
,warning
,notice
,info
,debug
, andoff
.--test-data
: Runs the test data validation only.--skip-query-validation
: Skip the input graphQL query validation.--skip-test-data-validation
: Skip test data validation.--aws-profile
: Set the profile name to use when fetching aws credentials for the test run. The credentials are read from '~/.aws/credentials'