godog/pkg/formatters/ast/ast_test.go

75 строки
1,4 КиБ
Go

package ast
import (
"os"
"path/filepath"
"git.golang1.ru/softonik/godog"
"git.golang1.ru/softonik/godog/pkg/lib"
. "git.golang1.ru/softonik/godog_and_gomega"
. "github.com/onsi/gomega"
. "github.com/onsi/gomega/format"
)
type testData struct {
tempdir string
}
var (
t *testData
)
func resetTestData() {
t = &testData{}
}
func beforeSuite() {
CharactersAroundMismatchToInclude = 20
}
func afterSuite() {
}
func beforeScenario() {
resetTestData()
createTempDir()
}
func afterScenario() {
rmTempDir()
}
func createTempDir() {
dir := filepath.Clean(os.TempDir())
tempDir, err := os.MkdirTemp(dir, "test-")
Ok(err)
t.tempdir = tempDir
err = os.Chdir(t.tempdir)
Ok(err)
}
func rmTempDir() {
err := os.RemoveAll(t.tempdir)
Ok(err)
}
// -----------------------
func файл(fname string, content *godog.DocString) {
err := lib.WriteFile(fname, content.Content)
Ok(err)
}
func добавленаФункция(func_name string) {
err := ДобавитьТестовуюФункцию(func_name, nil)
Ok(err)
}
func добавленаФункцияСПараметрами(func_name, arg1, type1 string) {
params := map[string]string{
arg1: type1,
}
err := ДобавитьТестовуюФункцию(func_name, params)
Ok(err)
}
func файлДолженСодержать(fname string, content *godog.DocString) {
cont, err := lib.ReadFile(fname)
Ok(err)
Ω(cont).To(Be(content.Content))
}