Separate common used test functions and structs to test/utils

Put common used test functions and structs to a separated package.
So we can use them for more testsuites.

Signed-off-by: Yiqiao Pu <ypu@redhat.com>
This commit is contained in:
Yiqiao Pu
2018-10-29 14:56:07 +08:00
parent 236408bbbc
commit 74bcfc2f96
77 changed files with 1188 additions and 640 deletions

View File

@ -0,0 +1,52 @@
package utils_test
import (
"fmt"
"io"
"os/exec"
"strings"
"testing"
. "github.com/containers/libpod/test/utils"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
"github.com/onsi/gomega/gexec"
)
var FakeOutputs map[string][]string
var GoechoPath = "../goecho/goecho"
type FakePodmanTest struct {
PodmanTest
}
func FakePodmanTestCreate() *FakePodmanTest {
FakeOutputs = make(map[string][]string)
p := &FakePodmanTest{
PodmanTest: PodmanTest{
PodmanBinary: GoechoPath,
},
}
p.PodmanMakeOptions = p.makeOptions
return p
}
func (p *FakePodmanTest) makeOptions(args []string) []string {
return FakeOutputs[strings.Join(args, " ")]
}
func StartFakeCmdSession(args []string) *PodmanSession {
var outWriter, errWriter io.Writer
command := exec.Command(GoechoPath, args...)
session, err := gexec.Start(command, outWriter, errWriter)
if err != nil {
fmt.Println(err)
}
return &PodmanSession{session}
}
func TestUtils(t *testing.T) {
RegisterFailHandler(Fail)
RunSpecs(t, "Unit test for test utils package")
}