go.mondoo.com/cnquery@v0.0.0-20231005093811-59568235f6ea/cli/execruntime/environment_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 TestDetectGitlab(t *testing.T) { 13 gl := environmentDef["gitlab"] 14 assert.NotNil(t, gl) 15 assert.Equal(t, "gitlab", gl.Id) 16 assert.Equal(t, "GitLab CI", gl.Name) 17 18 assert.False(t, gl.Detect()) 19 20 // set mock provider 21 environmentProvider = newMockEnvProvider() 22 environmentProvider.Setenv("CI", "1") 23 environmentProvider.Setenv("GITLAB_CI", "1") 24 assert.True(t, gl.Detect()) 25 26 environmentProvider.Setenv("CI_JOB_NAME", "test-job") 27 environmentProvider.Setenv("GITLAB_USER_ID", "testuser") 28 annotations := gl.Labels() 29 assert.Equal(t, 3, len(annotations)) 30 assert.Equal(t, "gitlab.com", annotations["mondoo.com/exec-environment"]) 31 assert.Equal(t, "test-job", annotations["gitlab.com/job-name"]) 32 assert.Equal(t, "testuser", annotations["gitlab.com/user-id"]) 33 }