<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On 10 November 2016 at 12:18, Maciej Borzecki <span dir="ltr">&lt;<a href="mailto:maciej.borzecki@rndity.com" target="_blank">maciej.borzecki@rndity.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div id="gmail-:37c" class="gmail-a3s gmail-aXjCH gmail-m1584e36ab07531d6">-    ts = sorted([ (tc.tcid, tc.tctag, tc.tcname, tc.tcclass, tc.tcmodule) for tc in get_testsuite_by(criteria, keyword) ])<br>
-<br>
-    print(&#39;%-4s\t%-20s\t%-60s\t%-<wbr>25s\t%-20s&#39; % (&#39;id&#39;, &#39;tag&#39;, &#39;name&#39;, &#39;class&#39;, &#39;module&#39;))<br>
+    def tc_key(t):<br>
+        if t[0] is None:<br>
+            return  (0,) + t[1:]<br>
+        return t<br>
+    # tcid may be None if no ID was assigned, in which case sorted() will throw<br>
+    # a TypeError as Python 3 does not allow comparison (&lt;,&lt;=,&gt;=,&gt;) of<br>
+    # heterogeneous types, handle this by using a custom key generator<br>
+    ts = sorted([ (tc.tcid, tc.tctag, tc.tcname, tc.tcclass, tc.tcmodule) \<br>
+                  for tc in get_testsuite_by(criteria, keyword) ], key=tc_key)</div></blockquote></div><br>Wouldn&#39;t a shorter (but untested!) form alternative be just?</div><div class="gmail_extra"><br></div><div class="gmail_extra"><span style="font-size:12.800000190734863px">-    ts = sorted([ (tc.tcid, tc.tctag, tc.tcname, tc.tcclass, tc.tcmodule) for tc in get_testsuite_by(criteria, keyword) ])</span><br style="font-size:12.800000190734863px"></div><div class="gmail_extra"><span style="font-size:12.800000190734863px">+    ts = sorted([ (tc.tcid or 0, tc.tctag, tc.tcname, tc.tcclass, tc.tcmodule) for tc in get_testsuite_by(criteria, keyword) ])</span><br style="font-size:12.800000190734863px"></div><div class="gmail_extra"><span style="font-size:12.800000190734863px"><br></span></div><div class="gmail_extra"><span style="font-size:12.800000190734863px">Ross</span></div></div>