go.mondoo.com/cnquery@v0.0.0-20231005093811-59568235f6ea/cli/execruntime/env_gitlab_test.go (about) 1 // Copyright (c) Mondoo, Inc. 2 // SPDX-License-Identifier: BUSL-1.1 3 4 package execruntime 5 6 import ( 7 "testing" 8 9 "github.com/stretchr/testify/assert" 10 ) 11 12 func TestGitlabRuntimeEnv(t *testing.T) { 13 // set mock provider 14 environmentProvider = newMockEnvProvider() 15 environmentProvider.Setenv("CI", "1") 16 environmentProvider.Setenv("GITLAB_CI", "1") 17 environmentProvider.Setenv("CI_PROJECT_URL", "https://example.com/project") 18 environmentProvider.Setenv("CI_PROJECT_NAME", "example-project") 19 environmentProvider.Setenv("CI_JOB_ID", "123456") 20 environmentProvider.Setenv("GITLAB_USER_ID", "johndoe") 21 22 env := Detect() 23 assert.True(t, env.IsAutomatedEnv()) 24 assert.Equal(t, GITLAB, env.Id) 25 assert.Equal(t, "GitLab CI", env.Name) 26 27 annotations := env.Labels() 28 assert.Equal(t, 5, len(annotations)) 29 assert.Equal(t, "gitlab.com", annotations["mondoo.com/exec-environment"]) 30 assert.Equal(t, "https://example.com/project", annotations["gitlab.com/project-url"]) 31 assert.Equal(t, "example-project", annotations["gitlab.com/project-name"]) 32 assert.Equal(t, "123456", annotations["gitlab.com/job-id"]) 33 assert.Equal(t, "johndoe", annotations["gitlab.com/user-id"]) 34 }