Skip to content

Commit e0141ae

Browse files
committed
add tests for preemptive scheduling logic
1 parent 0d7073a commit e0141ae

File tree

8 files changed

+440
-7
lines changed

8 files changed

+440
-7
lines changed

internal/controllers/scheduler/controller.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -444,11 +444,13 @@ func RemoveFinalizerWithPrefix(obj client.Object, prefix string) (string, bool)
444444
fins := obj.GetFinalizers()
445445
length := len(fins)
446446
suffix := ""
447+
found := false
447448

448449
index := 0
449-
for i := 0; i < length; i++ {
450-
if strings.HasPrefix(fins[i], prefix) {
450+
for i := range length {
451+
if !found && strings.HasPrefix(fins[i], prefix) {
451452
suffix = strings.TrimPrefix(fins[i], prefix)
453+
found = true
452454
continue
453455
}
454456
fins[index] = fins[i]

internal/controllers/scheduler/controller_test.go

Lines changed: 382 additions & 5 deletions
Large diffs are not rendered by default.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
apiVersion: clusters.openmcp.cloud/v1alpha1
2+
kind: ClusterRequest
3+
metadata:
4+
name: exclusive-p
5+
namespace: foo
6+
uid: e69e7465-2d8a-4842-84ed-b94e29e27d46
7+
spec:
8+
purpose: exclusive
9+
preemptive: true
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
apiVersion: clusters.openmcp.cloud/v1alpha1
2+
kind: ClusterRequest
3+
metadata:
4+
name: shared-p
5+
namespace: foo
6+
uid: 21d1a0be-a5d0-49d8-a8f4-dbd91cf4b47e
7+
spec:
8+
purpose: shared-twice
9+
preemptive: true
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
apiVersion: clusters.openmcp.cloud/v1alpha1
2+
kind: ClusterRequest
3+
metadata:
4+
name: shared2-p
5+
namespace: foo
6+
uid: 87b231f8-0f02-416f-bdb6-2ffedb0df506
7+
spec:
8+
purpose: shared-twice
9+
preemptive: true
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
apiVersion: clusters.openmcp.cloud/v1alpha1
2+
kind: ClusterRequest
3+
metadata:
4+
name: shared3-p
5+
namespace: foo
6+
uid: daba0b3c-0f94-46b2-81dd-a23921512696
7+
spec:
8+
purpose: shared-twice
9+
preemptive: true
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
apiVersion: clusters.openmcp.cloud/v1alpha1
2+
kind: ClusterRequest
3+
metadata:
4+
name: delete-p
5+
namespace: foo
6+
uid: 4d6aa495-54c0-4df2-bc7b-05b103f02e69
7+
spec:
8+
purpose: delete
9+
preemptive: true
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
apiVersion: clusters.openmcp.cloud/v1alpha1
2+
kind: ClusterRequest
3+
metadata:
4+
name: no-delete-p
5+
namespace: foo
6+
uid: bf7d8a52-ea1e-4303-a0f9-bf2ef0cc21ea
7+
spec:
8+
purpose: no-delete
9+
preemptive: true

0 commit comments

Comments
 (0)