go-translator/pkg/service/service_test.go
2024-01-22 02:50:27 +03:00

81 строка
1,5 КиБ
Go

package service
import (
"bytes"
"strings"
. "my/go-translator/pkg/testgodoglib"
"github.com/cucumber/godog"
. "github.com/onsi/gomega"
)
type testData struct {
src string
}
var (
t *testData
)
func resetTestData() {
t = &testData{}
_ = Ω
}
func beforeSuite() {
}
func afterSuite() {
}
func beforeScenario() {
resetTestData()
}
func afterScenario() {
}
// -----------------------
func исходник(src *godog.DocString) {
t.src = src.Content
}
func результат(out *godog.DocString) {
Compare_new(t.src, out.Content)
}
func Compare_new(source, expected string) {
var in, out bytes.Buffer
in.WriteString(source)
service := NewService(&in, &out)
err := service.Start()
got := out.String()
tgot, texpected := trim_new(got), trim_new(expected)
// spew.Dump(got)
ExpectWithOffset(1, err).NotTo(HaveOccurred())
ExpectWithOffset(1, tgot).To(Be(texpected))
}
func trim_new(s string) string {
s = strings.Replace(s, "\n", "", -1)
s = strings.Replace(s, "\r", "", -1)
s = strings.Replace(s, "\t", "", -1)
return s
}
func Compare(source, expected string) {
var in, out bytes.Buffer
in.WriteString(source)
service := NewService(&in, &out)
err := service.Start()
got := out.String()
tgot, texpected := Trim(got), Trim(expected)
// spew.Dump(tgot)
ExpectWithOffset(1, err).NotTo(HaveOccurred())
ExpectWithOffset(1, tgot).To(Be(texpected))
}
func Trim(s string) string {
s = strings.Replace(s, " ", "", -1)
s = strings.Replace(s, "\n", "", -1)
s = strings.Replace(s, "\r", "", -1)
s = strings.Replace(s, "\t", "", -1)
return s
}