github.com/secure-build/gitlab-runner@v12.5.0+incompatible/executors/docker/machine/collector_test.go (about) 1 package machine 2 3 import ( 4 "testing" 5 "time" 6 7 "gitlab.com/gitlab-org/gitlab-runner/common" 8 9 "github.com/prometheus/client_golang/prometheus" 10 "github.com/stretchr/testify/assert" 11 ) 12 13 func TestIfMachineProviderExposesCollectInterface(t *testing.T) { 14 var provider common.ExecutorProvider 15 provider = &machineProvider{} 16 collector, ok := provider.(prometheus.Collector) 17 assert.True(t, ok) 18 assert.NotNil(t, collector) 19 } 20 21 func TestMachineProviderDeadInterval(t *testing.T) { 22 provider := newMachineProvider("docker_machines", "docker") 23 assert.Equal(t, 0, provider.collectDetails().Idle) 24 25 details := provider.machineDetails("test", false) 26 assert.Equal(t, 1, provider.collectDetails().Idle) 27 28 details.LastSeen = time.Now().Add(-machineDeadInterval) 29 assert.Equal(t, 0, provider.collectDetails().Idle) 30 }