Skip to content
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

feat: Add support for different output formats on project view and project variables view command #328

Open
wants to merge 8 commits into
base: main
Choose a base branch
from

Add header if output format is bold

98078bf
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
Open

feat: Add support for different output formats on project view and project variables view command #328

Add header if output format is bold
98078bf
Select commit
Loading
Failed to load commit list.
GitHub Actions / Test Results succeeded Mar 4, 2024 in 0s

407 passed, 0 failed and 0 skipped

Tests passed successfully

✅ unit-tests.xml

407 tests were completed in 34s with 407 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
github.com/OctopusDeploy/cli/pkg/apiclient 23✅ 31ms
github.com/OctopusDeploy/cli/pkg/cmd 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/aws 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/aws/create 2✅ 16ms
github.com/OctopusDeploy/cli/pkg/cmd/account/aws/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/azure 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/azure-oidc 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/azure-oidc/create 2✅ 7ms
github.com/OctopusDeploy/cli/pkg/cmd/account/azure-oidc/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/azure/create 2✅ 10ms
github.com/OctopusDeploy/cli/pkg/cmd/account/azure/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/create 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/delete 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/gcp 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/gcp/create 2✅ 10ms
github.com/OctopusDeploy/cli/pkg/cmd/account/gcp/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/helper 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/shared 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/ssh 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/ssh/create 2✅ 12ms
github.com/OctopusDeploy/cli/pkg/cmd/account/ssh/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/token 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/token/create 2✅ 11ms
github.com/OctopusDeploy/cli/pkg/cmd/account/token/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/username 0ms
github.com/OctopusDeploy/cli/pkg/cmd/account/username/create 2✅ 11ms
github.com/OctopusDeploy/cli/pkg/cmd/account/username/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/config 0ms
github.com/OctopusDeploy/cli/pkg/cmd/config/get 0ms
github.com/OctopusDeploy/cli/pkg/cmd/config/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/config/set 0ms
github.com/OctopusDeploy/cli/pkg/cmd/environment 0ms
github.com/OctopusDeploy/cli/pkg/cmd/environment/delete 0ms
github.com/OctopusDeploy/cli/pkg/cmd/environment/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/login 14✅ 25ms
github.com/OctopusDeploy/cli/pkg/cmd/logout 1✅ 8ms
github.com/OctopusDeploy/cli/pkg/cmd/model 0ms
github.com/OctopusDeploy/cli/pkg/cmd/package 0ms
github.com/OctopusDeploy/cli/pkg/cmd/package/list 5✅ 30ms
github.com/OctopusDeploy/cli/pkg/cmd/package/nuget 0ms
github.com/OctopusDeploy/cli/pkg/cmd/package/nuget/create 0ms
github.com/OctopusDeploy/cli/pkg/cmd/package/support 5✅ 20ms
github.com/OctopusDeploy/cli/pkg/cmd/package/upload 9✅ 22ms
github.com/OctopusDeploy/cli/pkg/cmd/package/versions 6✅ 21ms
github.com/OctopusDeploy/cli/pkg/cmd/package/zip 0ms
github.com/OctopusDeploy/cli/pkg/cmd/package/zip/create 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/branch 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/branch/create 2✅ 9ms
github.com/OctopusDeploy/cli/pkg/cmd/project/branch/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/branch/shared 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/clone 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/connect 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/convert 3✅ 8ms
github.com/OctopusDeploy/cli/pkg/cmd/project/create 1✅ 8ms
github.com/OctopusDeploy/cli/pkg/cmd/project/delete 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/disconnect 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/shared 3✅ 8ms
github.com/OctopusDeploy/cli/pkg/cmd/project/variables 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/variables/create 6✅ 8ms
github.com/OctopusDeploy/cli/pkg/cmd/project/variables/delete 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/variables/exclude 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/variables/include 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/variables/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/variables/shared 4✅ 6ms
github.com/OctopusDeploy/cli/pkg/cmd/project/variables/update 5✅ 11ms
github.com/OctopusDeploy/cli/pkg/cmd/project/variables/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/project/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/projectgroup 0ms
github.com/OctopusDeploy/cli/pkg/cmd/projectgroup/create 0ms
github.com/OctopusDeploy/cli/pkg/cmd/projectgroup/delete 0ms
github.com/OctopusDeploy/cli/pkg/cmd/projectgroup/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/projectgroup/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/release 0ms
github.com/OctopusDeploy/cli/pkg/cmd/release/create 101✅ 88ms
github.com/OctopusDeploy/cli/pkg/cmd/release/delete 13✅ 86ms
github.com/OctopusDeploy/cli/pkg/cmd/release/deploy 31✅ 86ms
github.com/OctopusDeploy/cli/pkg/cmd/release/list 9✅ 53ms
github.com/OctopusDeploy/cli/pkg/cmd/root 0ms
github.com/OctopusDeploy/cli/pkg/cmd/runbook 0ms
github.com/OctopusDeploy/cli/pkg/cmd/runbook/list 10✅ 29ms
github.com/OctopusDeploy/cli/pkg/cmd/runbook/run 3✅ 10ms
github.com/OctopusDeploy/cli/pkg/cmd/space 0ms
github.com/OctopusDeploy/cli/pkg/cmd/space/create 2✅ 8ms
github.com/OctopusDeploy/cli/pkg/cmd/space/delete 0ms
github.com/OctopusDeploy/cli/pkg/cmd/space/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/space/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/azure-web-app 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/azure-web-app/create 5✅ 12ms
github.com/OctopusDeploy/cli/pkg/cmd/target/azure-web-app/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/azure-web-app/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/cloud-region 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/cloud-region/create 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/cloud-region/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/cloud-region/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/delete 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/kubernetes 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/kubernetes/create 5✅ 8ms
github.com/OctopusDeploy/cli/pkg/cmd/target/kubernetes/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/kubernetes/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/listening-tentacle 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/listening-tentacle/create 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/listening-tentacle/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/listening-tentacle/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/polling-tentacle 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/polling-tentacle/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/polling-tentacle/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/shared 11✅ 9ms
github.com/OctopusDeploy/cli/pkg/cmd/target/ssh 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/ssh/create 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/ssh/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/ssh/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/target/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/task 0ms
github.com/OctopusDeploy/cli/pkg/cmd/task/wait 1✅ 5s
github.com/OctopusDeploy/cli/pkg/cmd/tenant 0ms
github.com/OctopusDeploy/cli/pkg/cmd/tenant/clone 2✅ 7ms
github.com/OctopusDeploy/cli/pkg/cmd/tenant/connect 4✅ 8ms
github.com/OctopusDeploy/cli/pkg/cmd/tenant/create 1✅ 7ms
github.com/OctopusDeploy/cli/pkg/cmd/tenant/delete 0ms
github.com/OctopusDeploy/cli/pkg/cmd/tenant/disconnect 7✅ 8ms
github.com/OctopusDeploy/cli/pkg/cmd/tenant/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/tenant/shared 0ms
github.com/OctopusDeploy/cli/pkg/cmd/tenant/tag 0ms
github.com/OctopusDeploy/cli/pkg/cmd/tenant/variables 0ms
github.com/OctopusDeploy/cli/pkg/cmd/tenant/variables/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/tenant/variables/update 4✅ 8ms
github.com/OctopusDeploy/cli/pkg/cmd/tenant/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/user 0ms
github.com/OctopusDeploy/cli/pkg/cmd/user/delete 0ms
github.com/OctopusDeploy/cli/pkg/cmd/user/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/version 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/delete 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/listening-tentacle 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/listening-tentacle/create 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/listening-tentacle/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/listening-tentacle/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/polling-tentacle 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/polling-tentacle/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/polling-tentacle/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/shared 2✅ 7ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/ssh 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/ssh/create 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/ssh/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/ssh/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/worker/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/workerpool 0ms
github.com/OctopusDeploy/cli/pkg/cmd/workerpool/delete 0ms
github.com/OctopusDeploy/cli/pkg/cmd/workerpool/dynamic 0ms
github.com/OctopusDeploy/cli/pkg/cmd/workerpool/dynamic/create 2✅ 8ms
github.com/OctopusDeploy/cli/pkg/cmd/workerpool/dynamic/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/workerpool/list 0ms
github.com/OctopusDeploy/cli/pkg/cmd/workerpool/shared 0ms
github.com/OctopusDeploy/cli/pkg/cmd/workerpool/static 0ms
github.com/OctopusDeploy/cli/pkg/cmd/workerpool/static/create 2✅ 7ms
github.com/OctopusDeploy/cli/pkg/cmd/workerpool/static/view 0ms
github.com/OctopusDeploy/cli/pkg/cmd/workerpool/view 0ms
github.com/OctopusDeploy/cli/pkg/config 0ms
github.com/OctopusDeploy/cli/pkg/constants 0ms
github.com/OctopusDeploy/cli/pkg/constants/annotations 0ms
github.com/OctopusDeploy/cli/pkg/errors 0ms
github.com/OctopusDeploy/cli/pkg/executionscommon 31✅ 10ms
github.com/OctopusDeploy/cli/pkg/executor 0ms
github.com/OctopusDeploy/cli/pkg/factory 0ms
github.com/OctopusDeploy/cli/pkg/machinescommon 13✅ 10ms
github.com/OctopusDeploy/cli/pkg/output 0ms
github.com/OctopusDeploy/cli/pkg/question 7✅ 8ms
github.com/OctopusDeploy/cli/pkg/question/selectors 2✅ 8ms
github.com/OctopusDeploy/cli/pkg/question/shared/variables 0ms
github.com/OctopusDeploy/cli/pkg/surveyext 0ms
github.com/OctopusDeploy/cli/pkg/usage 0ms
github.com/OctopusDeploy/cli/pkg/util 36✅ 5ms
github.com/OctopusDeploy/cli/pkg/util/flag 0ms
github.com/OctopusDeploy/cli/pkg/validation 2✅ 4ms

