Files
goext/mathext/float_test.go
T
Mikescher 02d6894ec6
Build Docker and Deploy / Run goext test-suite (push) Successful in 1m34s
[🤖] Add Unit-Tests
2026-04-27 16:31:29 +02:00

58 lines
1.6 KiB
Go

package mathext
import "testing"
func TestFloat64EpsilonEqExactlyEqual(t *testing.T) {
if !Float64EpsilonEq(1.0, 1.0, 1e-9) {
t.Errorf("Float64EpsilonEq(1.0, 1.0, 1e-9) = false, want true")
}
}
func TestFloat64EpsilonEqWithinEpsilon(t *testing.T) {
if !Float64EpsilonEq(1.0, 1.0+1e-10, 1e-9) {
t.Errorf("Float64EpsilonEq(1.0, 1.0+1e-10, 1e-9) = false, want true")
}
}
func TestFloat64EpsilonEqOutsideEpsilon(t *testing.T) {
if Float64EpsilonEq(1.0, 1.1, 1e-9) {
t.Errorf("Float64EpsilonEq(1.0, 1.1, 1e-9) = true, want false")
}
}
func TestFloat64EpsilonEqAtEpsilonBoundary(t *testing.T) {
if !Float64EpsilonEq(0.0, 0.5, 0.5) {
t.Errorf("Float64EpsilonEq(0.0, 0.5, 0.5) = false, want true")
}
}
func TestFloat64EpsilonEqNegativeDifference(t *testing.T) {
if !Float64EpsilonEq(2.0, 2.0-1e-10, 1e-9) {
t.Errorf("Float64EpsilonEq(2.0, 2.0-1e-10, 1e-9) = false, want true")
}
}
func TestFloat64EpsilonEqLargeDifference(t *testing.T) {
if Float64EpsilonEq(0.0, 100.0, 0.5) {
t.Errorf("Float64EpsilonEq(0.0, 100.0, 0.5) = true, want false")
}
}
func TestFloat64EpsilonEqNegativeNumbers(t *testing.T) {
if !Float64EpsilonEq(-1.0, -1.0+1e-10, 1e-9) {
t.Errorf("Float64EpsilonEq(-1.0, -1.0+1e-10, 1e-9) = false, want true")
}
}
func TestFloat64EpsilonEqZeroEpsilonEqualValues(t *testing.T) {
if !Float64EpsilonEq(3.14, 3.14, 0.0) {
t.Errorf("Float64EpsilonEq(3.14, 3.14, 0.0) = false, want true")
}
}
func TestFloat64EpsilonEqZeroEpsilonDifferentValues(t *testing.T) {
if Float64EpsilonEq(3.14, 3.15, 0.0) {
t.Errorf("Float64EpsilonEq(3.14, 3.15, 0.0) = true, want false")
}
}