import pandas as pd from leaderboard_transformer import format_runtime_column def test_runtime_strings_sort_numerically_in_ascending_order(): df = pd.DataFrame( { "Average Score": [0.8, 0.8, 0.8, 0.8, None], "Average Runtime": [1323.0, 372.0, 410.0, None, None], } ) formatted = format_runtime_column(df.copy(), "Average Runtime") runtimes = formatted["Average Runtime"].tolist() assert sorted(runtimes) == [ runtimes[1], runtimes[2], runtimes[0], runtimes[3], runtimes[4], ] def test_runtime_formatting_preserves_visible_labels(): df = pd.DataFrame( { "Average Score": [0.8, 0.8, None], "Average Runtime": [45.2, None, None], } ) formatted = format_runtime_column(df.copy(), "Average Runtime") values = formatted["Average Runtime"].tolist() assert values[0].endswith("45s") assert values[1].endswith("Missing") assert values[2].endswith("Not Submitted") assert 'display:none' in values[0]