coredns/middleware/test/zone.go
Miek Gieben 9f651a397b All (non etcd) tests are now local (#105)
We don't need to network to do tests, we up enough local servers
to we don't need to forward to,s say 8.8.8.8
2016-04-11 15:56:22 +01:00

21 lines
503 B
Go

package test
import (
"io/ioutil"
"os"
"testing"
)
// Zone will create a temporary file on disk and returns the name and
// cleanup function to remove it later.
func Zone(t *testing.T, dir, zonefile string) (string, func(), error) {
f, err := ioutil.TempFile(dir, "go-test-zone")
if err != nil {
return "", nil, err
}
if err := ioutil.WriteFile(f.Name(), []byte(zonefile), 0644); err != nil {
return "", nil, err
}
rmFunc := func() { os.Remove(f.Name()) }
return f.Name(), rmFunc, nil
}