compose/compose/project_test.go

45 lines
1.0 KiB
Go

package compose
import (
"os"
"testing"
. "github.com/onsi/gomega"
"github.com/stretchr/testify/suite"
)
type ComposeTest struct {
suite.Suite
}
func (suite *ComposeTest) TestParseComposeFile() {
files := []string{"../tests/composefiles/aci-demo/aci_demo_port.yaml"}
config, err := parseConfigs(files)
Expect(err).To(BeNil())
services := config[0].Config["services"].(map[string]interface{})
Expect(len(services)).To(Equal(3))
}
func (suite *ComposeTest) TestParseComposeStdin() {
files := []string{"-"}
f, err := os.Open("../tests/composefiles/aci-demo/aci_demo_port.yaml")
Expect(err).To(BeNil())
defer func() {
err := f.Close()
Expect(err).To(BeNil())
}()
oldStdin := os.Stdin
defer func() { os.Stdin = oldStdin }() // Restore original Stdin
os.Stdin = f
config, err := parseConfigs(files)
Expect(err).To(BeNil())
services := config[0].Config["services"].(map[string]interface{})
Expect(len(services)).To(Equal(3))
}
func TestComposeProject(t *testing.T) {
RegisterTestingT(t)
suite.Run(t, new(ComposeTest))
}