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 30 31 32 33 34 35 36
|
package complex
import (
"math"
"testing"
"testing/quick"
)
//go:generate go run asm.go -out complex.s -stubs stub.go
func TestReal(t *testing.T) {
expect := func(z complex128) float64 {
return real(z)
}
if err := quick.CheckEqual(Real, expect, nil); err != nil {
t.Fatal(err)
}
}
func TestImag(t *testing.T) {
expect := func(z complex128) float64 {
return imag(z)
}
if err := quick.CheckEqual(Imag, expect, nil); err != nil {
t.Fatal(err)
}
}
func TestNorm(t *testing.T) {
expect := func(z complex128) float64 {
return math.Sqrt(real(z)*real(z) + imag(z)*imag(z))
}
if err := quick.CheckEqual(Norm, expect, nil); err != nil {
t.Fatal(err)
}
}
|