summaryrefslogtreecommitdiff
path: root/sort/sort_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'sort/sort_test.go')
-rw-r--r--sort/sort_test.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/sort/sort_test.go b/sort/sort_test.go
index 9593cde..00f056a 100644
--- a/sort/sort_test.go
+++ b/sort/sort_test.go
@@ -33,6 +33,12 @@ func TestShellSort(t *testing.T) {
}
}
+func TestShuffleSort(t *testing.T) {
+ for i := 1; i <= maxLength; i *= 10 {
+ testShuffle(Shuffle, i, t)
+ }
+}
+
func BenchmarkInsertionSort(b *testing.B) {
for i := 1; i <= maxLength; i *= 10 {
benchmark(Insertion, i, b)
@@ -63,6 +69,17 @@ func test(sort sortAlgorithm, length int, t *testing.T) {
t.Run(fmt.Sprintf("%d", length), cb)
}
+func testShuffle(sort sortAlgorithm, length int, t *testing.T) {
+ cb := func(t *testing.T) {
+ t.Parallel()
+ a := sort(ds.SortedIntegers(length))
+ if Sorted(a) {
+ t.Errorf("Array sorted: %v", a)
+ }
+ }
+ t.Run(fmt.Sprintf("%d", length), cb)
+}
+
func benchmark(sort sortAlgorithm, length int, b *testing.B) {
cb := func(b *testing.B) {
a := makeIntegers(length, length)