mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-31 07:20:13 +00:00
Merge pull request #106244 from cncal/fix-state-checkpoint-testcase
fix test for CheckpointStateRestore
This commit is contained in:
commit
5d446b205e
@ -23,6 +23,7 @@ import (
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
"k8s.io/kubernetes/pkg/kubelet/checkpointmanager"
|
||||
"k8s.io/kubernetes/pkg/kubelet/cm/containermap"
|
||||
testutil "k8s.io/kubernetes/pkg/kubelet/cm/cpumanager/state/testing"
|
||||
@ -201,15 +202,11 @@ func TestCheckpointStateRestore(t *testing.T) {
|
||||
|
||||
// create temp dir
|
||||
testingDir, err := ioutil.TempDir("", "cpumanager_state_test")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
defer os.RemoveAll(testingDir)
|
||||
// create checkpoint manager for testing
|
||||
cpm, err := checkpointmanager.NewCheckpointManager(testingDir)
|
||||
if err != nil {
|
||||
t.Fatalf("could not create testing checkpoint manager: %v", err)
|
||||
}
|
||||
require.NoErrorf(t, err, "could not create testing checkpoint manager: %v", err)
|
||||
|
||||
for _, tc := range testCases {
|
||||
t.Run(tc.description, func(t *testing.T) {
|
||||
@ -219,21 +216,18 @@ func TestCheckpointStateRestore(t *testing.T) {
|
||||
// prepare checkpoint for testing
|
||||
if strings.TrimSpace(tc.checkpointContent) != "" {
|
||||
checkpoint := &testutil.MockCheckpoint{Content: tc.checkpointContent}
|
||||
if err := cpm.CreateCheckpoint(testingCheckpoint, checkpoint); err != nil {
|
||||
t.Fatalf("could not create testing checkpoint: %v", err)
|
||||
}
|
||||
err = cpm.CreateCheckpoint(testingCheckpoint, checkpoint)
|
||||
require.NoErrorf(t, err, "could not create testing checkpoint: %v", err)
|
||||
}
|
||||
|
||||
restoredState, err := NewCheckpointState(testingDir, testingCheckpoint, tc.policyName, tc.initialContainers)
|
||||
if err != nil {
|
||||
if strings.TrimSpace(tc.expectedError) != "" {
|
||||
if strings.Contains(err.Error(), "could not restore state from checkpoint") &&
|
||||
strings.Contains(err.Error(), tc.expectedError) {
|
||||
t.Logf("got expected error: %v", err)
|
||||
return
|
||||
}
|
||||
}
|
||||
t.Fatalf("unexpected error while creatng checkpointState: %v", err)
|
||||
if strings.TrimSpace(tc.expectedError) == "" {
|
||||
require.NoError(t, err)
|
||||
} else {
|
||||
require.Error(t, err)
|
||||
require.Contains(t, err.Error(), "could not restore state from checkpoint")
|
||||
require.Contains(t, err.Error(), tc.expectedError)
|
||||
return
|
||||
}
|
||||
|
||||
// compare state after restoration with the one expected
|
||||
|
Loading…
Reference in New Issue
Block a user