mirror of https://github.com/ethereum/go-ethereum
parent
6ceb253f74
commit
ee6531c5ff
@ -1,29 +0,0 @@ |
||||
package whisper |
||||
|
||||
import ( |
||||
"sort" |
||||
|
||||
"github.com/ethereum/go-ethereum/common" |
||||
) |
||||
|
||||
type sortedKeys struct { |
||||
k []int32 |
||||
} |
||||
|
||||
func (self *sortedKeys) Len() int { return len(self.k) } |
||||
func (self *sortedKeys) Less(i, j int) bool { return self.k[i] < self.k[j] } |
||||
func (self *sortedKeys) Swap(i, j int) { self.k[i], self.k[j] = self.k[j], self.k[i] } |
||||
|
||||
func sortKeys(m map[int32]common.Hash) []int32 { |
||||
sorted := new(sortedKeys) |
||||
sorted.k = make([]int32, len(m)) |
||||
i := 0 |
||||
for key, _ := range m { |
||||
sorted.k[i] = key |
||||
i++ |
||||
} |
||||
|
||||
sort.Sort(sorted) |
||||
|
||||
return sorted.k |
||||
} |
@ -1,23 +0,0 @@ |
||||
package whisper |
||||
|
||||
import ( |
||||
"testing" |
||||
|
||||
"github.com/ethereum/go-ethereum/common" |
||||
) |
||||
|
||||
func TestSorting(t *testing.T) { |
||||
m := map[int32]common.Hash{ |
||||
1: {1}, |
||||
3: {3}, |
||||
2: {2}, |
||||
5: {5}, |
||||
} |
||||
exp := []int32{1, 2, 3, 5} |
||||
res := sortKeys(m) |
||||
for i, k := range res { |
||||
if k != exp[i] { |
||||
t.Error(k, "failed. Expected", exp[i]) |
||||
} |
||||
} |
||||
} |
Loading…
Reference in new issue