本文整理匯總了Golang中github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/system/fakes.FakeCmdRunner類的典型用法代碼示例。如果您正苦於以下問題:Golang FakeCmdRunner類的具體用法?Golang FakeCmdRunner怎麽用?Golang FakeCmdRunner使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了FakeCmdRunner類的14個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1:
package cdrom_test
import (
"errors"
. "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-agent/platform/cdrom"
fakeudev "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-agent/platform/udevdevice/fakes"
fakesys "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/system/fakes"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/ginkgo"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/gomega"
)
var _ = Describe("LinuxCdrom", func() {
var (
udev *fakeudev.FakeUdevDevice
runner *fakesys.FakeCmdRunner
cd Cdrom
)
BeforeEach(func() {
udev = fakeudev.NewFakeUdevDevice()
runner = fakesys.NewFakeCmdRunner()
})
JustBeforeEach(func() {
cd = NewLinuxCdrom("/dev/sr0", udev, runner)
})
Describe("WaitForMedia", func() {
It("polls the cdrom to force udev to notice it", func() {
err := cd.WaitForMedia()
示例2:
BeforeEach(func() {
mockCtrl = gomock.NewController(GinkgoT())
})
AfterEach(func() {
mockCtrl.Finish()
})
var (
logger boshlog.Logger
compiler bistatepkg.Compiler
runner *fakesys.FakeCmdRunner
pkg *birelpkg.Package
fs *fakesys.FakeFileSystem
compressor *fakecmd.FakeCompressor
packagesDir string
blobstore *fakeblobstore.FakeBlobstore
mockCompiledPackageRepo *mock_state_package.MockCompiledPackageRepo
fakeExtractor *fakeblobextract.FakeExtractor
dependency1 *birelpkg.Package
dependency2 *birelpkg.Package
)
BeforeEach(func() {
logger = boshlog.NewLogger(boshlog.LevelNone)
packagesDir = "fake-packages-dir"
runner = fakesys.NewFakeCmdRunner()
fs = fakesys.NewFakeFileSystem()
compressor = fakecmd.NewFakeCompressor()
示例3: describeUbuntuNetManager
func describeUbuntuNetManager() {
var (
fs *fakesys.FakeFileSystem
cmdRunner *fakesys.FakeCmdRunner
ipResolver *fakeip.FakeResolver
addressBroadcaster *fakearp.FakeAddressBroadcaster
netManager UbuntuNetManager
interfaceConfigurationCreator InterfaceConfigurationCreator
)
writeNetworkDevice := func(iface string, macAddress string, isPhysical bool) string {
interfacePath := fmt.Sprintf("/sys/class/net/%s", iface)
fs.WriteFile(interfacePath, []byte{})
if isPhysical {
fs.WriteFile(fmt.Sprintf("/sys/class/net/%s/device", iface), []byte{})
}
fs.WriteFileString(fmt.Sprintf("/sys/class/net/%s/address", iface), fmt.Sprintf("%s\n", macAddress))
return interfacePath
}
stubInterfacesWithVirtual := func(physicalInterfaces map[string]boshsettings.Network, virtualInterfaces []string) {
interfacePaths := []string{}
for iface, networkSettings := range physicalInterfaces {
interfacePaths = append(interfacePaths, writeNetworkDevice(iface, networkSettings.Mac, true))
}
for _, iface := range virtualInterfaces {
interfacePaths = append(interfacePaths, writeNetworkDevice(iface, "virtual", false))
}
fs.SetGlob("/sys/class/net/*", interfacePaths)
}
stubInterfaces := func(physicalInterfaces map[string]boshsettings.Network) {
stubInterfacesWithVirtual(physicalInterfaces, nil)
}
BeforeEach(func() {
fs = fakesys.NewFakeFileSystem()
cmdRunner = fakesys.NewFakeCmdRunner()
ipResolver = &fakeip.FakeResolver{}
logger := boshlog.NewLogger(boshlog.LevelNone)
interfaceConfigurationCreator = NewInterfaceConfigurationCreator(logger)
addressBroadcaster = &fakearp.FakeAddressBroadcaster{}
netManager = NewUbuntuNetManager(
fs,
cmdRunner,
ipResolver,
interfaceConfigurationCreator,
addressBroadcaster,
logger,
).(UbuntuNetManager)
})
Describe("ComputeNetworkConfig", func() {
Context("when there is one manual network and neither is marked as default for DNS", func() {
It("should use the manual network for DNS", func() {
networks := boshsettings.Networks{
"manual": factory.Network{DNS: &[]string{"8.8.8.8"}}.Build(),
}
stubInterfaces(networks)
_, _, dnsServers, err := netManager.ComputeNetworkConfig(networks)
Expect(err).ToNot(HaveOccurred())
Expect(dnsServers).To(Equal([]string{"8.8.8.8"}))
})
})
Context("when there is a vip network and a manual network and neither is marked as default for DNS", func() {
It("should use the manual network for DNS", func() {
networks := boshsettings.Networks{
"vip": boshsettings.Network{Type: "vip"},
"manual": factory.Network{Type: "manual", DNS: &[]string{"8.8.8.8"}}.Build(),
}
stubInterfaces(networks)
_, _, dnsServers, err := netManager.ComputeNetworkConfig(networks)
Expect(err).ToNot(HaveOccurred())
Expect(dnsServers).To(Equal([]string{"8.8.8.8"}))
})
})
Context("when there is a vip network and a manual network and the manual network is marked as default for DNS", func() {
It("should use the manual network for DNS", func() {
networks := boshsettings.Networks{
"vip": boshsettings.Network{Type: "vip"},
"manual": factory.Network{Type: "manual", DNS: &[]string{"8.8.8.8"}, Default: []string{"dns"}}.Build(),
}
stubInterfaces(networks)
_, _, dnsServers, err := netManager.ComputeNetworkConfig(networks)
Expect(err).ToNot(HaveOccurred())
Expect(dnsServers).To(Equal([]string{"8.8.8.8"}))
})
})
Context("when specified more than one DNS", func() {
It("extracts all DNS servers from the network configured as default DNS", func() {
networks := boshsettings.Networks{
"default": factory.Network{
IP: "10.10.0.32",
Netmask: "255.255.255.0",
//.........這裏部分代碼省略.........
示例4:
import (
"errors"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/ginkgo"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/gomega"
boshretry "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/retrystrategy"
fakesys "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/system/fakes"
. "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-agent/platform"
)
var _ = Describe("MonitRetryable", func() {
var (
cmdRunner *fakesys.FakeCmdRunner
monitRetryable boshretry.Retryable
)
BeforeEach(func() {
cmdRunner = fakesys.NewFakeCmdRunner()
monitRetryable = NewMonitRetryable(cmdRunner)
})
Describe("Attempt", func() {
Context("when starting monit fails", func() {
BeforeEach(func() {
cmdRunner.AddCmdResult("sv start monit", fakesys.FakeCmdResult{
ExitStatus: 255,
Error: errors.New("fake-start-monit-error"),
})
})
示例5:
package net_test
import (
"errors"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/ginkgo"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/gomega"
. "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-agent/platform/net"
fakesys "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/system/fakes"
)
var _ = Describe("cmdRoutesSeacher", func() {
var (
runner *fakesys.FakeCmdRunner
searcher RoutesSearcher
)
BeforeEach(func() {
runner = fakesys.NewFakeCmdRunner()
searcher = NewCmdRoutesSearcher(runner)
})
Describe("SearchRoutes", func() {
Context("when running command succeeds", func() {
It("returns parsed routes information", func() {
runner.AddCmdResult("route -n", fakesys.FakeCmdResult{
Stdout: `Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
172.16.79.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
示例6:
package infrastructure_test
import (
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/ginkgo"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/gomega"
. "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-agent/infrastructure"
boshlog "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/logger"
fakesys "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/system/fakes"
)
var _ = Describe("DigDNSResolver", func() {
var (
resolver DigDNSResolver
runner *fakesys.FakeCmdRunner
)
BeforeEach(func() {
logger := boshlog.NewLogger(boshlog.LevelNone)
runner = fakesys.NewFakeCmdRunner()
resolver = NewDigDNSResolver(runner, logger)
})
Describe("LookupHost", func() {
Context("when host is an ip", func() {
It("lookup host with an ip", func() {
ip, err := resolver.LookupHost([]string{"8.8.8.8"}, "74.125.239.101")
Expect(err).ToNot(HaveOccurred())
Expect(runner.RunCommands).To(BeEmpty())
Expect(ip).To(Equal("74.125.239.101"))
})
示例7:
package disk_test
import (
"errors"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/ginkgo"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/gomega"
. "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-agent/platform/disk"
boshlog "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/logger"
fakesys "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/system/fakes"
)
var _ = Describe("rootDevicePartitioner", func() {
var (
fakeCmdRunner *fakesys.FakeCmdRunner
partitioner Partitioner
)
BeforeEach(func() {
logger := boshlog.NewLogger(boshlog.LevelNone)
fakeCmdRunner = fakesys.NewFakeCmdRunner()
partitioner = NewRootDevicePartitioner(logger, fakeCmdRunner, 1)
})
Describe("Partition", func() {
Context("when the desired partitions do not exist", func() {
BeforeEach(func() {
// 20GiB device, ~3GiB partition 0, 18403868671B remaining
fakeCmdRunner.AddCmdResult(
"parted -m /dev/sda unit B print",
fakesys.FakeCmdResult{
示例8:
import (
"errors"
boshlog "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/logger"
boshsys "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/system"
fakesys "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/system/fakes"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/ginkgo"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/gomega"
. "github.com/cloudfoundry/bosh-init/templatescompiler/erbrenderer"
fakebierbrenderer "github.com/cloudfoundry/bosh-init/templatescompiler/erbrenderer/fakes"
)
var _ = Describe("ErbRenderer", func() {
var (
fs *fakesys.FakeFileSystem
runner *fakesys.FakeCmdRunner
erbRenderer ERBRenderer
context *fakebierbrenderer.FakeTemplateEvaluationContext
)
BeforeEach(func() {
logger := boshlog.NewLogger(boshlog.LevelNone)
fs = fakesys.NewFakeFileSystem()
runner = fakesys.NewFakeCmdRunner()
context = &fakebierbrenderer.FakeTemplateEvaluationContext{}
erbRenderer = NewERBRenderer(fs, runner, logger)
fs.TempDirDir = "fake-temp-dir"
})
It("constructs ruby erb rendering command", func() {
err := erbRenderer.Render("fake-src-path", "fake-dst-path", context)
示例9:
/dev/sda3 : start= xxxx, size= xxxx, Id=83
/dev/sda4 : start= 0, size= 0, Id= 0
`
const devSdaSfdiskDumpOnePartition = `# partition table of /dev/sda
unit: sectors
/dev/sda1 : start= 1, size= xxxx, Id=83
/dev/sda2 : start= xxxx, size= xxxx, Id=83
/dev/sda3 : start= 0, size= 0, Id= 0
/dev/sda4 : start= 0, size= 0, Id= 0
`
var _ = Describe("sfdiskPartitioner", func() {
var (
runner *fakesys.FakeCmdRunner
partitioner Partitioner
)
BeforeEach(func() {
runner = fakesys.NewFakeCmdRunner()
logger := boshlog.NewLogger(boshlog.LevelNone)
partitioner = NewSfdiskPartitioner(logger, runner)
})
It("sfdisk partition", func() {
runner.AddCmdResult("sfdisk -d /dev/sda", fakesys.FakeCmdResult{Stdout: devSdaSfdiskEmptyDump})
partitions := []Partition{
{Type: PartitionTypeSwap, SizeInBytes: 512 * 1024 * 1024},
{Type: PartitionTypeLinux, SizeInBytes: 1024 * 1024 * 1024},
示例10:
fakeFs.WriteFileString("/path/to/delete/stuff/in/delete_me_1.foo", "goodbye")
fakeFs.WriteFileString("/path/to/delete/stuff/in/delete_me_2.bar", "goodbye")
fakeFs.SetGlob("/path/to/delete/stuff/in/delete_me_*", []string{
"/path/to/delete/stuff/in/delete_me_1.foo",
"/path/to/delete/stuff/in/delete_me_2.bar",
})
count, err := cert.DeleteFiles(fakeFs, "/path/to/delete/stuff/in/", "delete_me_")
Expect(err).To(HaveOccurred())
Expect(count).To(Equal(0))
})
})
Describe("cert.Manager implementations", func() {
var (
fakeFs *fakesys.FakeFileSystem
fakeCmd *fakesys.FakeCmdRunner
certManager cert.Manager
)
SharedLinuxCertManagerExamples := func(certBasePath, certUpdateProgram string) {
It("writes 1 cert to a file", func() {
err := certManager.UpdateCertificates(cert1)
Expect(err).NotTo(HaveOccurred())
Expect(fakeFs.FileExists(fmt.Sprintf("%s/bosh-trusted-cert-1.crt", certBasePath))).To(BeTrue())
})
It("writes each cert to its own file", func() {
certs := fmt.Sprintf("%s\n%s\n", cert1, cert1)
err := certManager.UpdateCertificates(certs)
Expect(err).NotTo(HaveOccurred())
示例11:
package disk_test
import (
"errors"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/ginkgo"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/gomega"
. "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-agent/platform/disk"
fakesys "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/system/fakes"
)
var _ = Describe("cmdMountsSeacher", func() {
var (
runner *fakesys.FakeCmdRunner
searcher MountsSearcher
)
BeforeEach(func() {
runner = fakesys.NewFakeCmdRunner()
searcher = NewCmdMountsSearcher(runner)
})
Describe("SearchMounts", func() {
Context("when running command succeeds", func() {
It("returns parsed mount information", func() {
runner.AddCmdResult("mount", fakesys.FakeCmdResult{
Stdout: `devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
/dev/sda1 on /boot type ext2 (rw)
none on /tmp/warden/cgroup type tmpfs (rw)`,
示例12:
s.mounts = s.mounts[1:]
return result, nil
}
const swaponUsageOutput = `Filename Type Size Used Priority
/dev/swap partition 78180316 0 -1
`
const swaponUsageOutputWithOtherDevice = `Filename Type Size Used Priority
/dev/swap2 partition 78180316 0 -1
`
var _ = Describe("linuxMounter", func() {
var (
runner *fakesys.FakeCmdRunner
mountsSearcher *fakedisk.FakeMountsSearcher
mounter Mounter
)
BeforeEach(func() {
runner = fakesys.NewFakeCmdRunner()
mountsSearcher = &fakedisk.FakeMountsSearcher{}
mounter = NewLinuxMounter(runner, mountsSearcher, 1*time.Millisecond)
})
Describe("Mount", func() {
It("allows to mount disk at given mount point", func() {
err := mounter.Mount("/dev/foo", "/mnt/foo")
Expect(err).ToNot(HaveOccurred())
Expect(1).To(Equal(len(runner.RunCommands)))
Expect(runner.RunCommands[0]).To(Equal([]string{"mount", "/dev/foo", "/mnt/foo"}))
示例13:
"strings"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/ginkgo"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/gomega"
boshassert "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/assert"
. "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/blobstore"
fakesys "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/system/fakes"
fakeuuid "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/uuid/fakes"
)
var _ = Describe("externalBlobstore", func() {
var (
fs *fakesys.FakeFileSystem
runner *fakesys.FakeCmdRunner
uuidGen *fakeuuid.FakeGenerator
configPath string
blobstore Blobstore
)
BeforeEach(func() {
fs = fakesys.NewFakeFileSystem()
runner = fakesys.NewFakeCmdRunner()
uuidGen = &fakeuuid.FakeGenerator{}
configPath = filepath.Join("/etc/", "blobstore-fake-provider.json")
blobstore = NewExternalBlobstore("fake-provider", map[string]interface{}{}, fs, runner, uuidGen, configPath)
})
Describe("Validate", func() {
It("external validate writes config file", func() {
options := map[string]interface{}{"fake-key": "fake-value"}
示例14:
import (
"encoding/json"
"errors"
"io/ioutil"
. "github.com/cloudfoundry/bosh-init/cloud"
boshlog "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/logger"
fakesys "github.com/cloudfoundry/bosh-init/internal/github.com/cloudfoundry/bosh-utils/system/fakes"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/ginkgo"
. "github.com/cloudfoundry/bosh-init/internal/github.com/onsi/gomega"
)
var _ = Describe("CpiCmdRunner", func() {
var (
cpiCmdRunner CPICmdRunner
context CmdContext
cmdRunner *fakesys.FakeCmdRunner
cpi CPI
)
BeforeEach(func() {
context = CmdContext{
DirectorID: "fake-director-id",
}
cpi = CPI{
JobPath: "/jobs/cpi",
JobsDir: "/jobs",
PackagesDir: "/packages",
}
cmdRunner = fakesys.NewFakeCmdRunner()