From be9f433ae38d04a8a52d86df09b760dbbfc6cd3e Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Sun, 14 Jul 2019 11:43:29 -0400 Subject: Add profile sort option to test suite I use the nfl sort a lot to see what calling changes are happening between two versions in order to identify the offending code, so add it as a command line option. Change-Id: Ia1ab6dd98012a78298b325bb5c7c050fa9b767c2 --- lib/sqlalchemy/testing/profiling.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'lib/sqlalchemy/testing/profiling.py') diff --git a/lib/sqlalchemy/testing/profiling.py b/lib/sqlalchemy/testing/profiling.py index a75549027..bfc4997e1 100644 --- a/lib/sqlalchemy/testing/profiling.py +++ b/lib/sqlalchemy/testing/profiling.py @@ -65,7 +65,7 @@ class ProfileStatsFile(object): """ - def __init__(self, filename): + def __init__(self, filename, sort="cumulative"): self.force_write = ( config.options is not None and config.options.force_write_profiles ) @@ -77,6 +77,7 @@ class ProfileStatsFile(object): self.data = collections.defaultdict( lambda: collections.defaultdict(dict) ) + self.sort = sort self._read() if self.write: # rewrite for the case where features changed, @@ -277,7 +278,7 @@ def count_functions(variance=0.05): line_no, expected_count = expected print(("Pstats calls: %d Expected %s" % (callcount, expected_count))) - stats.sort_stats("cumulative") + stats.sort_stats(_profile_stats.sort) stats.print_stats() if _profile_stats.force_write: -- cgit v1.2.1