1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
package dict
import (
"testing"
"github.com/mmcloughlin/addchain/alg"
"github.com/mmcloughlin/addchain/alg/algtest"
"github.com/mmcloughlin/addchain/alg/contfrac"
)
func TestAlgorithms(t *testing.T) {
as := []alg.ChainAlgorithm{
// Dictionary-based algorithms.
NewAlgorithm(
SlidingWindow{K: 4},
contfrac.NewAlgorithm(contfrac.DichotomicStrategy{}),
),
NewAlgorithm(
FixedWindow{K: 7},
contfrac.NewAlgorithm(contfrac.BinaryStrategy{}),
),
// Runs algorithm.
NewRunsAlgorithm(contfrac.NewAlgorithm(contfrac.DichotomicStrategy{})),
}
for _, a := range as {
t.Run(a.String(), algtest.ChainAlgorithmSuite(a))
}
}
|