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