github.com/asifdxtreme/cli@v6.1.3-0.20150123051144-9ead8700b4ae+incompatible/cf/api/applications/fakes/fake_application_repository.go (about) 1 package fakes 2 3 import ( 4 "errors" 5 "sync" 6 7 "github.com/cloudfoundry/cli/cf/api/applications" 8 "github.com/cloudfoundry/cli/cf/models" 9 ) 10 11 type FakeApplicationRepository struct { 12 FindAllApps []models.Application 13 14 ReadCalls int 15 ReadArgs struct { 16 Name string 17 } 18 ReadReturns struct { 19 App models.Application 20 Error error 21 } 22 23 CreateAppParams []models.AppParams 24 25 UpdateParams models.AppParams 26 UpdateAppGuid string 27 UpdateAppResult models.Application 28 UpdateErr bool 29 30 DeletedAppGuid string 31 32 CreateRestageRequestArgs struct { 33 AppGuid string 34 } 35 36 ReadFromSpaceStub func(name string, spaceGuid string) (app models.Application, apiErr error) 37 readFromSpaceMutex sync.RWMutex 38 readFromSpaceArgsForCall []struct { 39 name string 40 spaceGuid string 41 } 42 readFromSpaceReturns struct { 43 result1 models.Application 44 result2 error 45 } 46 47 ReadEnvStub func(guid string) (*models.Environment, error) 48 readEnvMutex sync.RWMutex 49 readEnvArgsForCall []struct { 50 guid string 51 } 52 readEnvReturns struct { 53 result1 *models.Environment 54 result2 error 55 } 56 } 57 58 //counterfeiter section 59 func (fake *FakeApplicationRepository) ReadFromSpace(name string, spaceGuid string) (app models.Application, apiErr error) { 60 fake.readFromSpaceMutex.Lock() 61 defer fake.readFromSpaceMutex.Unlock() 62 fake.readFromSpaceArgsForCall = append(fake.readFromSpaceArgsForCall, struct { 63 name string 64 spaceGuid string 65 }{name, spaceGuid}) 66 if fake.ReadFromSpaceStub != nil { 67 return fake.ReadFromSpaceStub(name, spaceGuid) 68 } else { 69 return fake.readFromSpaceReturns.result1, fake.readFromSpaceReturns.result2 70 } 71 } 72 73 func (fake *FakeApplicationRepository) ReadFromSpaceCallCount() int { 74 fake.readFromSpaceMutex.RLock() 75 defer fake.readFromSpaceMutex.RUnlock() 76 return len(fake.readFromSpaceArgsForCall) 77 } 78 79 func (fake *FakeApplicationRepository) ReadFromSpaceArgsForCall(i int) (string, string) { 80 fake.readFromSpaceMutex.RLock() 81 defer fake.readFromSpaceMutex.RUnlock() 82 return fake.readFromSpaceArgsForCall[i].name, fake.readFromSpaceArgsForCall[i].spaceGuid 83 } 84 85 func (fake *FakeApplicationRepository) ReadFromSpaceReturns(result1 models.Application, result2 error) { 86 fake.readFromSpaceReturns = struct { 87 result1 models.Application 88 result2 error 89 }{result1, result2} 90 } 91 func (fake *FakeApplicationRepository) ReadEnv(guid string) (*models.Environment, error) { 92 fake.readEnvMutex.Lock() 93 fake.readEnvArgsForCall = append(fake.readEnvArgsForCall, struct { 94 guid string 95 }{guid}) 96 fake.readEnvMutex.Unlock() 97 if fake.ReadEnvStub != nil { 98 return fake.ReadEnvStub(guid) 99 } else { 100 return fake.readEnvReturns.result1, fake.readEnvReturns.result2 101 } 102 } 103 104 func (fake *FakeApplicationRepository) ReadEnvCallCount() int { 105 fake.readEnvMutex.RLock() 106 defer fake.readEnvMutex.RUnlock() 107 return len(fake.readEnvArgsForCall) 108 } 109 110 func (fake *FakeApplicationRepository) ReadEnvArgsForCall(i int) string { 111 fake.readEnvMutex.RLock() 112 defer fake.readEnvMutex.RUnlock() 113 return fake.readEnvArgsForCall[i].guid 114 } 115 116 func (fake *FakeApplicationRepository) ReadEnvReturns(result1 *models.Environment, result2 error) { 117 fake.ReadEnvStub = nil 118 fake.readEnvReturns = struct { 119 result1 *models.Environment 120 result2 error 121 }{result1, result2} 122 } 123 124 //End counterfeiter section 125 126 func (repo *FakeApplicationRepository) Read(name string) (app models.Application, apiErr error) { 127 repo.ReadCalls++ 128 repo.ReadArgs.Name = name 129 return repo.ReadReturns.App, repo.ReadReturns.Error 130 } 131 132 func (repo *FakeApplicationRepository) CreatedAppParams() (params models.AppParams) { 133 if len(repo.CreateAppParams) > 0 { 134 params = repo.CreateAppParams[0] 135 } 136 return 137 } 138 139 func (repo *FakeApplicationRepository) Create(params models.AppParams) (resultApp models.Application, apiErr error) { 140 if repo.CreateAppParams == nil { 141 repo.CreateAppParams = []models.AppParams{} 142 } 143 144 repo.CreateAppParams = append(repo.CreateAppParams, params) 145 146 resultApp.Guid = *params.Name + "-guid" 147 resultApp.Name = *params.Name 148 resultApp.State = "stopped" 149 resultApp.EnvironmentVars = map[string]interface{}{} 150 151 if params.SpaceGuid != nil { 152 resultApp.SpaceGuid = *params.SpaceGuid 153 } 154 if params.BuildpackUrl != nil { 155 resultApp.BuildpackUrl = *params.BuildpackUrl 156 } 157 if params.Command != nil { 158 resultApp.Command = *params.Command 159 } 160 if params.DiskQuota != nil { 161 resultApp.DiskQuota = *params.DiskQuota 162 } 163 if params.InstanceCount != nil { 164 resultApp.InstanceCount = *params.InstanceCount 165 } 166 if params.Memory != nil { 167 resultApp.Memory = *params.Memory 168 } 169 if params.EnvironmentVars != nil { 170 resultApp.EnvironmentVars = *params.EnvironmentVars 171 } 172 173 return 174 } 175 176 func (repo *FakeApplicationRepository) Update(appGuid string, params models.AppParams) (updatedApp models.Application, apiErr error) { 177 repo.UpdateAppGuid = appGuid 178 repo.UpdateParams = params 179 updatedApp = repo.UpdateAppResult 180 if repo.UpdateErr { 181 apiErr = errors.New("Error updating app.") 182 } 183 return 184 } 185 186 func (repo *FakeApplicationRepository) Delete(appGuid string) (apiErr error) { 187 repo.DeletedAppGuid = appGuid 188 return 189 } 190 191 func (repo *FakeApplicationRepository) CreateRestageRequest(guid string) (apiErr error) { 192 repo.CreateRestageRequestArgs.AppGuid = guid 193 return nil 194 } 195 196 var _ applications.ApplicationRepository = new(FakeApplicationRepository)