func (rnc ResourceNameConfig) NewResourceNamer(testName string) ResourceNamer {
	hasher := fnv.New64()
	n, err := hasher.Write([]byte(testName))
	if n != len(testName) || err != nil {
		panic("failed to write hash")
	}
	seed := hasher.Sum64()
	return ResourceNamer{
		ResourceNameConfig: rnc,
		rand: rand.New(rand.NewSource(int64(seed))),
	}
}
NewResourceNamer returns a ResourceNamer that generates random
suffixes based upon the test name
package testcommon
import (
	"hash/fnv"
	"math/rand"
	"strings"
)
type ResourceNameConfig struct {
	runes       []rune
	prefix      string
	randomChars int
	separator   string
}
type ResourceNamer struct {
	ResourceNameConfig
	rand *rand.Rand
}