|
| 1 | + |
| 2 | +Describe "assign_default_environment_variables" { |
| 3 | + BeforeEach{ |
| 4 | + function toGitHub () { |
| 5 | + param( |
| 6 | + $output_name, |
| 7 | + $output_value |
| 8 | + ) |
| 9 | + Write-Output "$output_name=$output_value"; |
| 10 | + } |
| 11 | + Mock toGitHub -MockWith { Write-Output "$output_name=$output_value";} |
| 12 | + } |
| 13 | + |
| 14 | + Context "when processing default GitHub environment variables" { |
| 15 | + It "should output all default GitHub environment variables as --env arguments" { |
| 16 | + $result = .\assign_default_environment_variables.ps1 |
| 17 | + |
| 18 | + $defaultGitHubEnvVars = @( |
| 19 | + "CI", "GITHUB_ACTION", "GITHUB_ACTION_PATH", "GITHUB_ACTION_REPOSITORY", |
| 20 | + "GITHUB_ACTIONS", "GITHUB_ACTOR", "GITHUB_API_URL", "GITHUB_BASE_REF", |
| 21 | + "GITHUB_ENV", "GITHUB_EVENT_NAME", "GITHUB_EVENT_PATH", "GITHUB_HEAD_REF", |
| 22 | + "GITHUB_JOB", "GITHUB_OUTPUT", "GITHUB_PATH", "GITHUB_REF", "GITHUB_REF_NAME", |
| 23 | + "GITHUB_REF_PROTECTED", "GITHUB_REF_TYPE", "GITHUB_REPOSITORY", |
| 24 | + "GITHUB_REPOSITORY_OWNER", "GITHUB_RETENTION_DAYS", "GITHUB_RUN_ATTEMPT", |
| 25 | + "GITHUB_RUN_ID", "GITHUB_RUN_NUMBER", "GITHUB_SERVER_URL", "GITHUB_SHA", |
| 26 | + "GITHUB_STEP_SUMMARY", "GITHUB_WORKFLOW", "GITHUB_WORKSPACE", "RUNNER_ARCH", |
| 27 | + "RUNNER_DEBUG", "RUNNER_NAME", "RUNNER_OS", "RUNNER_TEMP", "RUNNER_TOOL_CACHE" |
| 28 | + ) |
| 29 | + |
| 30 | + # Assert: Verify the output contains all default environment variables |
| 31 | + foreach ($envVar in $defaultGitHubEnvVars) { |
| 32 | + $result | Should -Match "--env $envVar" |
| 33 | + } |
| 34 | + |
| 35 | + # Assert: Verify the output variable is set correctly |
| 36 | + $result | Should -Match "default_environment_variables=" |
| 37 | + } |
| 38 | + } |
| 39 | +} |
0 commit comments