公众授权版:normal · 1000 次 · 有效期至 2026-12-31
副本编号 LY-20261007-AC63(水印指纹已嵌入) 含 README、.gitignore;排除 .DS_Store / __pycache__ / .pytest_cache
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
# 黄金样本:历史时区与夏令时 —— 设计文档 §6.1 C 组
|
||||
# utc_offset_min = 钟表时间 − UTC(分钟),用于验证 UTC 解算本身;
|
||||
# source 区分偏移来源:"historical_table"(自维护历史表)或 "zoneinfo"。
|
||||
|
||||
- name: 1988年夏_北京夏令时
|
||||
place: 北京市
|
||||
birth: "1988-07-15 10:00"
|
||||
expect:
|
||||
tz_used: "Asia/Shanghai"
|
||||
is_dst: true
|
||||
dst_offset_min: 60
|
||||
utc_offset_min: 540 # UTC+9(夏令时),UTC = 当日 01:00
|
||||
|
||||
- name: 1935年_兰州民国陇蜀时区
|
||||
place: 甘肃省兰州市
|
||||
birth: "1935-03-20 10:00"
|
||||
expect:
|
||||
source: "historical_table" # tzdata 的 Asia/Chongqing 1935 段为 +8,不符民国陇蜀时区
|
||||
utc_offset_min: 420 # 陇蜀时区中央经线 105°E → UTC+7
|
||||
is_dst: false
|
||||
|
||||
- name: 1900年_北京_zoneinfo兜底
|
||||
place: 北京市
|
||||
birth: "1900-06-15 10:00"
|
||||
expect:
|
||||
source: "zoneinfo"
|
||||
tz_used: "Asia/Shanghai"
|
||||
is_dst: false
|
||||
|
||||
- name: 1990年_乌鲁木齐_不执行夏令时
|
||||
place: 新疆乌鲁木齐市
|
||||
birth: "1990-06-15 12:00"
|
||||
expect:
|
||||
is_dst: false
|
||||
utc_offset_min: 480 # UTC = 钟表时间 − 8h(新疆不按夏令时拨快)
|
||||
@@ -0,0 +1,44 @@
|
||||
# 黄金样本:经度修正梯度 —— lon_correction_min = (lon − 120) × 4 分钟
|
||||
# 覆盖 120°E 附近(≈0)、西部大负修正、东部正修正;lon 为城市表应有值(±0.1° 级,见 §4.1)。
|
||||
|
||||
- name: 上海_几乎零修正
|
||||
place: 上海市
|
||||
lon: 121.47
|
||||
birth: "1990-06-15 12:00"
|
||||
expect_lon_correction_min: 5.88
|
||||
tolerance: 0.1
|
||||
|
||||
- name: 杭州_东经120度附近
|
||||
place: 浙江省杭州市
|
||||
lon: 120.16
|
||||
birth: "1990-06-15 12:00"
|
||||
expect_lon_correction_min: 0.64
|
||||
tolerance: 0.1
|
||||
|
||||
- name: 喀什_最西_负修正近三小时
|
||||
place: 新疆喀什市
|
||||
lon: 75.99
|
||||
birth: "1990-06-15 12:00"
|
||||
expect_lon_correction_min: -176.04 # ≈ −176 分
|
||||
tolerance: 0.1
|
||||
|
||||
- name: 哈尔滨_最东_正修正
|
||||
place: 黑龙江省哈尔滨市
|
||||
lon: 126.63
|
||||
birth: "1990-06-15 12:00"
|
||||
expect_lon_correction_min: 26.52 # ≈ +26.5 分
|
||||
tolerance: 0.1
|
||||
|
||||
- name: 成都_负修正过半时辰
|
||||
place: 四川省成都市
|
||||
lon: 104.07
|
||||
birth: "1990-06-15 12:00"
|
||||
expect_lon_correction_min: -63.72
|
||||
tolerance: 0.1
|
||||
|
||||
- name: 乌鲁木齐_负修正超两时辰
|
||||
place: 新疆乌鲁木齐市
|
||||
lon: 87.62
|
||||
birth: "1990-06-15 12:00"
|
||||
expect_lon_correction_min: -129.52
|
||||
tolerance: 0.1
|
||||
@@ -0,0 +1,46 @@
|
||||
# 黄金样本:真太阳时边界(A 组)+ 晚子时日界(B 组)—— 设计文档 §6.1
|
||||
#
|
||||
# 经度修正公式:(lon − 120°E) × 4 分钟/度
|
||||
# A 组断言 expect.lon_correction_min(容差 tolerance);
|
||||
# 带 expect.true_solar_time 的条目另按 true_solar_time_tolerance_min 宽松比对;
|
||||
# B 组断言全链条(geo → tz → solar → day_boundary)输出的 expect.is_late_zi。
|
||||
|
||||
# ---------- A 组:经度修正 ----------
|
||||
- name: 乌鲁木齐_北京时间上午_必然错位
|
||||
place: 新疆乌鲁木齐市
|
||||
birth: "1990-06-15 08:00"
|
||||
tolerance: 0.1
|
||||
expect:
|
||||
lon_correction_min: -129.5 # (87.62 − 120) × 4 = −129.52
|
||||
true_solar_time: "1990-06-15 05:52" # 文档给定(约值)
|
||||
true_solar_time_tolerance_min: 3
|
||||
|
||||
- name: 成都_经度修正过半
|
||||
place: 四川省成都市
|
||||
birth: "1990-06-15 12:00"
|
||||
tolerance: 0.1
|
||||
expect:
|
||||
lon_correction_min: -63.7 # (104.07 − 120) × 4 = −63.72
|
||||
|
||||
- name: 上海_几乎无修正
|
||||
place: 上海市
|
||||
birth: "1990-06-15 12:00"
|
||||
tolerance: 0.1
|
||||
expect:
|
||||
lon_correction_min: 5.9 # (121.47 − 120) × 4 = +5.88
|
||||
|
||||
# ---------- B 组:晚子时边界(子初换日@真太阳时 23:00) ----------
|
||||
# 北京 lon=116.41,经度修正约 −14.4 分;1 月 15 日均时差约 −9.5 分。
|
||||
# 注意:不能用 6–9 月的日期——1990 年北京处于夏令时(钟表已拨快 1 小时),
|
||||
# 会先把钟表读数拉回 22 点,破坏样本意图。1 月无夏令时。
|
||||
- name: 北京_钟表23:30_真太阳时23点_晚子时
|
||||
place: 北京市
|
||||
birth: "1990-01-15 23:30"
|
||||
expect:
|
||||
is_late_zi: true # 真太阳时 ≈ 23:06 → 归次日
|
||||
|
||||
- name: 北京_钟表22:30_真太阳时22点_非晚子时
|
||||
place: 北京市
|
||||
birth: "1990-01-15 22:30"
|
||||
expect:
|
||||
is_late_zi: false # 真太阳时 ≈ 22:06 → 当日
|
||||
Reference in New Issue
Block a user