1
0
mirror of https://github.com/golang/go synced 2024-11-20 09:04:44 -07:00

reflect: make map test independent of map iteration order.

This should fix the 386 builds.

R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/5298042
This commit is contained in:
David Symonds 2011-10-18 12:47:34 +11:00
parent fdc6376c00
commit 9049abbd2d

View File

@ -877,19 +877,20 @@ func TestMap(t *testing.T) {
t.Errorf("Len = %d, want %d", n, len(m))
}
keys := mv.MapKeys()
i := 0
newmap := MakeMap(mv.Type())
for k, v := range m {
// Check that returned Keys match keys in range.
// These aren't required to be in the same order,
// but they are in this implementation, which makes
// the test easier.
if i >= len(keys) {
t.Errorf("Missing key #%d %q", i, k)
} else if kv := keys[i]; kv.String() != k {
t.Errorf("Keys[%q] = %q, want %q", i, kv.String(), k)
// These aren't required to be in the same order.
seen := false
for _, kv := range keys {
if kv.String() == k {
seen = true
break
}
}
if !seen {
t.Errorf("Missing key %q", k)
}
i++
// Check that value lookup is correct.
vv := mv.MapIndex(ValueOf(k))