Add upgrade tests

This commit is contained in:
Josh Curl
2016-08-28 08:58:17 -07:00
parent b536e6ea35
commit 8777e477b8
4 changed files with 44 additions and 20 deletions

View File

@@ -14,4 +14,4 @@ if [ ! -e ../dist/artifacts/initrd ]; then
../scripts/dev
fi
go test -timeout 20m
go test -timeout 30m

View File

@@ -56,7 +56,23 @@ func (s *QemuSuite) RunQemu(additionalArgs ...string) error {
}
runArgs = append(runArgs, additionalArgs...)
s.qemuCmd = exec.Command(s.runCommand, runArgs...)
return s.runQemu(runArgs...)
}
func (s *QemuSuite) RunQemuInstalled(additionalArgs ...string) error {
runArgs := []string{
"--qemu",
"--no-rebuild",
"--no-rm-usr",
"--installed",
}
runArgs = append(runArgs, additionalArgs...)
return s.runQemu(runArgs...)
}
func (s *QemuSuite) runQemu(args ...string) error {
s.qemuCmd = exec.Command(s.runCommand, args...)
s.qemuCmd.Stdout = os.Stdout
s.qemuCmd.Stderr = os.Stderr
if err := s.qemuCmd.Start(); err != nil {

View File

@@ -1,18 +0,0 @@
package integration
import (
"fmt"
. "gopkg.in/check.v1"
)
func (s *QemuSuite) TestInstall(c *C) {
err := s.RunQemu("--no-format")
c.Assert(err, IsNil)
s.LoadInstallerImage(c)
s.CheckCall(c, fmt.Sprintf(`
sudo mkfs.ext4 /dev/vda
sudo ros install -f --no-reboot -d /dev/vda -i rancher/os:%s%s`, Version, Suffix))
}

26
tests/upgrade_test.go Normal file
View File

@@ -0,0 +1,26 @@
package integration
import (
"fmt"
. "gopkg.in/check.v1"
)
func (s *QemuSuite) TestUpgrade(c *C) {
err := s.RunQemuInstalled()
c.Assert(err, IsNil)
s.CheckCall(c, `
set -ex
sudo ros os upgrade -i rancher/os:v0.5.0 --force --no-reboot`)
s.Reboot(c)
s.CheckCall(c, "sudo ros -v | grep v0.5.0")
s.LoadInstallerImage(c)
s.CheckCall(c, fmt.Sprintf("sudo ros os upgrade -i rancher/os:%s%s --force --no-reboot", Version, Suffix))
s.Reboot(c)
s.CheckCall(c, fmt.Sprintf("sudo ros -v | grep %s", Version))
}