github.com/andy2046/gopie@v0.7.0/pkg/mergesort/mergesort_test.go (about)

     1  package mergesort_test
     2  
     3  import (
     4  	"testing"
     5  	"time"
     6  
     7  	"math/rand"
     8  
     9  	"github.com/andy2046/gopie/pkg/mergesort"
    10  )
    11  
    12  func TestMergesort(t *testing.T) {
    13  	size := 20
    14  	max := 999
    15  	s := make([]int, 0, size)
    16  	rand.Seed(time.Now().UTC().UnixNano())
    17  	for range make([]struct{}, size) {
    18  		s = append(s, rand.Intn(max))
    19  	}
    20  	t.Logf("before -> %v", s)
    21  	mergesort.Sort(s)
    22  	t.Logf("after -> %v", s)
    23  }
    24  
    25  func BenchmarkMergesort(b *testing.B) {
    26  	size := 1000000
    27  	s := make([]int, 0, size)
    28  	rand.Seed(time.Now().UTC().UnixNano())
    29  	for range make([]struct{}, size) {
    30  		s = append(s, rand.Int())
    31  	}
    32  	b.ResetTimer()
    33  	mergesort.Sort(s)
    34  }