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  }