✅ github.com/OctopusDeploy/cli/pkg/apiclient

✅ TestClient_GetSystemClient/GetSystemClient_returns_the_client
✅ TestClient_GetSystemClient/GetSystemClient_called_twice_returns_the_same_client_instance
✅ TestClient_GetSystemClient/GetSystemClient_contains_the_access_token_in_the_right_header_if_supplied
✅ TestClient_GetSystemClient
✅ TestClient_GetSpacedClient_NoPrompt/GetSpacedClient_returns_an_error_when_no_space_is_specified
✅ TestClient_GetSpacedClient_NoPrompt/GetSpacedClient_returns_an_error_when_a_space_with_the_wrong_name_is_specified
✅ TestClient_GetSpacedClient_NoPrompt/GetSpacedClient_works_when_the_Space_ID_is_directly_specified
✅ TestClient_GetSpacedClient_NoPrompt/GetSpacedClient_works_when_the_Space_ID_is_directly_specified_(case_insensitive)
✅ TestClient_GetSpacedClient_NoPrompt/GetSpacedClient_works_when_the_Space_Name_is_directly_specified
✅ TestClient_GetSpacedClient_NoPrompt/GetSpacedClient_works_when_the_Space_Name_is_directly_specified_(case_insensitive)
✅ TestClient_GetSpacedClient_NoPrompt/GetSpacedClient_will_select_by_name_in_preference_to_ID_where_there_is_a_collision
✅ TestClient_GetSpacedClient_NoPrompt/GetSpacedClient_called_twice_returns_the_same_client_instance_without_additional_requests
✅ TestClient_GetSpacedClient_NoPrompt/GetSpacedClient_contains_the_access_token_in_the_right_header_if_supplied
✅ TestClient_GetSpacedClient_NoPrompt
✅ TestValidateMandatoryEnvironment_WhenHostIsNotSupplied_ReturnsError
✅ TestValidateMandatoryEnvironment_WhenApiKeyAndAccessTokenAreNotSupplied_ReturnsError
✅ TestValidateMandatoryEnvironment_WhenHostAndApiKeyAreSupplied_DoesNotReturnError
✅ TestValidateMandatoryEnvironment_WhenHostAndAccessTokenAreSupplied_DoesNotReturnError
✅ TestNewClientFactory_WhenHostIsNotSupplied_ReturnsError
✅ TestNewClientFactory_WhenHostIsNotAValidUrl_ReturnsError
✅ TestNewClientFactory_WhenApiKeyAndAccessTokenAreNotSupplied_ReturnsError
✅ TestNewClientFactory_WhenHostAndApiKeyAreSupplied_ReturnsClientFactory
✅ TestNewClientFactory_WhenHostAndAccessTokenAreSupplied_ReturnsClientFactory

