dashboard_mock.go 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package dashboards
  2. import "context"
  3. type Calls struct {
  4. Provision []interface{}
  5. PollChanges []interface{}
  6. GetProvisionerResolvedPath []interface{}
  7. }
  8. type DashboardProvisionerMock struct {
  9. Calls *Calls
  10. ProvisionFunc func() error
  11. PollChangesFunc func(ctx context.Context)
  12. GetProvisionerResolvedPathFunc func(name string) string
  13. }
  14. func NewDashboardProvisionerMock() *DashboardProvisionerMock {
  15. return &DashboardProvisionerMock{
  16. Calls: &Calls{},
  17. }
  18. }
  19. func (dpm *DashboardProvisionerMock) Provision() error {
  20. dpm.Calls.Provision = append(dpm.Calls.Provision, nil)
  21. if dpm.ProvisionFunc != nil {
  22. return dpm.ProvisionFunc()
  23. }
  24. return nil
  25. }
  26. func (dpm *DashboardProvisionerMock) PollChanges(ctx context.Context) {
  27. dpm.Calls.PollChanges = append(dpm.Calls.PollChanges, ctx)
  28. if dpm.PollChangesFunc != nil {
  29. dpm.PollChangesFunc(ctx)
  30. }
  31. }
  32. func (dpm *DashboardProvisionerMock) GetProvisionerResolvedPath(name string) string {
  33. dpm.Calls.PollChanges = append(dpm.Calls.GetProvisionerResolvedPath, name)
  34. if dpm.GetProvisionerResolvedPathFunc != nil {
  35. return dpm.GetProvisionerResolvedPathFunc(name)
  36. }
  37. return ""
  38. }