Files
astro/formula/distance_test.go
T
b612 16c62a97d5 feat: 完善时标与天象几何计算并扩展输出接口
- 新增时标、ΔT 模型、质心时间与 UT1 支持
- 改进日月食、月掩、行星事件及路径边界计算
- 完善恒星三维自行与动态距离传播
- 扩展 SVG、GeoJSON、KML 输出与底层距离换算工具
- 整理中英文手册、示例资源及回归测试
2026-09-23 18:55:12 +08:00

20 lines
679 B
Go

package formula
import (
"math"
"testing"
)
// formula 只做对外转发,换算基元在 tools,这里只锁别名与转发不脱钩。
func TestDistanceDelegatesToTools(t *testing.T) {
assertFormulaClose(t, "1 ly in pc", Distance(1, DistanceLightYear), 0.306601393786, 1e-12)
assertFormulaClose(t, "1 pc identity", Distance(2.5, DistanceParsec), 2.5, 1e-15)
assertFormulaClose(t, "aliases agree", float64(DistanceParsec), 0, 1e-15)
if got := Distance(0, DistanceParsec); !math.IsNaN(got) {
t.Fatalf("Distance(0) = %v, want NaN", got)
}
if got := Distance(1, DistanceUnit(200)); !math.IsNaN(got) {
t.Fatalf("Distance(1, unknown unit) = %v, want NaN", got)
}
}