✅ github.com/OctopusDeploy/cli/pkg/cmd/account/aws/create

✅ TestAWSAccountCreatePromptMissing
✅ TestAWSAccountCreateNoPrompt

✅ github.com/OctopusDeploy/cli/pkg/cmd/account/azure-oidc/create

✅ TestPromptMissing_AllOptionsSupplied
✅ TestPromptMissing_NoOptionsSupplied

✅ github.com/OctopusDeploy/cli/pkg/cmd/account/azure/create

✅ TestAzureAccountCreatePromptMissing
✅ TestAzureAccountCreateNoPrompt

✅ github.com/OctopusDeploy/cli/pkg/cmd/account/gcp/create

✅ TestGCPAccountCreatePromptMissing
✅ TestGCPAccountCreateNoPrompt

✅ github.com/OctopusDeploy/cli/pkg/cmd/account/ssh/create

✅ TestGCPAccountCreatePromptMissing
✅ TestGCPAccountCreateNoPrompt

✅ github.com/OctopusDeploy/cli/pkg/cmd/account/token/create

✅ TestTokenAccountCreatePromptMissing
✅ TestTokenAccountCreateNoPrompt

✅ github.com/OctopusDeploy/cli/pkg/cmd/account/username/create

✅ TestUsernameAccountCreatePromptMissing
✅ TestUsernameAccountCreateNoPrompt

✅ github.com/OctopusDeploy/cli/pkg/cmd/login

✅ TestLogin_ApiKey/interactive:_configures_server_and_api_key_correctly
✅ TestLogin_ApiKey/interactive:_uses_server_if_supplied
✅ TestLogin_ApiKey/interactive:_uses_api_key_if_supplied
✅ TestLogin_ApiKey/non-interactive:_uses_server_and_api_key
✅ TestLogin_ApiKey/non-interactive:_if_server_parameter_not_supplied_returns_error
✅ TestLogin_ApiKey/non-interactive:_if_server_value_not_supplied_returns_error
✅ TestLogin_ApiKey/non-interactive:_if_api_key_parameter_not_supplied_returns_error
✅ TestLogin_ApiKey/non-interactive:_if_api_key_value_not_supplied_returns_error
✅ TestLogin_ApiKey/non-interactive:_if_api_key_is_invalid_returns_error
✅ TestLogin_ApiKey
✅ TestLogin_OpenIdConnect/logs_in_with_OIDC,_configures_server_and_access_token_correctly
✅ TestLogin_OpenIdConnect/when_token_exchange_with_Octopus_Server_fails,_returns_error
✅ TestLogin_OpenIdConnect/when_test_of_access_token_fails,_returns_error
✅ TestLogin_OpenIdConnect

✅ github.com/OctopusDeploy/cli/pkg/cmd/logout

✅ TestLogout_SetsConfigCorrectly

✅ github.com/OctopusDeploy/cli/pkg/cmd/package/list

✅ TestPackageList/list_all_packages_by_default
✅ TestPackageList/pass_through_filter_and_limit
✅ TestPackageList/outputformat_json
✅ TestPackageList/outputformat_basic
✅ TestPackageList

✅ github.com/OctopusDeploy/cli/pkg/cmd/package/support

✅ TestVerboseOut_WithVerboseEnabled
✅ TestVerboseOut_WithVerboseDisabled
✅ TestBuildTimestampSemVer
✅ TestBuildOutFileName
✅ TestPanicImmediately

✅ github.com/OctopusDeploy/cli/pkg/cmd/package/upload

✅ TestPackageUpload/requires_at_least_one_package
✅ TestPackageUpload/uploads_a_single_package
✅ TestPackageUpload/uploads_multiple_packages
✅ TestPackageUpload/sets_overwriteMode
✅ TestPackageUpload/uploads_multiple_packages;_default_behaviour_of_failing_on_first_error
✅ TestPackageUpload/uploads_multiple_packages;_--continue-on-error
✅ TestPackageUpload/uploads_multiple_packages;_doesn't_upload_the_same_file_more_than_once
✅ TestPackageUpload/output-format=json,_uploads_multiple_packages;_--continue-on-error
✅ TestPackageUpload

✅ github.com/OctopusDeploy/cli/pkg/cmd/package/versions

✅ TestPackageVersions/package_versions_requires_a_package_ID
✅ TestPackageVersions/lists_all_package_versions
✅ TestPackageVersions/pass_through_filter_and_limit
✅ TestPackageVersions/outputformat_json
✅ TestPackageVersions/outputformat_basic
✅ TestPackageVersions

