Skip to content

Commit f26201f

Browse files
authored
Wrap workspace creation in EventuallyWithT (#3930)
Signed-off-by: Nelo-T. Wallus <red.brush9525@fastmail.com> Signed-off-by: Nelo-T. Wallus <n.wallus@sap.com>
1 parent 554aec3 commit f26201f

1 file changed

Lines changed: 15 additions & 4 deletions

File tree

test/e2e/reconciler/workspace/controller_test.go

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,15 @@ import (
2121
"fmt"
2222
"strings"
2323
"testing"
24+
"time"
2425

2526
"github.com/google/go-cmp/cmp"
27+
"github.com/stretchr/testify/assert"
2628
"github.com/stretchr/testify/require"
2729

2830
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2931
"k8s.io/apimachinery/pkg/runtime"
32+
"k8s.io/apimachinery/pkg/util/wait"
3033

3134
"github.com/kcp-dev/sdk/apis/core"
3235
corev1alpha1 "github.com/kcp-dev/sdk/apis/core/v1alpha1"
@@ -73,8 +76,12 @@ func TestWorkspaceController(t *testing.T) {
7376
// note that the root shard always exists if not deleted
7477

7578
t.Logf("Create a workspace with a shard")
76-
workspace, err := server.orgWorkspaceKcpClient.TenancyV1alpha1().Workspaces().Create(ctx, &tenancyv1alpha1.Workspace{ObjectMeta: metav1.ObjectMeta{Name: "steve"}}, metav1.CreateOptions{})
77-
require.NoError(t, err, "failed to create workspace")
79+
var workspace *tenancyv1alpha1.Workspace
80+
require.EventuallyWithT(t, func(c *assert.CollectT) {
81+
var err error
82+
workspace, err = server.orgWorkspaceKcpClient.TenancyV1alpha1().Workspaces().Create(ctx, &tenancyv1alpha1.Workspace{ObjectMeta: metav1.ObjectMeta{Name: "steve"}}, metav1.CreateOptions{})
83+
require.NoError(c, err, "failed to create workspace")
84+
}, wait.ForeverTestTimeout, 100*time.Millisecond)
7885
server.RunningServer.Artifact(t, func() (runtime.Object, error) {
7986
return server.orgWorkspaceKcpClient.TenancyV1alpha1().Workspaces().Get(ctx, workspace.Name, metav1.GetOptions{})
8087
})
@@ -102,8 +109,12 @@ func TestWorkspaceController(t *testing.T) {
102109
require.NoError(t, err)
103110

104111
t.Logf("Create a workspace without shards")
105-
workspace, err := server.orgWorkspaceKcpClient.TenancyV1alpha1().Workspaces().Create(ctx, &tenancyv1alpha1.Workspace{ObjectMeta: metav1.ObjectMeta{Name: "steve"}}, metav1.CreateOptions{})
106-
require.NoError(t, err, "failed to create workspace")
112+
var workspace *tenancyv1alpha1.Workspace
113+
require.EventuallyWithT(t, func(c *assert.CollectT) {
114+
var err error
115+
workspace, err = server.orgWorkspaceKcpClient.TenancyV1alpha1().Workspaces().Create(ctx, &tenancyv1alpha1.Workspace{ObjectMeta: metav1.ObjectMeta{Name: "steve"}}, metav1.CreateOptions{})
116+
require.NoError(c, err, "failed to create workspace")
117+
}, wait.ForeverTestTimeout, 100*time.Millisecond)
107118
server.RunningServer.Artifact(t, func() (runtime.Object, error) {
108119
return server.orgWorkspaceKcpClient.TenancyV1alpha1().Workspaces().Get(ctx, workspace.Name, metav1.GetOptions{})
109120
})

0 commit comments

Comments
 (0)