github.com/juju/juju@v0.0.0-20240327075706-a90865de2538/worker/deployer/mock_config_test.go (about)

     1  // Copyright 2020 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package deployer_test
     5  
     6  import (
     7  	"github.com/juju/names/v5"
     8  	"github.com/juju/version/v2"
     9  
    10  	"github.com/juju/juju/agent"
    11  	"github.com/juju/juju/core/model"
    12  	"github.com/juju/juju/testing"
    13  )
    14  
    15  type mockConfig struct {
    16  	agent.Config
    17  	tag               names.Tag
    18  	datadir           string
    19  	logdir            string
    20  	upgradedToVersion version.Number
    21  	jobs              []model.MachineJob
    22  }
    23  
    24  func (mock *mockConfig) Tag() names.Tag {
    25  	return mock.tag
    26  }
    27  
    28  func (mock *mockConfig) DataDir() string {
    29  	return mock.datadir
    30  }
    31  
    32  func (mock *mockConfig) LogDir() string {
    33  	return mock.logdir
    34  }
    35  
    36  func (mock *mockConfig) Jobs() []model.MachineJob {
    37  	return mock.jobs
    38  }
    39  
    40  func (mock *mockConfig) UpgradedToVersion() version.Number {
    41  	return mock.upgradedToVersion
    42  }
    43  
    44  func (mock *mockConfig) WriteUpgradedToVersion(newVersion version.Number) error {
    45  	mock.upgradedToVersion = newVersion
    46  	return nil
    47  }
    48  
    49  func (mock *mockConfig) Model() names.ModelTag {
    50  	return testing.ModelTag
    51  }
    52  
    53  func (mock *mockConfig) Controller() names.ControllerTag {
    54  	return testing.ControllerTag
    55  }
    56  
    57  func (mock *mockConfig) CACert() string {
    58  	return testing.CACert
    59  }
    60  
    61  func (mock *mockConfig) Value(_ string) string {
    62  	return ""
    63  }
    64  
    65  func agentConfig(tag names.Tag, datadir, logdir string) agent.Config {
    66  	return &mockConfig{tag: tag, datadir: datadir, logdir: logdir}
    67  }