...

Source file src/edge-infra.dev/pkg/k8s/object/status_test.go

Documentation: edge-infra.dev/pkg/k8s/object

     1  package object
     2  
     3  import (
     4  	"testing"
     5  	"time"
     6  
     7  	assertapi "github.com/stretchr/testify/assert"
     8  	corev1 "k8s.io/api/core/v1"
     9  	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
    10  
    11  	"edge-infra.dev/pkg/k8s/object/fobject"
    12  )
    13  
    14  func TestGetStatusObservedGeneration(t *testing.T) {
    15  	assert := assertapi.New(t)
    16  
    17  	obj := &fobject.Fake{}
    18  	_, err := GetStatusObservedGeneration(obj)
    19  	if assert.Error(err) {
    20  		assert.ErrorIs(err, ErrObservedGenerationNotFound)
    21  	}
    22  
    23  	// Get set status observedGeneration.
    24  	obj.Status.ObservedGeneration = 7
    25  	og, err := GetStatusObservedGeneration(obj)
    26  	assert.NoError(err)
    27  	assert.Equal(int64(7), og)
    28  }
    29  
    30  func TestGetRequeueInterval(t *testing.T) {
    31  	assert := assertapi.New(t)
    32  
    33  	obj := &fobject.Fake{}
    34  	pd, err := GetRequeueInterval(obj)
    35  	assert.NoError(err)
    36  	assert.Equal(time.Duration(0), pd)
    37  
    38  	// Get set requeue interval value.
    39  	obj.Spec.Interval = metav1.Duration{Duration: 3 * time.Second}
    40  	pd, err = GetRequeueInterval(obj)
    41  	assert.NoError(err)
    42  	assert.Equal(3*time.Second, pd)
    43  
    44  	// Get non-existent requeue interval value.
    45  	obj2 := &corev1.Secret{}
    46  	_, err = GetRequeueInterval(obj2)
    47  	if assert.Error(err) {
    48  		assert.ErrorIs(err, ErrRequeueIntervalNotFound)
    49  	}
    50  }
    51  

View as plain text