go.mondoo.com/cnquery@v0.0.0-20231005093811-59568235f6ea/cli/execruntime/env_circle_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 TestCircleCIRuntimeEnv(t *testing.T) { 13 // set mock provider 14 environmentProvider = newMockEnvProvider() 15 environmentProvider.Setenv("CI", "1") 16 environmentProvider.Setenv("CIRCLECI", "1") 17 environmentProvider.Setenv("CIRCLE_REPOSITORY_URL", "https://example.com/project") 18 environmentProvider.Setenv("CIRCLE_PROJECT_REPONAME", "example-project") 19 environmentProvider.Setenv("CIRCLE_BUILD_NUM", "1") 20 environmentProvider.Setenv("CIRCLE_USERNAME", "johndoe") 21 22 env := Detect() 23 assert.True(t, env.IsAutomatedEnv()) 24 assert.Equal(t, CIRCLE, env.Id) 25 assert.Equal(t, "CircleCI", env.Name) 26 27 annotations := env.Labels() 28 assert.Equal(t, 5, len(annotations)) 29 assert.Equal(t, "circleci.com", annotations["mondoo.com/exec-environment"]) 30 assert.Equal(t, "https://example.com/project", annotations["circleci.com/repository-url"]) 31 assert.Equal(t, "example-project", annotations["circleci.com/project-reponame"]) 32 assert.Equal(t, "1", annotations["circleci.com/build-num"]) 33 assert.Equal(t, "johndoe", annotations["circleci.com/username"]) 34 }