@@ -82,13 +82,85 @@ func TestEKSAddonPlan(t *testing.T) {
8282						},
8383					}, nil )
8484
85- 				m .WaitUntilAddonActive (gomock .Eq (& eks.DescribeAddonInput {
85+ 				out  :=  & eks.DescribeAddonOutput {
86+ 					Addon : & eks.Addon {
87+ 						Status : aws .String (eks .AddonStatusActive ),
88+ 					},
89+ 				}
90+ 				m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
8691					AddonName :   aws .String (addon1Name ),
8792					ClusterName : aws .String (clusterName ),
88- 				})).Return (nil )
93+ 				})).Return (out , nil )
94+ 			},
95+ 			desiredAddons : []* EKSAddon {
96+ 				createDesiredAddon (addon1Name , addon1version ),
97+ 			},
98+ 			expectCreateError : false ,
99+ 			expectDoError :     false ,
100+ 		},
101+ 		{
102+ 			name : "no installed and 2 desired" ,
103+ 			expect : func (m  * mock_eksiface.MockEKSAPIMockRecorder ) {
104+ 				m .
105+ 					CreateAddon (gomock .Eq (& eks.CreateAddonInput {
106+ 						AddonName :        aws .String (addon1Name ),
107+ 						AddonVersion :     aws .String (addon1version ),
108+ 						ClusterName :      aws .String (clusterName ),
109+ 						ResolveConflicts : aws .String (eks .ResolveConflictsOverwrite ),
110+ 						Tags :             convertTags (createTags ()),
111+ 					})).
112+ 					Return (& eks.CreateAddonOutput {
113+ 						Addon : & eks.Addon {
114+ 							AddonArn :     aws .String (addonARN ),
115+ 							AddonName :    aws .String (addon1Name ),
116+ 							AddonVersion : aws .String (addon1version ),
117+ 							ClusterName :  aws .String (clusterName ),
118+ 							CreatedAt :    & created ,
119+ 							ModifiedAt :   & created ,
120+ 							Status :       aws .String (addonStatusCreating ),
121+ 							Tags :         convertTags (createTags ()),
122+ 						},
123+ 					}, nil )
124+ 
125+ 				out  :=  & eks.DescribeAddonOutput {
126+ 					Addon : & eks.Addon {
127+ 						Status : aws .String (eks .AddonStatusActive ),
128+ 					},
129+ 				}
130+ 				m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
131+ 					AddonName :   aws .String (addon1Name ),
132+ 					ClusterName : aws .String (clusterName ),
133+ 				})).Return (out , nil )
134+ 
135+ 				m .
136+ 					CreateAddon (gomock .Eq (& eks.CreateAddonInput {
137+ 						AddonName :        aws .String ("addon2" ),
138+ 						AddonVersion :     aws .String (addon1version ),
139+ 						ClusterName :      aws .String (clusterName ),
140+ 						ResolveConflicts : aws .String (eks .ResolveConflictsOverwrite ),
141+ 						Tags :             convertTags (createTags ()),
142+ 					})).
143+ 					Return (& eks.CreateAddonOutput {
144+ 						Addon : & eks.Addon {
145+ 							AddonArn :     aws .String (addonARN ),
146+ 							AddonName :    aws .String ("addon2" ),
147+ 							AddonVersion : aws .String (addon1version ),
148+ 							ClusterName :  aws .String (clusterName ),
149+ 							CreatedAt :    & created ,
150+ 							ModifiedAt :   & created ,
151+ 							Status :       aws .String (addonStatusCreating ),
152+ 							Tags :         convertTags (createTags ()),
153+ 						},
154+ 					}, nil )
155+ 
156+ 				m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
157+ 					AddonName :   aws .String ("addon2" ),
158+ 					ClusterName : aws .String (clusterName ),
159+ 				})).Return (out , nil )
89160			},
90161			desiredAddons : []* EKSAddon {
91162				createDesiredAddon (addon1Name , addon1version ),
163+ 				createDesiredAddon ("addon2" , addon1version ),
92164			},
93165			expectCreateError : false ,
94166			expectDoError :     false ,
@@ -110,10 +182,15 @@ func TestEKSAddonPlan(t *testing.T) {
110182		{
111183			name : "1 installed and 1 desired - both same and installed is creating" ,
112184			expect : func (m  * mock_eksiface.MockEKSAPIMockRecorder ) {
113- 				m .WaitUntilAddonActive (gomock .Eq (& eks.DescribeAddonInput {
185+ 				out  :=  & eks.DescribeAddonOutput {
186+ 					Addon : & eks.Addon {
187+ 						Status : aws .String (eks .AddonStatusActive ),
188+ 					},
189+ 				}
190+ 				m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
114191					AddonName :   aws .String (addon1Name ),
115192					ClusterName : aws .String (clusterName ),
116- 				})).Return (nil )
193+ 				})).Return (out ,  nil )
117194			},
118195			desiredAddons : []* EKSAddon {
119196				createDesiredAddon (addon1Name , addon1version ),
@@ -142,10 +219,16 @@ func TestEKSAddonPlan(t *testing.T) {
142219							Type :      aws .String (eks .UpdateTypeVersionUpdate ),
143220						},
144221					}, nil )
145- 				m .WaitUntilAddonActive (gomock .Eq (& eks.DescribeAddonInput {
222+ 
223+ 				out  :=  & eks.DescribeAddonOutput {
224+ 					Addon : & eks.Addon {
225+ 						Status : aws .String (eks .AddonStatusActive ),
226+ 					},
227+ 				}
228+ 				m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
146229					AddonName :   aws .String (addon1Name ),
147230					ClusterName : aws .String (clusterName ),
148- 				})).Return (nil )
231+ 				})).Return (out ,  nil )
149232			},
150233			desiredAddons : []* EKSAddon {
151234				createDesiredAddon (addon1Name , addon1Upgrade ),
@@ -159,10 +242,15 @@ func TestEKSAddonPlan(t *testing.T) {
159242		{
160243			name : "1 installed and 1 desired - version upgrade in progress" ,
161244			expect : func (m  * mock_eksiface.MockEKSAPIMockRecorder ) {
162- 				m .WaitUntilAddonActive (gomock .Eq (& eks.DescribeAddonInput {
245+ 				out  :=  & eks.DescribeAddonOutput {
246+ 					Addon : & eks.Addon {
247+ 						Status : aws .String (eks .AddonStatusActive ),
248+ 					},
249+ 				}
250+ 				m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
163251					AddonName :   aws .String (addon1Name ),
164252					ClusterName : aws .String (clusterName ),
165- 				})).Return (nil )
253+ 				})).Return (out ,  nil )
166254			},
167255			desiredAddons : []* EKSAddon {
168256				createDesiredAddon (addon1Name , addon1Upgrade ),
@@ -217,10 +305,15 @@ func TestEKSAddonPlan(t *testing.T) {
217305						},
218306					}, nil )
219307
220- 				m .WaitUntilAddonActive (gomock .Eq (& eks.DescribeAddonInput {
308+ 				out  :=  & eks.DescribeAddonOutput {
309+ 					Addon : & eks.Addon {
310+ 						Status : aws .String (eks .AddonStatusActive ),
311+ 					},
312+ 				}
313+ 				m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
221314					AddonName :   aws .String (addon1Name ),
222315					ClusterName : aws .String (clusterName ),
223- 				})).Return (nil )
316+ 				})).Return (out ,  nil )
224317			},
225318			desiredAddons : []* EKSAddon {
226319				createDesiredAddonExtraTag (addon1Name , addon1Upgrade ),
@@ -251,7 +344,6 @@ func TestEKSAddonPlan(t *testing.T) {
251344							Tags :         convertTags (createTags ()),
252345						},
253346					}, nil )
254- 
255347				m .WaitUntilAddonDeleted (gomock .Eq (& eks.DescribeAddonInput {
256348					AddonName :   aws .String (addon1Name ),
257349					ClusterName : aws .String (clusterName ),
0 commit comments