From 91ae056ed37ab4ad62d9c685af29c43424004f80 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner <inform@tiker.net> Date: Fri, 22 Nov 2013 10:46:13 -0600 Subject: [PATCH] Py3 test fixes --- pytools/datatable.py | 13 +++++-------- test/test_data_table.py | 4 ++-- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/pytools/datatable.py b/pytools/datatable.py index 5df1e0c..8019f30 100644 --- a/pytools/datatable.py +++ b/pytools/datatable.py @@ -123,15 +123,12 @@ class DataTable: def sort(self, columns, reverse=False): col_indices = [self.column_indices[col] for col in columns] - def mycmp(row_a, row_b): - for col_index in col_indices: - this_result = cmp(row_a[col_index], row_b[col_index]) - if this_result: - return this_result + def mykey(row): + return tuple( + row[col_index] + for col_index in col_indices) - return 0 - - self.data.sort(mycmp, reverse=reverse) + self.data.sort(reverse=reverse, key=mykey) def aggregated(self, groupby, agg_column, aggregate_func): gb_indices = [self.column_indices[col] for col in groupby] diff --git a/test/test_data_table.py b/test/test_data_table.py index 0b3343e..2e6fa5c 100644 --- a/test/test_data_table.py +++ b/test/test_data_table.py @@ -73,8 +73,8 @@ def test_aggregate_2(): from pytools.datatable import DataTable tbl = DataTable(["step", "value"], zip(range(20), range(20))) agg = tbl.aggregated(["step"], "value", max) - assert agg.column_data("step") == range(20) - assert agg.column_data("value") == range(20) + assert agg.column_data("step") == list(range(20)) + assert agg.column_data("value") == list(range(20)) def test_join(): -- GitLab