SHA256
34 lines
970 B
Python
34 lines
970 B
Python
"""验证 daily.py 中日线行转换逻辑。"""
|
|
|
|
import pandas as pd
|
|
|
|
from src.fetchers.daily import _ak_hist_to_rows
|
|
|
|
|
|
def test_ak_hist_to_rows_converts_dataframe():
|
|
"""日线表应转换成可入库的日线行。"""
|
|
hist_df = pd.DataFrame(
|
|
{
|
|
"日期": ["2026-05-17", "2026-05-18"],
|
|
"开盘": [10.0, 10.2],
|
|
"收盘": [10.3, 10.4],
|
|
"最高": [10.5, 10.6],
|
|
"最低": [9.9, 10.0],
|
|
"成交量": [100, 120],
|
|
"成交额": [1030, 1248],
|
|
"振幅": [5.8, 5.9],
|
|
"涨跌幅": [3.0, 0.97],
|
|
"涨跌额": [0.3, 0.1],
|
|
"换手率": [1.0, 1.2],
|
|
}
|
|
)
|
|
|
|
rows = _ak_hist_to_rows("600000", hist_df)
|
|
|
|
assert len(rows) == 2
|
|
assert rows[0]["code"] == "600000"
|
|
assert rows[0]["date"] == "2026-05-17"
|
|
assert rows[0]["open"] == 10.0
|
|
assert rows[0]["turnover"] == 1030
|
|
assert rows[1]["date"] == "2026-05-18"
|