github.com/Pankov404/juju@v0.0.0-20150703034450-be266991dceb/cloudconfig/cloudinit/helpers_test.go (about)

     1  package cloudinit
     2  
     3  import (
     4  	gc "gopkg.in/check.v1"
     5  
     6  	"github.com/juju/utils/proxy"
     7  )
     8  
     9  type HelperSuite struct{}
    10  
    11  var _ = gc.Suite(HelperSuite{})
    12  
    13  type fakeCfg struct {
    14  	CloudConfig
    15  	packageProxySettings proxy.Settings
    16  	packageMirror        string
    17  	addUpdateScripts     bool
    18  	addUpgradeScripts    bool
    19  	calledAddReq         bool
    20  }
    21  
    22  func (f *fakeCfg) SetPackageMirror(m string) {
    23  	f.packageMirror = m
    24  }
    25  
    26  func (f *fakeCfg) SetSystemUpdate(b bool) {
    27  	f.addUpdateScripts = b
    28  }
    29  
    30  func (f *fakeCfg) SetSystemUpgrade(b bool) {
    31  	f.addUpgradeScripts = b
    32  }
    33  
    34  func (f *fakeCfg) addRequiredPackages() {
    35  	f.calledAddReq = true
    36  }
    37  func (f *fakeCfg) updateProxySettings(s proxy.Settings) {
    38  	f.packageProxySettings = s
    39  }
    40  
    41  func (HelperSuite) TestAddPkgCmdsCommon(c *gc.C) {
    42  	f := &fakeCfg{}
    43  
    44  	pps := proxy.Settings{
    45  		Http:    "http",
    46  		Https:   "https",
    47  		Ftp:     "ftp",
    48  		NoProxy: "noproxy",
    49  	}
    50  	mirror := "mirror"
    51  	upd, upg := true, true
    52  
    53  	addPackageCommandsCommon(f, pps, mirror, upd, upg, "trusty")
    54  	c.Assert(f.packageProxySettings, gc.Equals, pps)
    55  	c.Assert(f.packageMirror, gc.Equals, mirror)
    56  	c.Assert(f.addUpdateScripts, gc.Equals, upd)
    57  	c.Assert(f.addUpgradeScripts, gc.Equals, upg)
    58  	c.Assert(f.calledAddReq, gc.Equals, true)
    59  
    60  	f = &fakeCfg{}
    61  	upd, upg = false, false
    62  	addPackageCommandsCommon(f, pps, mirror, upd, upg, "trusty")
    63  	c.Assert(f.packageProxySettings, gc.Equals, pps)
    64  	c.Assert(f.packageMirror, gc.Equals, mirror)
    65  	c.Assert(f.addUpdateScripts, gc.Equals, upd)
    66  	c.Assert(f.addUpgradeScripts, gc.Equals, upg)
    67  	c.Assert(f.calledAddReq, gc.Equals, true)
    68  
    69  	f = &fakeCfg{}
    70  	upd, upg = false, false
    71  	addPackageCommandsCommon(f, pps, mirror, upd, upg, "precise")
    72  	c.Assert(f.packageProxySettings, gc.Equals, pps)
    73  	c.Assert(f.packageMirror, gc.Equals, mirror)
    74  	// for precise we need to override addUpdateScripts to always be true
    75  	c.Assert(f.addUpdateScripts, gc.Equals, true)
    76  	c.Assert(f.addUpgradeScripts, gc.Equals, upg)
    77  	c.Assert(f.calledAddReq, gc.Equals, true)
    78  }