github.com/kubeshop/testkube@v1.17.23/pkg/triggers/status_test.go (about)

     1  package triggers
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/stretchr/testify/assert"
     7  
     8  	v1 "github.com/kubeshop/testkube-operator/api/testtriggers/v1"
     9  )
    10  
    11  func TestTriggerStatus(t *testing.T) {
    12  	t.Parallel()
    13  
    14  	status := newTriggerStatus(&v1.TestTrigger{})
    15  
    16  	status.testSuiteExecutionIDs = []string{"test-suite-execution-1"}
    17  	status.start()
    18  
    19  	assert.True(t, status.hasActiveTests())
    20  	assert.NotNil(t, status.lastExecutionStarted)
    21  	assert.Nil(t, status.lastExecutionFinished)
    22  
    23  	status.done()
    24  	status.removeTestSuiteExecutionID("test-suite-execution-1")
    25  
    26  	assert.False(t, status.hasActiveTests())
    27  	assert.NotNil(t, status.lastExecutionStarted)
    28  	assert.NotNil(t, status.lastExecutionFinished)
    29  	assert.True(t, status.lastExecutionFinished.After(*status.lastExecutionStarted))
    30  }