Permalink
Browse files

Add test for the indentation fix.

  • Loading branch information...
1 parent 0a38ad0 commit 338217886caebbc34150b1c7575aa3ee845ed5cd @doerwalter doerwalter committed Mar 23, 2012
Showing with 49 additions and 0 deletions.
  1. +49 −0 IPython/lib/tests/test_pretty.py
@@ -0,0 +1,49 @@
+"""Tests for IPython.lib.pretty.
+"""
+#-----------------------------------------------------------------------------
+# Copyright (c) 2011, the IPython Development Team.
+#
+# Distributed under the terms of the Modified BSD License.
+#
+# The full license is in the file COPYING.txt, distributed with this software.
+#-----------------------------------------------------------------------------
+
+#-----------------------------------------------------------------------------
+# Imports
+#-----------------------------------------------------------------------------
+from __future__ import print_function
+
+# Third-party imports
+import nose.tools as nt
+
+# Our own imports
+from IPython.lib import pretty
+
+#-----------------------------------------------------------------------------
+# Classes and functions
+#-----------------------------------------------------------------------------
+
+class MyList(object):
+ def __init__(self, content):
+ self.content = content
+ def _repr_pretty_(self, p, cycle):
+ if cycle:
+ p.text("MyList(...)")
+ else:
+ with p.group(3, "MyList(", ")"):
+ for (i, child) in enumerate(self.content):
+ if i:
+ p.text(",")
+ p.breakable()
+ else:
+ p.breakable("")
+ p.pretty(child)
+
+
+def test_indentation():
+ """Test correct indentation in groups"""
+ count = 40
+ gotoutput = pretty.pretty(MyList(range(count)))
+ expectedoutput = "MyList(\n" + ",\n".join(" %d" % i for i in range(count)) + ")"
+
+ nt.assert_equals(gotoutput, expectedoutput)

0 comments on commit 3382178

Please sign in to comment.