Skip to content

Commit

Permalink
tests: use fake objects provided by the fake client
Browse files Browse the repository at this point in the history
The fake client stores the objects after adding a resource version to
them. This is a breaking change introduced in
kubernetes-sigs/controller-runtime#1306.
Therefore we cannot use the fake object that we provided as input to the
the fake client and should use the object obtained from the Get
operation.

Signed-off-by: Raghavendra Talur <raghavendra.talur@gmail.com>
  • Loading branch information
raghavendra-talur committed Apr 19, 2021
1 parent dee571f commit 96af457
Showing 1 changed file with 12 additions and 10 deletions.
22 changes: 12 additions & 10 deletions controllers/ocsinitialization/ocsinitialization_controller_test.go
Expand Up @@ -50,14 +50,17 @@ func getTestParams(mockNamespace bool, t *testing.T) (v1.OCSInitialization, reco
Namespace: request.Namespace,
},
}
ocsRecon := v1.OCSInitialization{
ObjectMeta: metav1.ObjectMeta{
Name: request.Name,
Namespace: request.Namespace,
},
}

return ocs, request, getReconciler(t, &ocsRecon)
reconciler := getReconciler(t, &ocs)
//The fake client stores the objects after adding a resource version to
//them. This is a breaking change introduced in
//https://github.com/kubernetes-sigs/controller-runtime/pull/1306.
//Therefore we cannot use the fake object that we provided as input to the
//the fake client and should use the object obtained from the Get
//operation.
_ = reconciler.Client.Get(context.TODO(), request.NamespacedName, &ocs)

return ocs, request, reconciler
}

func getReconciler(t *testing.T, objs ...client.Object) OCSInitializationReconciler {
Expand Down Expand Up @@ -230,9 +233,8 @@ func TestCreateSCCs(t *testing.T) {

if tc.sscCreated {
ocs.Status.SCCsCreated = false
// TODO: uncomment this!
//err := reconciler.Client.Update(context.TODO(), &ocs)
//assert.NoErrorf(t, err, "[%s]: failed to update ocsInit status", tc.label)
err := reconciler.Client.Update(context.TODO(), &ocs)
assert.NoErrorf(t, err, "[%s]: failed to update ocsInit status", tc.label)
}

_, err := reconciler.Reconcile(context.TODO(), request)
Expand Down

0 comments on commit 96af457

Please sign in to comment.