38 lines
889 B
Go
38 lines
889 B
Go
|
package erasureencode
|
||
|
|
||
|
import (
|
||
|
"testing"
|
||
|
)
|
||
|
|
||
|
// example uses a tiny shard size for testing
|
||
|
// ex: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f, g] ShardSize(2) RS(3,2)
|
||
|
// c0: [01, 67, cd] [s0, s3, s6]
|
||
|
// c1: [23, 89, ef] [s1, s4, s7]
|
||
|
// c2: [45, ab, g0] [s2, s5, s8]
|
||
|
// read(7, 7)
|
||
|
// desired plan 0,3,1; 1,2,2; 2,2,2; 0,4,2 -> 7; 89; ab; cd
|
||
|
|
||
|
func TestMin(t *testing.T) {
|
||
|
expected := uint64(61)
|
||
|
|
||
|
actual := min(91, 111111, 9102, 61)
|
||
|
if actual != expected {
|
||
|
t.Fatalf(`Expected output to be %d, got %d`, actual, expected)
|
||
|
}
|
||
|
|
||
|
actual = min(61, 39421)
|
||
|
if actual != expected {
|
||
|
t.Fatalf(`Expected output to be %d, got %d`, actual, expected)
|
||
|
}
|
||
|
|
||
|
actual = min(61)
|
||
|
if actual != expected {
|
||
|
t.Fatalf(`Expected output to be %d, got %d`, actual, expected)
|
||
|
}
|
||
|
|
||
|
actual = min(1923042, 61, 122)
|
||
|
if actual != expected {
|
||
|
t.Fatalf(`Expected output to be %d, got %d`, actual, expected)
|
||
|
}
|
||
|
}
|