@@ -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