check restartpolicy in getFinishTimeFromContainers

This commit is contained in:
AxeZhan
2024-05-21 11:11:00 +08:00
parent e4348a1210
commit 3a2a500182
2 changed files with 26 additions and 4 deletions

View File

@@ -202,6 +202,7 @@ func TestNewBackoffRecord(t *testing.T) {
func TestGetFinishedTime(t *testing.T) {
defaultTestTime := time.Date(2009, time.November, 10, 23, 0, 0, 0, time.UTC)
defaultTestTimeMinus30s := defaultTestTime.Add(-30 * time.Second)
containerRestartPolicyAlways := v1.ContainerRestartPolicyAlways
testCases := map[string]struct {
pod v1.Pod
wantFinishTime time.Time
@@ -358,8 +359,16 @@ func TestGetFinishedTime(t *testing.T) {
// In this case, init container is stopped after the regular containers.
// This is because with the sidecar (restartable init) containers,
// sidecar containers will always finish later than regular containers.
"Pod with init container and all containers terminated": {
"Pod with sidecar container and all containers terminated": {
pod: v1.Pod{
Spec: v1.PodSpec{
InitContainers: []v1.Container{
{
Name: "sidecar",
RestartPolicy: &containerRestartPolicyAlways,
},
},
},
Status: v1.PodStatus{
ContainerStatuses: []v1.ContainerStatus{
{
@@ -370,6 +379,7 @@ func TestGetFinishedTime(t *testing.T) {
},
InitContainerStatuses: []v1.ContainerStatus{
{
Name: "sidecar",
State: v1.ContainerState{
Terminated: &v1.ContainerStateTerminated{FinishedAt: metav1.NewTime(defaultTestTime)},
},