✅ github.com/OctopusDeploy/cli/pkg/cmd/project/branch/create

✅ TestPromptMissing_AllFlagsSupplied
✅ TestPromptMissing_NoFlagsSupplied

✅ github.com/OctopusDeploy/cli/pkg/cmd/project/convert

✅ TestPromptForConfigAsCode_UsingCacWithProjectStorage
✅ TestPromptForConfigAsCode_UsingCacWithLibraryStorage
✅ TestPromptForConfigAsCode_UsingCacWithBranchProtection

✅ github.com/OctopusDeploy/cli/pkg/cmd/project/create

✅ TestPromptForConfigAsCode_NotUsingCac

✅ github.com/OctopusDeploy/cli/pkg/cmd/project/shared

✅ TestAskProjectGroup_WithProvidedName
✅ TestAskProjectGroup_WithExistingProjectGroup
✅ TestAskProjectGroup_WithNewProjectGroup

✅ github.com/OctopusDeploy/cli/pkg/cmd/project/variables/create

✅ TestPromptMissing_AllFlagsProvided
✅ TestPromptMissing_AllFlagsProvided_PromptedVariable
✅ TestPromptMissing_NoFlags
✅ TestPromptMissing_PromptedVariableForSelectOptions
✅ TestPromptVersionControl_NoFlagsSupplied_ExistingBranch
✅ TestPromptVersionControl_ProjectNotVersionControlled

✅ github.com/OctopusDeploy/cli/pkg/cmd/project/variables/shared

✅ TestPromptScopes
✅ TestPromptScopes_Prompted
✅ TestPromptScope_NoItems
✅ TestPromptScope_HasItems

✅ github.com/OctopusDeploy/cli/pkg/cmd/project/variables/update

✅ TestPromptMissing_AllFlagsProvided
✅ TestPromptMissing_NoFlags_LeaveScope
✅ TestPromptMissing_NoFlags_ReplaceScope
✅ TestPromptMissing_Unscope
✅ TestPromptMissing_VersionControlledProject_NoGitRefSupplied

✅ github.com/OctopusDeploy/cli/pkg/cmd/release/create

