66
77 . "github.com/onsi/ginkgo"
88 . "github.com/onsi/gomega"
9-
9+ "github.com/operator-framework/kubectl-operator/pkg/action"
1010 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
1111 "sigs.k8s.io/controller-runtime/pkg/client"
1212
@@ -19,6 +19,7 @@ type mockCreateClient struct {
1919 * mockCreator
2020 * mockGetter
2121 * mockDeleter
22+ client.Client
2223 createCatalog * olmv1catalogd.ClusterCatalog
2324}
2425
@@ -28,10 +29,11 @@ func (mcc *mockCreateClient) Create(ctx context.Context, obj client.Object, opts
2829}
2930
3031var _ = Describe ("CatalogCreate" , func () {
32+ catalogName := "testcatalog"
3133 pollInterval := 20
3234 expectedCatalog := olmv1catalogd.ClusterCatalog {
3335 ObjectMeta : metav1.ObjectMeta {
34- Name : "testcatalog" ,
36+ Name : catalogName ,
3537 Labels : map [string ]string {"a" : "b" },
3638 },
3739 Spec : olmv1catalogd.ClusterCatalogSpec {
@@ -47,11 +49,12 @@ var _ = Describe("CatalogCreate", func() {
4749 },
4850 }
4951
50- It ("fails creating catalog" , func () {
52+ FIt ("fails creating catalog" , func () {
5153 expectedErr := errors .New ("create failed" )
52- mockClient := & mockCreateClient {& mockCreator {createErr : expectedErr }, nil , nil , & expectedCatalog }
54+ mockClient := fakeClient {createErr : expectedErr }
55+ mockClient .Initialize ()
5356
54- creator := internalaction .NewCatalogCreate (mockClient )
57+ creator := internalaction .NewCatalogCreate (& action. Configuration { Client : mockClient } )
5558 creator .Available = true
5659 creator .CatalogName = expectedCatalog .Name
5760 creator .ImageSourceRef = expectedCatalog .Spec .Source .Image .Ref
@@ -64,17 +67,21 @@ var _ = Describe("CatalogCreate", func() {
6467 Expect (err ).To (MatchError (expectedErr ))
6568 Expect (mockClient .createCalled ).To (Equal (1 ))
6669
67- // there is no way of testing a happy path in unit tests because we have no way to
68- // set/mock the catalog status condition we're waiting for in waitUntilCatalogStatusCondition
69- // but we can still at least verify that CR would have been created with expected attribute values
70- validateCreateCatalog (mockClient .createCatalog , & expectedCatalog )
70+ //// there is no way of testing a happy path in unit tests because we have no way to
71+ //// set/mock the catalog status condition we're waiting for in waitUntilCatalogStatusCondition
72+ //// but we can still at least verify that CR would have been created with expected attribute values
73+ //actualCatalog := &olmv1catalogd.ClusterCatalog{}
74+ //fmt.Printf("%+v, %+v", actualCatalog, expectedCatalog)
75+ //Expect(mockClient.Get(context.TODO(), types.NamespacedName{Name: catalogName}, actualCatalog)).To(Succeed())
76+ //Expect(actualCatalog).To(Equal(expectedCatalog))
7177 })
7278
7379 It ("fails waiting for created catalog status, successfully cleans up" , func () {
7480 expectedErr := errors .New ("get failed" )
75- mockClient := & mockCreateClient {& mockCreator {}, & mockGetter {getErr : expectedErr }, & mockDeleter {}, nil }
81+ mockClient := fakeClient {getErr : expectedErr }
82+ mockClient .Initialize ()
7683
77- creator := internalaction .NewCatalogCreate (mockClient )
84+ creator := internalaction .NewCatalogCreate (& action. Configuration { Client : mockClient } )
7885 err := creator .Run (context .TODO ())
7986
8087 Expect (err ).NotTo (BeNil ())
@@ -87,11 +94,12 @@ var _ = Describe("CatalogCreate", func() {
8794 It ("fails waiting for created catalog status, fails clean up" , func () {
8895 getErr := errors .New ("get failed" )
8996 deleteErr := errors .New ("delete failed" )
90- mockClient := & mockCreateClient {& mockCreator {}, & mockGetter {getErr : getErr }, & mockDeleter {deleteErr : deleteErr }, nil }
97+ mockClient := fakeClient {deleteErr : deleteErr , getErr : getErr }
98+ mockClient .Initialize ()
9199
92- creator := internalaction .NewCatalogCreate (mockClient )
100+ creator := internalaction .NewCatalogCreate (& action. Configuration { Client : mockClient } )
93101 err := creator .Run (context .TODO ())
94-
102+
95103 Expect (err ).NotTo (BeNil ())
96104 Expect (err ).To (MatchError (getErr ))
97105 Expect (mockClient .createCalled ).To (Equal (1 ))
0 commit comments