github.com/helmwave/helmwave@v0.36.4-0.20240509190856-b35563eba4c6/pkg/plan/mock_release_export_test.go (about)

     1  package plan
     2  
     3  import (
     4  	"context"
     5  	"path/filepath"
     6  
     7  	"github.com/helmwave/helmwave/pkg/monitor"
     8  	"github.com/helmwave/helmwave/pkg/release"
     9  	"github.com/helmwave/helmwave/pkg/release/uniqname"
    10  	"github.com/helmwave/helmwave/pkg/template"
    11  	"github.com/sirupsen/logrus"
    12  	"github.com/stretchr/testify/mock"
    13  	"helm.sh/helm/v3/pkg/action"
    14  	"helm.sh/helm/v3/pkg/chartutil"
    15  	helmRelease "helm.sh/helm/v3/pkg/release"
    16  )
    17  
    18  type MockReleaseConfig struct {
    19  	mock.Mock
    20  }
    21  
    22  func (r *MockReleaseConfig) SetChartName(_ string) {
    23  	r.Called()
    24  }
    25  
    26  func (r *MockReleaseConfig) OfflineKubeVersion() *chartutil.KubeVersion {
    27  	r.Called()
    28  
    29  	v := &chartutil.KubeVersion{
    30  		Major:   "1",
    31  		Minor:   "22",
    32  		Version: "1.22.0",
    33  	}
    34  
    35  	return v
    36  }
    37  
    38  func (r *MockReleaseConfig) Uniq() uniqname.UniqName {
    39  	args := r.Called()
    40  
    41  	if len(args) > 0 {
    42  		return args.Get(0).(uniqname.UniqName)
    43  	}
    44  
    45  	u, _ := uniqname.Generate(r.Name(), r.Namespace())
    46  
    47  	return u
    48  }
    49  
    50  func (r *MockReleaseConfig) Sync(_ context.Context, _ bool) (*helmRelease.Release, error) {
    51  	args := r.Called()
    52  
    53  	return args.Get(0).(*helmRelease.Release), args.Error(1)
    54  }
    55  
    56  func (r *MockReleaseConfig) SyncDryRun(ctx context.Context, runHooks bool) (*helmRelease.Release, error) {
    57  	r.DryRun(true)
    58  	defer r.DryRun(false)
    59  
    60  	return r.Sync(ctx, runHooks)
    61  }
    62  
    63  func (r *MockReleaseConfig) DryRun(bool) {
    64  	r.Called()
    65  }
    66  
    67  func (r *MockReleaseConfig) ChartDepsUpd() error {
    68  	return r.Called().Error(0)
    69  }
    70  
    71  func (r *MockReleaseConfig) Equal(_ release.Config) bool {
    72  	return r.Called().Bool(0)
    73  }
    74  
    75  func (r *MockReleaseConfig) BuildValues(ctx context.Context, dir, templater string) error {
    76  	args := r.Called()
    77  	if errReturn := args.Error(0); errReturn != nil {
    78  		return errReturn
    79  	}
    80  
    81  	for i := len(r.Values()) - 1; i >= 0; i-- {
    82  		v := r.Values()[i]
    83  		dst := filepath.Join(dir, Values, filepath.Base(v.Src))
    84  		err := template.Tpl2yml(ctx, v.Src, dst, nil, templater)
    85  		if err != nil {
    86  			return err
    87  		}
    88  	}
    89  
    90  	return nil
    91  }
    92  
    93  func (r *MockReleaseConfig) Uninstall(context.Context) (*helmRelease.UninstallReleaseResponse, error) {
    94  	args := r.Called()
    95  
    96  	return args.Get(0).(*helmRelease.UninstallReleaseResponse), args.Error(1)
    97  }
    98  
    99  func (r *MockReleaseConfig) Get(version int) (*helmRelease.Release, error) {
   100  	args := r.Called(version)
   101  
   102  	return args.Get(0).(*helmRelease.Release), args.Error(1)
   103  }
   104  
   105  func (r *MockReleaseConfig) List() (*helmRelease.Release, error) {
   106  	args := r.Called()
   107  
   108  	return args.Get(0).(*helmRelease.Release), args.Error(1)
   109  }
   110  
   111  func (r *MockReleaseConfig) Rollback(context.Context, int) error {
   112  	return r.Called().Error(0)
   113  }
   114  
   115  func (r *MockReleaseConfig) Status() (*helmRelease.Release, error) {
   116  	args := r.Called()
   117  
   118  	return args.Get(0).(*helmRelease.Release), args.Error(1)
   119  }
   120  
   121  func (r *MockReleaseConfig) Name() string {
   122  	return r.Called().String(0)
   123  }
   124  
   125  func (r *MockReleaseConfig) Namespace() string {
   126  	return r.Called().String(0)
   127  }
   128  
   129  func (r *MockReleaseConfig) Chart() *release.Chart {
   130  	return r.Called().Get(0).(*release.Chart)
   131  }
   132  
   133  func (r *MockReleaseConfig) DependsOn() []*release.DependsOnReference {
   134  	return r.Called().Get(0).([]*release.DependsOnReference)
   135  }
   136  
   137  func (r *MockReleaseConfig) SetDependsOn(deps []*release.DependsOnReference) {
   138  	r.Called(deps)
   139  }
   140  
   141  func (r *MockReleaseConfig) Tags() []string {
   142  	return r.Called().Get(0).([]string)
   143  }
   144  
   145  func (r *MockReleaseConfig) Repo() string {
   146  	return r.Called().String(0)
   147  }
   148  
   149  func (r *MockReleaseConfig) Values() []release.ValuesReference {
   150  	return r.Called().Get(0).([]release.ValuesReference)
   151  }
   152  
   153  func (r *MockReleaseConfig) Logger() *logrus.Entry {
   154  	return r.Called().Get(0).(*logrus.Entry)
   155  }
   156  
   157  func (r *MockReleaseConfig) AllowFailure() bool {
   158  	return r.Called().Bool(0)
   159  }
   160  
   161  func (r *MockReleaseConfig) HelmWait() bool {
   162  	return true
   163  }
   164  
   165  func (r *MockReleaseConfig) DownloadChart(string) error {
   166  	return r.Called().Error(0)
   167  }
   168  
   169  func (r *MockReleaseConfig) SetChart(_ string) {}
   170  
   171  func (r *MockReleaseConfig) KubeContext() string {
   172  	return r.Called().String(0)
   173  }
   174  
   175  func (r *MockReleaseConfig) Cfg() *action.Configuration {
   176  	return r.Called().Get(0).(*action.Configuration)
   177  }
   178  
   179  func (r *MockReleaseConfig) HooksDisabled() bool {
   180  	return r.Called().Bool(0)
   181  }
   182  
   183  func (r *MockReleaseConfig) Validate() error {
   184  	return r.Called().Error(0)
   185  }
   186  
   187  func (r *MockReleaseConfig) Monitors() []release.MonitorReference {
   188  	return r.Called().Get(0).([]release.MonitorReference)
   189  }
   190  
   191  func (r *MockReleaseConfig) NotifyMonitorsFailed(context.Context, ...monitor.Config) {
   192  	r.Called()
   193  }