import polars as pl from smithy import smith_set def test_condorcet(): df = pl.DataFrame({ 'A': [1, 1, 2, 1], 'B': [2, 2, 1, 2], 'C': [3, 3, 3, 3], }) assert smith_set(df) == ['A'] def test_rockpprscrcycle(): df = pl.DataFrame({ 'A': [1, 2, 3], 'B': [2, 3, 1], 'C': [3, 1, 2], }) assert smith_set(df) == ['A', 'B', 'C'] def test_abpair(): df = pl.DataFrame({ "A": [1, 2, 1, 3], "B": [2, 1, 3, 1], "C": [3, 3, 2, 2] }) assert smith_set(df) == ['A', 'B'] def test_fourcycle(): df = pl.DataFrame({ "A": [1,2,3,4], "B": [2,3,4,1], "C": [3,4,1,2], "D": [4,1,2,3], }) assert smith_set(df) == ['A', 'B', 'C', 'D']