From 0979d5544354f25a797307206ce3edfef04b7a85 Mon Sep 17 00:00:00 2001 From: Claudiu Belu Date: Thu, 9 Mar 2023 15:58:53 -0800 Subject: [PATCH] unit tests: Skip flaky tests on Windows (part 2) Some of the unit tests are currently flaky on Windows. This commit skips them until they are resolved. --- .../nodelifecycle/node_lifecycle_controller_test.go | 4 ++++ .../volume/attachdetach/reconciler/reconciler_test.go | 5 +++++ pkg/kubelet/cm/devicemanager/manager_test.go | 4 ++++ pkg/kubelet/stats/cri_stats_provider_windows_test.go | 6 ++++++ 4 files changed, 19 insertions(+) diff --git a/pkg/controller/nodelifecycle/node_lifecycle_controller_test.go b/pkg/controller/nodelifecycle/node_lifecycle_controller_test.go index e3ea9e7628f..1946ca40dc3 100644 --- a/pkg/controller/nodelifecycle/node_lifecycle_controller_test.go +++ b/pkg/controller/nodelifecycle/node_lifecycle_controller_test.go @@ -2433,6 +2433,10 @@ func TestApplyNoExecuteTaints(t *testing.T) { // TestApplyNoExecuteTaintsToNodesEnqueueTwice ensures we taint every node with NoExecute even if enqueued twice func TestApplyNoExecuteTaintsToNodesEnqueueTwice(t *testing.T) { + // TODO: Remove skip once https://github.com/kubernetes/kubernetes/pull/114607 merges. + if goruntime.GOOS == "windows" { + t.Skip("Skipping test on Windows.") + } fakeNow := metav1.Date(2017, 1, 1, 12, 0, 0, 0, time.UTC) fakeNodeHandler := &testutil.FakeNodeHandler{ diff --git a/pkg/controller/volume/attachdetach/reconciler/reconciler_test.go b/pkg/controller/volume/attachdetach/reconciler/reconciler_test.go index 2110f66fa5e..47f8631c656 100644 --- a/pkg/controller/volume/attachdetach/reconciler/reconciler_test.go +++ b/pkg/controller/volume/attachdetach/reconciler/reconciler_test.go @@ -19,6 +19,7 @@ package reconciler import ( "context" "fmt" + goruntime "runtime" "testing" "time" @@ -690,6 +691,10 @@ func Test_Run_UpdateNodeStatusFailBeforeOneVolumeDetachNodeWithReadWriteOnce(t * } func Test_Run_OneVolumeDetachFailNodeWithReadWriteOnce(t *testing.T) { + // TODO: Remove skip once https://github.com/kubernetes/kubernetes/issues/116693 is fixed. + if goruntime.GOOS == "windows" { + t.Skip("Skipping test on Windows.") + } // Arrange volumePluginMgr, _ := volumetesting.GetTestVolumePluginMgr(t) dsw := cache.NewDesiredStateOfWorld(volumePluginMgr) diff --git a/pkg/kubelet/cm/devicemanager/manager_test.go b/pkg/kubelet/cm/devicemanager/manager_test.go index 1a91ae2ee0c..8283c047266 100644 --- a/pkg/kubelet/cm/devicemanager/manager_test.go +++ b/pkg/kubelet/cm/devicemanager/manager_test.go @@ -197,6 +197,10 @@ func TestDevicePluginReRegistration(t *testing.T) { // While testing above scenario, plugin discovery and registration will be done using // Kubelet probe based mechanism func TestDevicePluginReRegistrationProbeMode(t *testing.T) { + // TODO: Remove skip once https://github.com/kubernetes/kubernetes/pull/115269 merges. + if goruntime.GOOS == "windows" { + t.Skip("Skipping test on Windows.") + } socketDir, socketName, pluginSocketName, err := tmpSocketDir() require.NoError(t, err) defer os.RemoveAll(socketDir) diff --git a/pkg/kubelet/stats/cri_stats_provider_windows_test.go b/pkg/kubelet/stats/cri_stats_provider_windows_test.go index 6bce71c3bb8..96b20945152 100644 --- a/pkg/kubelet/stats/cri_stats_provider_windows_test.go +++ b/pkg/kubelet/stats/cri_stats_provider_windows_test.go @@ -90,6 +90,7 @@ func Test_criStatsProvider_listContainerNetworkStats(t *testing.T) { fields fakeNetworkStatsProvider want map[string]*statsapi.NetworkStats wantErr bool + skipped bool }{ { name: "basic example", @@ -395,10 +396,15 @@ func Test_criStatsProvider_listContainerNetworkStats(t *testing.T) { }, }, wantErr: false, + skipped: true, }, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { + // TODO: Remove skip once https://github.com/kubernetes/kubernetes/issues/116692 is fixed. + if tt.skipped { + t.Skip("Test temporarily skipped.") + } p := &criStatsProvider{ windowsNetworkStatsProvider: fakeNetworkStatsProvider{ containers: tt.fields.containers,