✅ TestReleaseCreate_AskQuestions_RegularProject/standard_process_asking_for_everything_including_release_notes;_no_packages,_release_version_from_template
✅ TestReleaseCreate_AskQuestions_RegularProject/asking_for_nothing_in_interactive_mode;_no_packages,_release_version_specified
✅ TestReleaseCreate_AskQuestions_RegularProject/asking_for_release_version_based_on_template;_packages_exist
✅ TestReleaseCreate_AskQuestions_RegularProject/asking_for_release_version_based_on_donor_package;_package_exists_and_dictates_the_release_version_-_add_metadata
✅ TestReleaseCreate_AskQuestions_RegularProject/asking_for_release_version_based_on_donor_package;_package_exists_and_dictates_the_release_version_-_don't_add_metadata
✅ TestReleaseCreate_AskQuestions_RegularProject
✅ TestReleaseCreate_AskQuestions_VersionControlledProject/standard_process_asking_for_everything;_no_packages,_release_version_from_template,_specific_git_commit_not_set
✅ TestReleaseCreate_AskQuestions_VersionControlledProject/standard_process_asking_for_everything;_no_packages,_release_version_from_template,_specific_git_commit_set_which_is_passed_to_the_server
✅ TestReleaseCreate_AskQuestions_VersionControlledProject/standard_process_asking_for_everything;_no_packages,_release_version_from_template,_doesn't_ask_for_git_ref_if_already_specified
✅ TestReleaseCreate_AskQuestions_VersionControlledProject
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/no-op_test
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/override_package_based_on_package_ID
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/override_package_based_on_step_name
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/override_package_based_on_package_reference
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/entering_the_loop_with_--package-version_picked_up_from_the_command_line
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/entering_the_loop_with_--package_picked_up_from_the_command_line
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/entering_the_loop_with_--package-version_and_--package(s)_picked_up_from_the_command_line
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/blank_answer_retries_the_question
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/can't_specify_garbage;_question_loop_retries
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/can't_specify_packages_or_steps_that_aren't_there_due_to_validator;_question_loop_retries
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/question_loop_doesn't_retry_if_it_gets_a_hard_error
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/multiple_overrides_with_undo
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/multiple_overrides_with_reset
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/if_we_enter_the_loop_with_any_unresolved_packages,_force_version_selection_for_them_before_entering_the_main_loop
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/if_we_enter_the_loop_with_any_unresolved_packages,_forced_version_selection_doesn't_accept_bad_input
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/if_we_enter_the_loop_with_any_unresolved_packages,_pick_up_--package-version_before_assuming_they're_unresolved
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop/if_we_enter_the_loop_with_any_unresolved_packages,_pick_up_--package_before_assuming_they're_unresolved
✅ TestReleaseCreate_AskQuestions_AskPackageOverrideLoop
✅ TestReleaseCreate_AutomationMode/release_creation_requires_a_project_name
✅ TestReleaseCreate_AutomationMode/release_creation_specifying_project_only_(bare_minimum)
✅ TestReleaseCreate_AutomationMode/release_creation_specifying_project_only_(bare_minimum)#01
✅ TestReleaseCreate_AutomationMode/release_creation_outputformat_basic
✅ TestReleaseCreate_AutomationMode/release_creation_outputformat_json
✅ TestReleaseCreate_AutomationMode/release_creation_specifying_gitcommit_and_gitref
✅ TestReleaseCreate_AutomationMode/release_creation_specifying_package_default_version_+_overrides
✅ TestReleaseCreate_AutomationMode/can't_specify_release-notes_and_release-notes-file_at_the_same_time
✅ TestReleaseCreate_AutomationMode/release_creation_with_all_the_flags
✅ TestReleaseCreate_AutomationMode/release_creation_with_all_the_flags_(legacy_aliases)
✅ TestReleaseCreate_AutomationMode/release_creation_with_all_the_flags_(short_flags_where_available)
✅ TestReleaseCreate_AutomationMode/release-notes-file_pickup
✅ TestReleaseCreate_AutomationMode
✅ TestReleaseCreate_BuildPackageVersionBaseline/builds_empty_list_for_no_packages
✅ TestReleaseCreate_BuildPackageVersionBaseline/builds_list_for_single_package/step
✅ TestReleaseCreate_BuildPackageVersionBaseline/builds_list_for_multiple_package/steps_with_some_overlapping_packages;_no_duplicate_requests_sent_to_server
✅ TestReleaseCreate_BuildPackageVersionBaseline/builds_list_for_multiple_package/steps_with_some_overlapping_packages_where_channel_rules_call_for_differing_versions
✅ TestReleaseCreate_BuildPackageVersionBaseline/still_returns_a_value_if_the_server_returns_zero_available_packages
✅ TestReleaseCreate_BuildPackageVersionBaseline/fails_if_the_server_returns_zero_available_packages;_dynamic_packages,_including_where_the_Feed_ID_is_templated
✅ TestReleaseCreate_BuildPackageVersionBaseline
✅ TestReleaseCreate_ToPackageOverrideString/ver-only
✅ TestReleaseCreate_ToPackageOverrideString/action-ver
✅ TestReleaseCreate_ToPackageOverrideString/action-ver-2
✅ TestReleaseCreate_ToPackageOverrideString/pkg-ver
✅ TestReleaseCreate_ToPackageOverrideString/pkg-ver-2
✅ TestReleaseCreate_ToPackageOverrideString/pkg-action-ver
✅ TestReleaseCreate_ToPackageOverrideString/pkg-ref-ver
✅ TestReleaseCreate_ToPackageOverrideString/action-ref-ver
✅ TestReleaseCreate_ToPackageOverrideString/star-ref-ver
✅ TestReleaseCreate_ToPackageOverrideString/pkg-action-ref-ver
✅ TestReleaseCreate_ToPackageOverrideString
✅ TestReleaseCreate_ParsePackageOverrideString/:5
✅ TestReleaseCreate_ParsePackageOverrideString/::5
✅ TestReleaseCreate_ParsePackageOverrideString/*:5
✅ TestReleaseCreate_ParsePackageOverrideString/*:*:5
✅ TestReleaseCreate_ParsePackageOverrideString/:*:5
✅ TestReleaseCreate_ParsePackageOverrideString/NuGet:NuGet:0.1
✅ TestReleaseCreate_ParsePackageOverrideString/NuGet:nuget-on-install:0.1
✅ TestReleaseCreate_ParsePackageOverrideString/Install:nuget-on-install:0.1
✅ TestReleaseCreate_ParsePackageOverrideString/pterm:9.7-pre-xyz
✅ TestReleaseCreate_ParsePackageOverrideString/pterm:55
✅ TestReleaseCreate_ParsePackageOverrideString/pterm::55
✅ TestReleaseCreate_ParsePackageOverrideString/:Push_Package:55
✅ TestReleaseCreate_ParsePackageOverrideString/*:Push_Package:55
✅ TestReleaseCreate_ParsePackageOverrideString/pterm/Push_Package=9.7-pre-xyz
✅ TestReleaseCreate_ParsePackageOverrideString/pterm=Push_Package/9.7-pre-xyz
✅ TestReleaseCreate_ParsePackageOverrideString/#00
✅ TestReleaseCreate_ParsePackageOverrideString/5
✅ TestReleaseCreate_ParsePackageOverrideString/fish
✅ TestReleaseCreate_ParsePackageOverrideString/Install:pterm:nuget:5
✅ TestReleaseCreate_ParsePackageOverrideString/:x5
✅ TestReleaseCreate_ParsePackageOverrideString/NuGet:NuGet:dog
✅ TestReleaseCreate_ParsePackageOverrideString
✅ TestReleaseCreate_ResolvePackageOverride/match_on_package_ID
✅ TestReleaseCreate_ResolvePackageOverride/match_on_step_name
✅ TestReleaseCreate_ResolvePackageOverride/match_on_packageRef
✅ TestReleaseCreate_ResolvePackageOverride/match_on_just_version
✅ TestReleaseCreate_ResolvePackageOverride/match_on_just_version_doesn't_even_need_any_packages_to_look_at
✅ TestReleaseCreate_ResolvePackageOverride/match_on_action+packageRef_before_packageID
✅ TestReleaseCreate_ResolvePackageOverride/match_on_packageID+packageRef_picks_the_first_one_where_they_are_the_same
✅ TestReleaseCreate_ResolvePackageOverride/match_on_packageID+packageRef_picks_the_correct_one_where_they_are_different
✅ TestReleaseCreate_ResolvePackageOverride/match_on_packageRef_wins_over_match_on_ActionName
✅ TestReleaseCreate_ResolvePackageOverride/match_on_packageRef_wins_over_match_on_PackageID
✅ TestReleaseCreate_ResolvePackageOverride
✅ TestReleaseCreate_ApplyPackageOverride/apply_wildcard_override
✅ TestReleaseCreate_ApplyPackageOverride/apply_one_override_based_on_package_ID
✅ TestReleaseCreate_ApplyPackageOverride/apply_one_override_based_on_step_name
✅ TestReleaseCreate_ApplyPackageOverride/apply_one_override_based_on_both_package_and_step_name
✅ TestReleaseCreate_ApplyPackageOverride/apply_multiple_overrides
✅ TestReleaseCreate_ApplyPackageOverride/apply_multiple_overrides;_order_matters
✅ TestReleaseCreate_ApplyPackageOverride/apply_single_override_targeting_only_package-ref
✅ TestReleaseCreate_ApplyPackageOverride/target_both_of_package-ref:action_where_package_referencename_matches_another_package_too
✅ TestReleaseCreate_ApplyPackageOverride

✅ github.com/OctopusDeploy/cli/pkg/cmd/release/delete

✅ TestReleaseDelete/noprompt:_requires_a_project
✅ TestReleaseDelete/noprompt:_requires_at_least_one_version
✅ TestReleaseDelete/noprompt:_picks_up_version_and_project_from_flags_and_deletes_matching_releases
✅ TestReleaseDelete/noprompt:_picks_up_version_and_project_from_args_and_deletes_matching_releases
✅ TestReleaseDelete/noprompt:_picks_up_version_and_project_from_args_and_deletes_matching_releases#01
✅ TestReleaseDelete/noprompt:_picks_up_project_from_first_arg_and_versions_from_subsequent
✅ TestReleaseDelete/noprompt:_picks_up_version_from_first_arg_if_project_is_specified_using_a_flag
✅ TestReleaseDelete/noprompt:_error_when_deleting_1_release_and_it_fails
✅ TestReleaseDelete/noprompt:_error_when_deleting_1_release_and_it_fails_due_to_HTTP_statuscode_rather_than_network_error
✅ TestReleaseDelete/noprompt:_error_when_deleting_4_releases_and_two_fail;_it_keeps_going_past_errors
✅ TestReleaseDelete/interactive:_prompt_for_everything_and_delete_multiple_releases_with_confirm
✅ TestReleaseDelete/interactive:_project_and_releases_specified_on_cmdline,_only_prompt_for_confirmation
✅ TestReleaseDelete

✅ github.com/OctopusDeploy/cli/pkg/cmd/release/deploy

✅ TestDeployCreate_AskQuestions/default_process_asking_for_standard_things_(non-tenanted,_no_advanced_options)
✅ TestDeployCreate_AskQuestions/default_process_picking_up_standard_things_from_cmdline_(non-tenanted,_no_advanced_options)
✅ TestDeployCreate_AskQuestions/prompted_variable
✅ TestDeployCreate_AskQuestions/only_prompt_required_variables
✅ TestDeployCreate_AskQuestions/tenants_and_tags_in_a_definitely_tenanted_project
✅ TestDeployCreate_AskQuestions/tenants_and_tags_in_a_maybe_tenanted_project_(choosing_tenanted)
✅ TestDeployCreate_AskQuestions/tenants_and_tags_in_a_maybe_tenanted_project_(choosing_untenanted)
✅ TestDeployCreate_AskQuestions/advanced_options
✅ TestDeployCreate_AskQuestions/advanced_options_doesn't_need_to_lookup_environments_if_the_Q&A_process_already_asked_for_them
✅ TestDeployCreate_AskQuestions/advanced_options_pickup_from_command_line;_doesn't_ask_if_all_opts_are_supplied
✅ TestDeployCreate_AskQuestions/advanced_options_pickup_from_command_line;_explicit_default_values
✅ TestDeployCreate_AskQuestions/scheduled_start_time;_interactive_start_times_less_than_1_minute_in_future_are_interpreted_as_'now'
✅ TestDeployCreate_AskQuestions/scheduled_start_time;_interactive_start_times_greater_than_1_minute_in_future_are_interpreted_as_scheduled
✅ TestDeployCreate_AskQuestions
✅ TestDeployCreate_AutomationMode/release_deploy_requires_a_project_name
✅ TestDeployCreate_AutomationMode/release_deploy_requires_a_release_version
✅ TestDeployCreate_AutomationMode/release_deploy_requires_at_least_one_environment
✅ TestDeployCreate_AutomationMode/release_deploy_specifying_project,_version,_env_only_(bare_minimum)_assuming_untenanted
✅ TestDeployCreate_AutomationMode/release_deploy_specifying_project,_version,_env_only_(bare_minimum)_assuming_untenanted;_basic_output_format
✅ TestDeployCreate_AutomationMode/release_deploy_specifying_project,_version,_env_only_(bare_minimum)_assuming_untenanted;_json_output_format
✅ TestDeployCreate_AutomationMode/release_deploy_specifying_project,_version,_env_only_(bare_minimum)_assuming_tenanted
✅ TestDeployCreate_AutomationMode/release_deploy_specifying_project,_version,_env_only_(bare_minimum)_assuming_tenanted_via_tags
✅ TestDeployCreate_AutomationMode/release_deploy_specifying_all_the_args;_untentanted
✅ TestDeployCreate_AutomationMode/release_deploy_specifying_all_the_args;_tentanted
✅ TestDeployCreate_AutomationMode
✅ TestDeployCreate_GenerationOfAutomationCommand_MasksSensitiveVariables
✅ TestDeployCreate_PrintAdvancedSummary/default_state
✅ TestDeployCreate_PrintAdvancedSummary/all_the_things_different
✅ TestDeployCreate_PrintAdvancedSummary/variation_on_include_deployment_targets_only
✅ TestDeployCreate_PrintAdvancedSummary/variation_on_exclude_deployment_targets_only
✅ TestDeployCreate_PrintAdvancedSummary

✅ github.com/OctopusDeploy/cli/pkg/cmd/release/list

✅ TestReleaseList/release_list_requires_a_project_name_in_automation_mode
✅ TestReleaseList/release_list_prompts_for_project_name_in_interactive_mode
✅ TestReleaseList/release_list_picks_up_project_from_args_in_automation_mode_and_prints_list_with_multiple_channels
✅ TestReleaseList/release_list_picks_up_project_from_flag_in_automation_mode_and_prints_list
✅ TestReleaseList/release_list_picks_up_project_from_short_flag_in_automation_mode_and_prints_list
✅ TestReleaseList/outputFormat_json
✅ TestReleaseList/outputFormat_basic
✅ TestReleaseList/outputFormat_basic_in_interactive_mode_doesn't_print_'helpful'_extra_information
✅ TestReleaseList

✅ github.com/OctopusDeploy/cli/pkg/cmd/runbook/list

✅ TestRunbookList/runbook_list_requires_a_project_name_in_automation_mode
✅ TestRunbookList/runbook_list_prompts_for_project_name_in_interactive_mode
✅ TestRunbookList/runbook_list_picks_up_project_from_args_in_automation_mode_and_prints_list
✅ TestRunbookList/runbook_list_picks_up_project_from_flag_in_automation_mode_and_prints_list
✅ TestRunbookList/runbook_list_picks_up_project_from_short_flag_in_automation_mode_and_prints_list
✅ TestRunbookList/runbook_list_limit_and_filter
✅ TestRunbookList/outputFormat_json
✅ TestRunbookList/outputFormat_basic
✅ TestRunbookList/outputFormat_basic_in_interactive_mode_doesn't_print_'helpful'_extra_information
✅ TestRunbookList

✅ github.com/OctopusDeploy/cli/pkg/cmd/runbook/run

✅ TestRunbookRun_AskQuestions
✅ TestRunbookRun_AutomationMode
✅ TestRunbookRun_GenerationOfAutomationCommand_MasksSensitiveVariables

✅ github.com/OctopusDeploy/cli/pkg/cmd/space/create

✅ TestPromptMissing_AllOptionsSupplied
✅ TestPromptMissing_NoOptionsSupplied

✅ github.com/OctopusDeploy/cli/pkg/cmd/target/azure-web-app/create

✅ TestPromptForWebApp_FlagsSupplied
✅ TestPromptForWebApp_NoFlagsSupplied
✅ TestPromptForWebApp_NoSlotsAvailable
✅ TestPromptForAccount_FlagSupplied
✅ TestPromptForAccount_NoFlagSupplied

✅ github.com/OctopusDeploy/cli/pkg/cmd/target/kubernetes/create

✅ TestAuthType_UsernamePassword
✅ TestAuthType_Token
✅ TestAuthType_Azure
✅ TestAuthType_GCP
✅ TestAuthType_AWS

✅ github.com/OctopusDeploy/cli/pkg/cmd/target/shared

✅ TestPromptEnvironments_FlagsSupplied
✅ TestPromptEnvironments_ShouldPrompt
✅ TestDistinctRoles_EmptyList
✅ TestDistinctRoles_DuplicateValues
✅ TestPromptRoles_FlagsSupplied
✅ TestPromptRolesAndEnvironments_ShouldPrompt
✅ TestPromptForTenant_FlagSupplied
✅ TestPromptForTenant_NoFlagsSupplied_ShouldPrompt
✅ TestPromptForWorkerPool_FlagsSupplied
✅ TestPromptForWorkerPool_NoFlagsSupplied
✅ TestPromptForWorkerPool_UseDefault

✅ github.com/OctopusDeploy/cli/pkg/cmd/task/wait

✅ TestWait

✅ github.com/OctopusDeploy/cli/pkg/cmd/tenant/clone

✅ TestPromptMissing_AllFlagsSupplied
✅ TestPromptMissing_NoFlagsSupplied

✅ github.com/OctopusDeploy/cli/pkg/cmd/tenant/connect

✅ TestPromptMissing_AllOptionsSupplied
✅ TestPromptMissing_ProjectSupportsTenants
✅ TestPromptForEnablingTenantedDeployments_AnswerYes_ShouldError
✅ TestPromptForEnablingTenantedDeployments_AnswerNo_ShouldError

✅ github.com/OctopusDeploy/cli/pkg/cmd/tenant/create

✅ TestTenantCreate_Tags

✅ github.com/OctopusDeploy/cli/pkg/cmd/tenant/disconnect

✅ TestPromptMissing_AllOptionsSupplied
✅ TestPromptForProject_ZeroProjectsConnected
✅ TestPromptForProject_OneProjectConnected
✅ TestPromptForProject_MultipleProjectsConnected
✅ TestDisconnectRun_NoConfirmation_ShouldError
✅ TestDisconnectRun_NotConnectedToAnyProjects_ShouldError
✅ TestDisconnectRun_NotConnectedToProject_ShouldError

✅ github.com/OctopusDeploy/cli/pkg/cmd/tenant/variables/update

✅ TestPromptMissing_ProjectVariable_AllFlagsProvided
✅ TestPromptMissing_LibraryVariable_AllFlagsProvided
✅ TestPromptMissing_LibraryVariable_NoFlagsProvided
✅ TestPromptMissing_ProjectVariable_NoFlagsProvided

✅ github.com/OctopusDeploy/cli/pkg/cmd/worker/shared

✅ TestPromptForWorkerPool_FlagsSupplied
✅ TestPromptForWorkerPool_NoFlagsSupplied

✅ github.com/OctopusDeploy/cli/pkg/cmd/workerpool/dynamic/create

✅ TestPromptMissing_FlagsSupplied
✅ TestPromptMissing_ShouldPrompt

✅ github.com/OctopusDeploy/cli/pkg/cmd/workerpool/static/create

✅ TestPromptMissing_FlagsSupplied
✅ TestPromptMissing_ShouldPrompt

✅ github.com/OctopusDeploy/cli/pkg/executionscommon

✅ TestAskVariables/doesn't_do_anything_if_there_are_no_variables
✅ TestAskVariables/variablesFromCmd_are_filtered_and_normalized_against_the_server
✅ TestAskVariables/prompts_for_a_single_line_text
✅ TestAskVariables/single_line_text_with_default_value
✅ TestAskVariables/prompts_for_a_single_line_text_with_explicit_display_settings_and_required
✅ TestAskVariables/prompts_for_a_sensitive_value_(isSensitive_on_variable_declaration)
✅ TestAskVariables/prompts_for_a_sensitive_value_(controlType=sensitive)
✅ TestAskVariables/prompts_for_a_sensitive_value_(variable.type=sensitive)
✅ TestAskVariables/does_not_prompt_for_complex_variable_types
✅ TestAskVariables/prompts_for_a_combo_box_value
✅ TestAskVariables/combo_box_with_default_value
✅ TestAskVariables/checkbox
✅ TestAskVariables/checkbox_with_default_value_true
✅ TestAskVariables
✅ TestParseVariableStringArray/foo:bar
✅ TestParseVariableStringArray/foo:bar,baz:qux
✅ TestParseVariableStringArray/foo=bar,baz=qux
✅ TestParseVariableStringArray/foo:bar:more=stuff
✅ TestParseVariableStringArray/trims_whitespace
✅ TestParseVariableStringArray/blank
✅ TestParseVariableStringArray/no_delimeter
✅ TestParseVariableStringArray/missing_key
✅ TestParseVariableStringArray/missing_val
✅ TestParseVariableStringArray
✅ TestToVariableStringArray/foo:bar
✅ TestToVariableStringArray/foo:bar:more=stuff
✅ TestToVariableStringArray/strips_empty_keys
✅ TestToVariableStringArray/strips_empty_values
✅ TestToVariableStringArray/foo:bar,baz:qux
✅ TestToVariableStringArray/baz:qux,foo:bar
✅ TestToVariableStringArray

✅ github.com/OctopusDeploy/cli/pkg/machinescommon

✅ TestMachinePolicyFlagSupplied_ShouldNotPrompt
✅ TestNoFlag_ShouldPrompt
✅ TestProxyFlagSupplied_ShouldNotPrompt
✅ TestNoProxyFlag_ShouldPrompt
✅ TestNoProxyFlag_DirectConnection
✅ TestPromptForAccount_FlagsSupplied
✅ TestPromptForAccount_NoFlags
✅ TestPromptForDotNetConfig_FlagsSupplied
✅ TestPromptForDotNetConfig_NoFlags_SelfContainedCalamari
✅ TestPromptForDotNetConfig_NoFlags_MonoCalamari
✅ TestPromptForEndpoint_FlagsSupplied
✅ TestPromptForEndpoint_NoFlagSupplied
✅ TestPromptForEndpoint_NoPortSupplied_ShouldSelectDefault

✅ github.com/OctopusDeploy/cli/pkg/question

✅ TestQuestion_DeleteWithConfirmation_Success
✅ TestQuestion_DeleteWithConfirmation_invalidResponse
✅ TestQuestion_DeleteWithConfirmation_error
✅ TestQuestion_DeleteWithConfirmation_deleteError
✅ TestAskName
✅ TestMultiSelectMap_NoItems
✅ TestSelectMap_NoItems

✅ github.com/OctopusDeploy/cli/pkg/question/selectors

✅ TestSelectForSingleItem
✅ TestSelectForMultipleItem

✅ github.com/OctopusDeploy/cli/pkg/util

✅ Test_FlagAliases_string/basic
✅ Test_FlagAliases_string/alt
✅ Test_FlagAliases_string
✅ Test_FlagAliases_bool/basic
✅ Test_FlagAliases_bool/alt
✅ Test_FlagAliases_bool/no-opt
✅ Test_FlagAliases_bool
✅ Test_FlagAliases_slice/basic
✅ Test_FlagAliases_slice/alt
✅ Test_FlagAliases_slice/multiple
✅ Test_FlagAliases_slice/mixed
✅ Test_FlagAliases_slice
✅ TestExtractValuesMatchingKeys/happy_path_extracting_all_keys_in_order
✅ TestExtractValuesMatchingKeys/extracting_all_keys_in_a_different_order
✅ TestExtractValuesMatchingKeys/extracting_subset_of_keys
✅ TestExtractValuesMatchingKeys/extracting_missing_keys_returns_a_blank_value
✅ TestExtractValuesMatchingKeys
✅ TestMapCollectionWithLookups/typical_with_two_lookups
✅ TestMapCollectionWithLookups/just_one_lookup
✅ TestMapCollectionWithLookups/no_lookups
✅ TestMapCollectionWithLookups/allocates_internal_cache_if_storage_isn't_provided
✅ TestMapCollectionWithLookups/doesn't_use_lookup_if_values_are_already_cached
✅ TestMapCollectionWithLookups/only_looks_up_the_minimum_required_if_data_is_partially_cached
✅ TestMapCollectionWithLookups/returns_error_if_the_first_lookup_fails
✅ TestMapCollectionWithLookups/returns_error_if_the_second_lookup_fails
✅ TestMapCollectionWithLookups
✅ TestEmpty_Nil
✅ TestEmpty_ZeroItems
✅ TestEmpty_SomeItems
✅ TestDistinct_Empty
✅ TestDistinct_WithoutDuplicateItems
✅ TestDistinct_WithDuplicateItems
✅ TestRemoveIndex_Empty
✅ TestRemoveIndex
✅ TestRemoveIndex_IndexOutOfBounds_TooHigh
✅ TestRemoveIndex_IndexOutOfBounds_TooLow

✅ github.com/OctopusDeploy/cli/pkg/validation

✅ TestNotEquals
✅ TestIsUUID