@@ -37,8 +37,8 @@ type ManifestValidatePkgMock struct {
3737}
3838
3939func (m * ManifestValidatePkgMock ) ManifestValidate (ctx context.Context , clients * shared.ClientFactory , app types.App , token string ) (bool , slackerror.Warnings , error ) {
40- m .Called (ctx , clients , app , token )
41- return true , nil , nil
40+ args := m .Called (ctx , clients , app , token )
41+ return args . Bool ( 0 ) , nil , args . Error ( 2 )
4242}
4343
4444func TestManifestValidateCommand (t * testing.T ) {
@@ -63,7 +63,7 @@ func TestManifestValidateCommand(t *testing.T) {
6363 manifestValidatePkgMock := new (ManifestValidatePkgMock )
6464 manifestValidateFunc = manifestValidatePkgMock .ManifestValidate
6565
66- manifestValidatePkgMock .On ("ManifestValidate" , mock .Anything , mock .Anything , mock .Anything , mock .Anything ).Return (nil )
66+ manifestValidatePkgMock .On ("ManifestValidate" , mock .Anything , mock .Anything , mock .Anything , mock .Anything ).Return (true , nil , nil )
6767 err := cmd .ExecuteContext (ctx )
6868 if err != nil {
6969 assert .Fail (t , "cmd.Execute had unexpected error" )
@@ -138,7 +138,7 @@ func TestManifestValidateCommand_HandleMissingAppInstallError_OneUserAuth(t *tes
138138 // Mock the manifest validate package
139139 manifestValidatePkgMock := new (ManifestValidatePkgMock )
140140 manifestValidateFunc = manifestValidatePkgMock .ManifestValidate
141- manifestValidatePkgMock .On ("ManifestValidate" , mock .Anything , mock .Anything , mock .Anything , mock .Anything ).Return (nil )
141+ manifestValidatePkgMock .On ("ManifestValidate" , mock .Anything , mock .Anything , mock .Anything , mock .Anything ).Return (true , nil , nil )
142142
143143 // Should execute without error
144144 err := cmd .ExecuteContext (ctx )
@@ -200,14 +200,38 @@ func TestManifestValidateCommand_HandleMissingAppInstallError_MoreThanOneUserAut
200200 // Mock the manifest validate package
201201 manifestValidatePkgMock := new (ManifestValidatePkgMock )
202202 manifestValidateFunc = manifestValidatePkgMock .ManifestValidate
203- manifestValidatePkgMock .On ("ManifestValidate" , mock .Anything , mock .Anything , mock .Anything , mock .Anything ).Return (nil )
203+ manifestValidatePkgMock .On ("ManifestValidate" , mock .Anything , mock .Anything , mock .Anything , mock .Anything ).Return (true , nil , nil )
204204
205205 // Should execute without error
206206 err := cmd .ExecuteContext (ctx )
207207 require .NoError (t , err )
208208 clientsMock .Auth .AssertCalled (t , "SetSelectedAuth" , mock .Anything , mock .Anything , mock .Anything , mock .Anything )
209209}
210210
211+ func TestManifestValidateCommand_InvalidManifest (t * testing.T ) {
212+ ctx := slackcontext .MockContext (t .Context ())
213+ clientsMock := shared .NewClientsMock ()
214+ clientsMock .AddDefaultMocks ()
215+
216+ clients := shared .NewClientFactory (clientsMock .MockClientFactory (), func (clients * shared.ClientFactory ) {
217+ clients .SDKConfig = hooks .NewSDKConfigMock ()
218+ })
219+
220+ cmd := NewValidateCommand (clients )
221+ testutil .MockCmdIO (clients .IO , cmd )
222+
223+ appSelectMock := prompts .NewAppSelectMock ()
224+ appSelectPromptFunc = appSelectMock .AppSelectPrompt
225+ appSelectMock .On ("AppSelectPrompt" , mock .Anything , mock .Anything , prompts .ShowAllEnvironments , prompts .ShowInstalledAppsOnly ).Return (prompts.SelectedApp {}, nil )
226+
227+ manifestValidatePkgMock := new (ManifestValidatePkgMock )
228+ manifestValidateFunc = manifestValidatePkgMock .ManifestValidate
229+ manifestValidatePkgMock .On ("ManifestValidate" , mock .Anything , mock .Anything , mock .Anything , mock .Anything ).Return (false , nil , nil )
230+
231+ err := cmd .ExecuteContext (ctx )
232+ require .NoError (t , err )
233+ }
234+
211235func TestManifestValidateCommand_HandleOtherErrors (t * testing.T ) {
212236 // Create mocks
213237 ctx := slackcontext .MockContext (t .Context ())
0 commit comments