extract go1.11 specific build scenarios
Этот коммит содержится в:
родитель
68c836441f
коммит
d266d9188c
2 изменённых файлов: 93 добавлений и 83 удалений
93
builder_go111_test.go
Обычный файл
93
builder_go111_test.go
Обычный файл
|
@ -0,0 +1,93 @@
|
|||
// +build go1.11
|
||||
|
||||
package godog
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"os"
|
||||
"os/exec"
|
||||
"path/filepath"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestGodogBuildWithModuleOutsideGopath(t *testing.T) {
|
||||
dir := filepath.Join(os.TempDir(), "godogs")
|
||||
err := buildTestPackage(dir, builderFeatureFile, builderMainCodeFile, builderTestFile)
|
||||
if err != nil {
|
||||
os.RemoveAll(dir)
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer os.RemoveAll(dir)
|
||||
|
||||
prevDir, err := os.Getwd()
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if err := os.Chdir(dir); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer os.Chdir(prevDir)
|
||||
|
||||
if out, err := exec.Command("go", "mod", "init", "godogs").CombinedOutput(); err != nil {
|
||||
t.Log(string(out))
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
var stdout, stderr bytes.Buffer
|
||||
cmd := exec.Command("godog", "godogs.feature")
|
||||
cmd.Stdout = &stdout
|
||||
cmd.Stderr = &stderr
|
||||
cmd.Env = os.Environ()
|
||||
|
||||
if err := cmd.Run(); err != nil {
|
||||
t.Log(stdout.String())
|
||||
t.Log(stderr.String())
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
// func TestGodogBuildWithModuleInsideGopath(t *testing.T) {
|
||||
// gopath := filepath.Join(os.TempDir(), "_gp")
|
||||
// dir := filepath.Join(gopath, "src", "godogs")
|
||||
// err := buildTestPackage(dir, builderFeatureFile, builderMainCodeFile, builderTestFile)
|
||||
// if err != nil {
|
||||
// os.RemoveAll(gopath)
|
||||
// t.Fatal(err)
|
||||
// }
|
||||
// defer os.RemoveAll(gopath)
|
||||
|
||||
// prevDir, err := os.Getwd()
|
||||
// if err != nil {
|
||||
// t.Fatal(err)
|
||||
// }
|
||||
|
||||
// if err := os.Chdir(dir); err != nil {
|
||||
// t.Fatal(err)
|
||||
// }
|
||||
// defer os.Chdir(prevDir)
|
||||
|
||||
// c := exec.Command("go", "mod", "init", "godogs")
|
||||
// c.Env = os.Environ()
|
||||
// c.Env = append(c.Env, "GOPATH="+gopath)
|
||||
// c.Env = append(c.Env, "GO111MODULE=on")
|
||||
// if out, err := c.CombinedOutput(); err != nil {
|
||||
// t.Log(string(out))
|
||||
// t.Fatal(err)
|
||||
// }
|
||||
|
||||
// var stdout, stderr bytes.Buffer
|
||||
// cmd := exec.Command("godog", "godogs.feature")
|
||||
// cmd.Stdout = &stdout
|
||||
// cmd.Stderr = &stderr
|
||||
// cmd.Env = os.Environ()
|
||||
// cmd.Env = append(cmd.Env, "GOPATH="+gopath)
|
||||
// cmd.Env = append(cmd.Env, "GO111MODULE=on")
|
||||
|
||||
// if err := cmd.Run(); err != nil {
|
||||
// t.Log(stdout.String())
|
||||
// t.Log(stderr.String())
|
||||
// t.Fatal(err)
|
||||
// }
|
||||
// fmt.Println(stdout.String())
|
||||
// }
|
|
@ -2,7 +2,6 @@ package godog
|
|||
|
||||
import (
|
||||
"bytes"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"os/exec"
|
||||
|
@ -277,88 +276,6 @@ func TestGodogBuildWithVendoredGodog(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestGodogBuildWithModuleOutsideGopath(t *testing.T) {
|
||||
dir := filepath.Join(os.TempDir(), "godogs")
|
||||
err := buildTestPackage(dir, builderFeatureFile, builderMainCodeFile, builderTestFile)
|
||||
if err != nil {
|
||||
os.RemoveAll(dir)
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer os.RemoveAll(dir)
|
||||
|
||||
prevDir, err := os.Getwd()
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if err := os.Chdir(dir); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer os.Chdir(prevDir)
|
||||
|
||||
if out, err := exec.Command("go", "mod", "init", "godogs").CombinedOutput(); err != nil {
|
||||
t.Log(string(out))
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
var stdout, stderr bytes.Buffer
|
||||
cmd := exec.Command("godog", "godogs.feature")
|
||||
cmd.Stdout = &stdout
|
||||
cmd.Stderr = &stderr
|
||||
cmd.Env = os.Environ()
|
||||
|
||||
if err := cmd.Run(); err != nil {
|
||||
t.Log(stdout.String())
|
||||
t.Log(stderr.String())
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestGodogBuildWithModuleInsideGopath(t *testing.T) {
|
||||
gopath := filepath.Join(os.TempDir(), "_gp")
|
||||
dir := filepath.Join(gopath, "src", "godogs")
|
||||
err := buildTestPackage(dir, builderFeatureFile, builderMainCodeFile, builderTestFile)
|
||||
if err != nil {
|
||||
os.RemoveAll(gopath)
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer os.RemoveAll(gopath)
|
||||
|
||||
prevDir, err := os.Getwd()
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if err := os.Chdir(dir); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer os.Chdir(prevDir)
|
||||
|
||||
c := exec.Command("go", "mod", "init", "godogs")
|
||||
c.Env = os.Environ()
|
||||
c.Env = append(c.Env, "GOPATH="+gopath)
|
||||
c.Env = append(c.Env, "GO111MODULE=on")
|
||||
if out, err := c.CombinedOutput(); err != nil {
|
||||
t.Log(string(out))
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
var stdout, stderr bytes.Buffer
|
||||
cmd := exec.Command("godog", "godogs.feature")
|
||||
cmd.Stdout = &stdout
|
||||
cmd.Stderr = &stderr
|
||||
cmd.Env = os.Environ()
|
||||
cmd.Env = append(cmd.Env, "GOPATH="+gopath)
|
||||
cmd.Env = append(cmd.Env, "GO111MODULE=on")
|
||||
|
||||
if err := cmd.Run(); err != nil {
|
||||
t.Log(stdout.String())
|
||||
t.Log(stderr.String())
|
||||
t.Fatal(err)
|
||||
}
|
||||
fmt.Println(stdout.String())
|
||||
}
|
||||
|
||||
func TestBuildTestRunner(t *testing.T) {
|
||||
bin := filepath.Join(os.TempDir(), "godog.test")
|
||||
if err := Build(bin); err != nil {
|
||||
|
|
Загрузка…
Создание таблицы
Сослаться в новой задаче