yangwwei commented on a change in pull request #301:
URL:
https://github.com/apache/incubator-yunikorn-k8shim/pull/301#discussion_r707519227
##########
File path: pkg/cache/placeholder_manager_test.go
##########
@@ -261,3 +261,24 @@ func TestPlaceholderManagerStartStop(t *testing.T) {
time.Sleep(5 * time.Millisecond)
assert.Equal(t, mgr.isRunning(), false, "placeholder manager has not
stopped")
}
+
+func TestPlaceholderManagerCleanup(t *testing.T) {
+ mockedAPIProvider := client.NewMockedAPIProvider()
+ pod1 := &v1.Pod{
+ TypeMeta: apis.TypeMeta{
+ Kind: "Pod",
+ APIVersion: "v1",
+ },
+ ObjectMeta: apis.ObjectMeta{
+ Name: "pod-01",
+ UID: "UID-01",
+ },
+ }
+ mgr := NewPlaceholderManager(mockedAPIProvider.GetAPIs())
+ mgr.Start()
Review comment:
can we make sure mgr is stopped after the test?
##########
File path: pkg/cache/placeholder_manager_test.go
##########
@@ -261,3 +261,24 @@ func TestPlaceholderManagerStartStop(t *testing.T) {
time.Sleep(5 * time.Millisecond)
assert.Equal(t, mgr.isRunning(), false, "placeholder manager has not
stopped")
}
+
+func TestPlaceholderManagerCleanup(t *testing.T) {
+ mockedAPIProvider := client.NewMockedAPIProvider()
+ pod1 := &v1.Pod{
+ TypeMeta: apis.TypeMeta{
+ Kind: "Pod",
+ APIVersion: "v1",
+ },
+ ObjectMeta: apis.ObjectMeta{
+ Name: "pod-01",
+ UID: "UID-01",
+ },
+ }
+ mgr := NewPlaceholderManager(mockedAPIProvider.GetAPIs())
+ mgr.Start()
+ assert.Equal(t, mgr.isRunning(), true, "manager should be running after
start")
+ mgr.orphanPods["task01"] = pod1
+ assert.Equal(t, len(mgr.orphanPods), 1)
+ <-time.After(5 * time.Second)
Review comment:
we can't wait for 5s in UT for this single test
what we can do here is to add a function that can change the default 5s
interval for the placeholder cleanup, e.g `setCleanupInterval(interval
time.Duration)`. During this test, set the interval to 100millsecond, etc. And
remember to set it back to 5s after the test.
##########
File path: pkg/cache/placeholder_manager_test.go
##########
@@ -261,3 +261,24 @@ func TestPlaceholderManagerStartStop(t *testing.T) {
time.Sleep(5 * time.Millisecond)
assert.Equal(t, mgr.isRunning(), false, "placeholder manager has not
stopped")
}
+
+func TestPlaceholderManagerCleanup(t *testing.T) {
+ mockedAPIProvider := client.NewMockedAPIProvider()
+ pod1 := &v1.Pod{
+ TypeMeta: apis.TypeMeta{
+ Kind: "Pod",
+ APIVersion: "v1",
+ },
+ ObjectMeta: apis.ObjectMeta{
+ Name: "pod-01",
+ UID: "UID-01",
+ },
+ }
+ mgr := NewPlaceholderManager(mockedAPIProvider.GetAPIs())
+ mgr.Start()
+ assert.Equal(t, mgr.isRunning(), true, "manager should be running after
start")
+ mgr.orphanPods["task01"] = pod1
Review comment:
can we add more than 1 pod here?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]