mirror of
https://github.com/golang/go.git
synced 2025-11-07 12:11:00 +00:00
testing: shorten some more tests
R=rsc CC=golang-dev https://golang.org/cl/4314044
This commit is contained in:
parent
d607cb289d
commit
7f9acb53cb
14 changed files with 89 additions and 18 deletions
|
|
@ -150,5 +150,8 @@ testLoop:
|
||||||
t.Errorf("test %d: Incorrect result: (-=expected, +=actual)\n%v",
|
t.Errorf("test %d: Incorrect result: (-=expected, +=actual)\n%v",
|
||||||
i, bytediff(expected, actual))
|
i, bytediff(expected, actual))
|
||||||
}
|
}
|
||||||
|
if testing.Short() { // The second test is expensive.
|
||||||
|
break
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -716,18 +716,25 @@ var composites = []string{
|
||||||
|
|
||||||
|
|
||||||
func TestProbablyPrime(t *testing.T) {
|
func TestProbablyPrime(t *testing.T) {
|
||||||
|
nreps := 20
|
||||||
|
if testing.Short() {
|
||||||
|
nreps = 1
|
||||||
|
}
|
||||||
for i, s := range primes {
|
for i, s := range primes {
|
||||||
p, _ := new(Int).SetString(s, 10)
|
p, _ := new(Int).SetString(s, 10)
|
||||||
if !ProbablyPrime(p, 20) {
|
if !ProbablyPrime(p, nreps) {
|
||||||
t.Errorf("#%d prime found to be non-prime (%s)", i, s)
|
t.Errorf("#%d prime found to be non-prime (%s)", i, s)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for i, s := range composites {
|
for i, s := range composites {
|
||||||
c, _ := new(Int).SetString(s, 10)
|
c, _ := new(Int).SetString(s, 10)
|
||||||
if ProbablyPrime(c, 20) {
|
if ProbablyPrime(c, nreps) {
|
||||||
t.Errorf("#%d composite found to be prime (%s)", i, s)
|
t.Errorf("#%d composite found to be prime (%s)", i, s)
|
||||||
}
|
}
|
||||||
|
if testing.Short() {
|
||||||
|
break
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -33,6 +33,9 @@ func s(n uint64) string {
|
||||||
|
|
||||||
|
|
||||||
func TestVectorNums(t *testing.T) {
|
func TestVectorNums(t *testing.T) {
|
||||||
|
if testing.Short() {
|
||||||
|
return
|
||||||
|
}
|
||||||
var v Vector
|
var v Vector
|
||||||
c := int(0)
|
c := int(0)
|
||||||
runtime.GC()
|
runtime.GC()
|
||||||
|
|
@ -51,6 +54,9 @@ func TestVectorNums(t *testing.T) {
|
||||||
|
|
||||||
|
|
||||||
func TestIntVectorNums(t *testing.T) {
|
func TestIntVectorNums(t *testing.T) {
|
||||||
|
if testing.Short() {
|
||||||
|
return
|
||||||
|
}
|
||||||
var v IntVector
|
var v IntVector
|
||||||
c := int(0)
|
c := int(0)
|
||||||
runtime.GC()
|
runtime.GC()
|
||||||
|
|
@ -69,6 +75,9 @@ func TestIntVectorNums(t *testing.T) {
|
||||||
|
|
||||||
|
|
||||||
func TestStringVectorNums(t *testing.T) {
|
func TestStringVectorNums(t *testing.T) {
|
||||||
|
if testing.Short() {
|
||||||
|
return
|
||||||
|
}
|
||||||
var v StringVector
|
var v StringVector
|
||||||
c := ""
|
c := ""
|
||||||
runtime.GC()
|
runtime.GC()
|
||||||
|
|
|
||||||
|
|
@ -297,6 +297,9 @@ func TestBaseMult(t *testing.T) {
|
||||||
if fmt.Sprintf("%x", x) != e.x || fmt.Sprintf("%x", y) != e.y {
|
if fmt.Sprintf("%x", x) != e.x || fmt.Sprintf("%x", y) != e.y {
|
||||||
t.Errorf("%d: bad output for k=%s: got (%x, %s), want (%s, %s)", i, e.k, x, y, e.x, e.y)
|
t.Errorf("%d: bad output for k=%s: got (%x, %s), want (%s, %s)", i, e.k, x, y, e.x, e.y)
|
||||||
}
|
}
|
||||||
|
if testing.Short() && i > 5 {
|
||||||
|
break
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,11 @@ func TestMarshalUnmarshal(t *testing.T) {
|
||||||
for i, iface := range tests {
|
for i, iface := range tests {
|
||||||
ty := reflect.NewValue(iface).Type()
|
ty := reflect.NewValue(iface).Type()
|
||||||
|
|
||||||
for j := 0; j < 100; j++ {
|
n := 100
|
||||||
|
if testing.Short() {
|
||||||
|
n = 5
|
||||||
|
}
|
||||||
|
for j := 0; j < n; j++ {
|
||||||
v, ok := quick.Value(ty, rand)
|
v, ok := quick.Value(ty, rand)
|
||||||
if !ok {
|
if !ok {
|
||||||
t.Errorf("#%d: failed to create value", i)
|
t.Errorf("#%d: failed to create value", i)
|
||||||
|
|
|
||||||
|
|
@ -39,9 +39,13 @@ type job struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
func runTests(t *testing.T, baseName string, tests []test) {
|
func runTests(t *testing.T, baseName string, tests []test) {
|
||||||
for i, test := range tests {
|
delta := 1
|
||||||
|
if testing.Short() {
|
||||||
|
delta = 16
|
||||||
|
}
|
||||||
|
for i := 0; i < len(tests); i += delta {
|
||||||
name := fmt.Sprintf("%s[%d]", baseName, i)
|
name := fmt.Sprintf("%s[%d]", baseName, i)
|
||||||
test.run(t, name)
|
tests[i].run(t, name)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -442,6 +442,9 @@ func BenchmarkSprintfPrefixedInt(b *testing.B) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestCountMallocs(t *testing.T) {
|
func TestCountMallocs(t *testing.T) {
|
||||||
|
if testing.Short() {
|
||||||
|
return
|
||||||
|
}
|
||||||
mallocs := 0 - runtime.MemStats.Mallocs
|
mallocs := 0 - runtime.MemStats.Mallocs
|
||||||
for i := 0; i < 100; i++ {
|
for i := 0; i < 100; i++ {
|
||||||
Sprintf("")
|
Sprintf("")
|
||||||
|
|
|
||||||
|
|
@ -156,12 +156,15 @@ var data = []entry{
|
||||||
|
|
||||||
|
|
||||||
func TestFiles(t *testing.T) {
|
func TestFiles(t *testing.T) {
|
||||||
for _, e := range data {
|
for i, e := range data {
|
||||||
source := filepath.Join(dataDir, e.source)
|
source := filepath.Join(dataDir, e.source)
|
||||||
golden := filepath.Join(dataDir, e.golden)
|
golden := filepath.Join(dataDir, e.golden)
|
||||||
check(t, source, golden, e.mode)
|
check(t, source, golden, e.mode)
|
||||||
// TODO(gri) check that golden is idempotent
|
// TODO(gri) check that golden is idempotent
|
||||||
//check(t, golden, golden, e.mode);
|
//check(t, golden, golden, e.mode)
|
||||||
|
if testing.Short() && i >= 3 {
|
||||||
|
break
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -34,6 +34,12 @@ var filenames = []string{
|
||||||
"basn6a16",
|
"basn6a16",
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var filenamesShort = []string{
|
||||||
|
"basn0g01",
|
||||||
|
"basn0g04-31",
|
||||||
|
"basn6a16",
|
||||||
|
}
|
||||||
|
|
||||||
func readPng(filename string) (image.Image, os.Error) {
|
func readPng(filename string) (image.Image, os.Error) {
|
||||||
f, err := os.Open(filename, os.O_RDONLY, 0444)
|
f, err := os.Open(filename, os.O_RDONLY, 0444)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
@ -157,7 +163,11 @@ func sng(w io.WriteCloser, filename string, png image.Image) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestReader(t *testing.T) {
|
func TestReader(t *testing.T) {
|
||||||
for _, fn := range filenames {
|
names := filenames
|
||||||
|
if testing.Short() {
|
||||||
|
names = filenamesShort
|
||||||
|
}
|
||||||
|
for _, fn := range names {
|
||||||
// Read the .png file.
|
// Read the .png file.
|
||||||
img, err := readPng("testdata/pngsuite/" + fn + ".png")
|
img, err := readPng("testdata/pngsuite/" + fn + ".png")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,11 @@ func diff(m0, m1 image.Image) os.Error {
|
||||||
|
|
||||||
func TestWriter(t *testing.T) {
|
func TestWriter(t *testing.T) {
|
||||||
// The filenames variable is declared in reader_test.go.
|
// The filenames variable is declared in reader_test.go.
|
||||||
for _, fn := range filenames {
|
names := filenames
|
||||||
|
if testing.Short() {
|
||||||
|
names = filenamesShort
|
||||||
|
}
|
||||||
|
for _, fn := range names {
|
||||||
qfn := "testdata/pngsuite/" + fn + ".png"
|
qfn := "testdata/pngsuite/" + fn + ".png"
|
||||||
// Read the image.
|
// Read the image.
|
||||||
m0, err := readPng(qfn)
|
m0, err := readPng(qfn)
|
||||||
|
|
|
||||||
|
|
@ -157,6 +157,7 @@ func TestUnmarshal(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestUnmarshalMarshal(t *testing.T) {
|
func TestUnmarshalMarshal(t *testing.T) {
|
||||||
|
initBig()
|
||||||
var v interface{}
|
var v interface{}
|
||||||
if err := Unmarshal(jsonBig, &v); err != nil {
|
if err := Unmarshal(jsonBig, &v); err != nil {
|
||||||
t.Fatalf("Unmarshal: %v", err)
|
t.Fatalf("Unmarshal: %v", err)
|
||||||
|
|
|
||||||
|
|
@ -85,6 +85,7 @@ func TestIndent(t *testing.T) {
|
||||||
// Tests of a large random structure.
|
// Tests of a large random structure.
|
||||||
|
|
||||||
func TestCompactBig(t *testing.T) {
|
func TestCompactBig(t *testing.T) {
|
||||||
|
initBig()
|
||||||
var buf bytes.Buffer
|
var buf bytes.Buffer
|
||||||
if err := Compact(&buf, jsonBig); err != nil {
|
if err := Compact(&buf, jsonBig); err != nil {
|
||||||
t.Fatalf("Compact: %v", err)
|
t.Fatalf("Compact: %v", err)
|
||||||
|
|
@ -98,6 +99,7 @@ func TestCompactBig(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestIndentBig(t *testing.T) {
|
func TestIndentBig(t *testing.T) {
|
||||||
|
initBig()
|
||||||
var buf bytes.Buffer
|
var buf bytes.Buffer
|
||||||
if err := Indent(&buf, jsonBig, "", "\t"); err != nil {
|
if err := Indent(&buf, jsonBig, "", "\t"); err != nil {
|
||||||
t.Fatalf("Indent1: %v", err)
|
t.Fatalf("Indent1: %v", err)
|
||||||
|
|
@ -135,6 +137,7 @@ func TestIndentBig(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestNextValueBig(t *testing.T) {
|
func TestNextValueBig(t *testing.T) {
|
||||||
|
initBig()
|
||||||
var scan scanner
|
var scan scanner
|
||||||
item, rest, err := nextValue(jsonBig, &scan)
|
item, rest, err := nextValue(jsonBig, &scan)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
@ -160,6 +163,7 @@ func TestNextValueBig(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkSkipValue(b *testing.B) {
|
func BenchmarkSkipValue(b *testing.B) {
|
||||||
|
initBig()
|
||||||
var scan scanner
|
var scan scanner
|
||||||
for i := 0; i < b.N; i++ {
|
for i := 0; i < b.N; i++ {
|
||||||
nextValue(jsonBig, &scan)
|
nextValue(jsonBig, &scan)
|
||||||
|
|
@ -191,12 +195,23 @@ func trim(b []byte) []byte {
|
||||||
|
|
||||||
var jsonBig []byte
|
var jsonBig []byte
|
||||||
|
|
||||||
func init() {
|
const (
|
||||||
b, err := Marshal(genValue(10000))
|
big = 10000
|
||||||
if err != nil {
|
small = 100
|
||||||
panic(err)
|
)
|
||||||
|
|
||||||
|
func initBig() {
|
||||||
|
n := big
|
||||||
|
if testing.Short() {
|
||||||
|
n = small
|
||||||
|
}
|
||||||
|
if len(jsonBig) != n {
|
||||||
|
b, err := Marshal(genValue(n))
|
||||||
|
if err != nil {
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
|
jsonBig = b
|
||||||
}
|
}
|
||||||
jsonBig = b
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func genValue(n int) interface{} {
|
func genValue(n int) interface{} {
|
||||||
|
|
|
||||||
|
|
@ -399,7 +399,7 @@ func TestImportFlowControl(t *testing.T) {
|
||||||
|
|
||||||
func testFlow(sendDone chan bool, ch <-chan int, N int, t *testing.T) {
|
func testFlow(sendDone chan bool, ch <-chan int, N int, t *testing.T) {
|
||||||
go func() {
|
go func() {
|
||||||
time.Sleep(1e9)
|
time.Sleep(0.5e9)
|
||||||
sendDone <- false
|
sendDone <- false
|
||||||
}()
|
}()
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,12 @@ func TestScanBackwards(t *testing.T) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const randCount = 100000
|
func randCount() int {
|
||||||
|
if testing.Short() {
|
||||||
|
return 100
|
||||||
|
}
|
||||||
|
return 100000
|
||||||
|
}
|
||||||
|
|
||||||
func TestRandomAccess(t *testing.T) {
|
func TestRandomAccess(t *testing.T) {
|
||||||
for _, s := range testStrings {
|
for _, s := range testStrings {
|
||||||
|
|
@ -58,7 +63,7 @@ func TestRandomAccess(t *testing.T) {
|
||||||
t.Errorf("%s: expected %d runes; got %d", s, len(runes), str.RuneCount())
|
t.Errorf("%s: expected %d runes; got %d", s, len(runes), str.RuneCount())
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
for j := 0; j < randCount; j++ {
|
for j := 0; j < randCount(); j++ {
|
||||||
i := rand.Intn(len(runes))
|
i := rand.Intn(len(runes))
|
||||||
expect := runes[i]
|
expect := runes[i]
|
||||||
got := str.At(i)
|
got := str.At(i)
|
||||||
|
|
@ -80,7 +85,7 @@ func TestRandomSliceAccess(t *testing.T) {
|
||||||
t.Errorf("%s: expected %d runes; got %d", s, len(runes), str.RuneCount())
|
t.Errorf("%s: expected %d runes; got %d", s, len(runes), str.RuneCount())
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
for k := 0; k < randCount; k++ {
|
for k := 0; k < randCount(); k++ {
|
||||||
i := rand.Intn(len(runes))
|
i := rand.Intn(len(runes))
|
||||||
j := rand.Intn(len(runes) + 1)
|
j := rand.Intn(len(runes) + 1)
|
||||||
if i > j { // include empty strings
|
if i > j { // include empty strings
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue