예제 #1
0
  def __str__(self):
    single_line = "{}({{{}}})".format(
        type(self).__name__,
        ", ".join("{!r}: {!r}".format(k, v) for k, v in self.items()))
    if len(single_line) <= 80:
      return single_line

    return "{}({{\n{},\n}})".format(
        type(self).__name__,
        utils.indent(2, ",\n".join(_repr_item(k, v) for k, v in self.items())))
예제 #2
0
 def test_indent(self):
     self.assertEqual(lines("  foo", "  bar"),
                      utils.indent(2, lines("foo", "bar")))
예제 #3
0
def _repr_item(k, v):
    k = repr(k) + ": "
    v = pprint.pformat(v)
    return k + utils.indent(len(k), v).lstrip()