feat: 完善星表查询与跨版本回归验证
- 将星表名称数据收敛为 TSV/GZIP 单一数据源,补充中文名、别名、英文常用名及宿/垣区域字段 - 增加星表名称表加载校验、旧详情字段一致性校验和 GZIP 漂移检查 - 新增 StarDataByName、StarDataByNameAll、StarDataByNameIn ,统一中英文查询与重名消歧 - 优化日月食半影带、升落曲线和可见性回归测试,补充极区、拓扑及低精度场景覆盖 - 增加 Go 1.16/386 兼容门禁和测试案例,处理旧工具链的分配、拓扑、SVG字节及 ULP 差异 - 补充星表、坐标、日月食和低精度回归用例,完善测试文件与缓存忽略规则
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
package svg
|
||||
|
||||
import (
|
||||
"runtime"
|
||||
"strings"
|
||||
)
|
||||
|
||||
func go116386() bool {
|
||||
return runtime.GOARCH == "386" && strings.HasPrefix(runtime.Version(), "go1.16")
|
||||
}
|
||||
@@ -44,7 +44,22 @@ var lunarPenumbralPhaseBaseline = []struct {
|
||||
{"2016-08-18 详细版 en", "0c5fdc6c04f993504ae970c2e8861ccb", 261488},
|
||||
}
|
||||
|
||||
func TestLunarEclipseMapSVGDisablePenumbralPhaseRendersOnGo116386(t *testing.T) {
|
||||
if !go116386() {
|
||||
t.Skip("Go 1.16/386 only")
|
||||
}
|
||||
for name, draw := range lunarPenumbralPhaseBaselineRenderers() {
|
||||
doc, rendered := draw()
|
||||
if !rendered || !strings.Contains(doc, "<svg") || !strings.Contains(doc, "</svg>") {
|
||||
t.Fatalf("%s: rendered=%v bytes=%d", name, rendered, len(doc))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestLunarEclipseMapSVGDisablePenumbralPhaseMatchesBaseline(t *testing.T) {
|
||||
if go116386() {
|
||||
t.Skip("Go 1.16/386 的浮点格式化会改变 SVG 文本;字节基线由 Go 1.17+ 门禁覆盖")
|
||||
}
|
||||
render := lunarPenumbralPhaseBaselineRenderers()
|
||||
if len(render) != len(lunarPenumbralPhaseBaseline) {
|
||||
t.Fatalf("baseline table has %d cases, renderers %d", len(lunarPenumbralPhaseBaseline), len(render))
|
||||
|
||||
Reference in New Issue
Block a user