import pandas as pd
df = pd.read_csv("normalized_outputs/unified_canonical.csv")

# Currency conversion: BrokerB EUR -> USD
assert round(df[df["Broker_ID"]=="BrokerB"]["Net_Profit_USD"].iloc[0], 1) == 432.8
# Currency conversion: BrokerC GBP -> USD
assert round(df[df["Broker_ID"]=="BrokerC"]["Net_Profit_USD"].iloc[0], 1) == 379.2
# Pip scaling: BrokerC Avg_Slippage_Points multiplied by 10
assert df[df["Broker_ID"]=="BrokerC"]["Avg_Slippage_Points"].iloc[0] > 10
# Symbol canonicalization: EURUSDm -> EURUSD, Dow Jones -> US30
assert set(df["Symbol_Canonical"]) == {"EURUSD", "US30"}
# Timestamps: BrokerA UTC+2 08:00 -> 06:00 UTC
assert pd.to_datetime(df[df["Broker_ID"]=="BrokerA"]["Open_Time_UTC"].iloc[0]).hour == 6
print("All assertions passed.")
