From 764c8333faf3c630cbff5e562bf8c22a1676265e Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 18 Apr 2020 18:48:30 +0100 Subject: Add __repr__ to program --- jq.pyx | 3 +++ tests/jq_tests.py | 7 +++++++ 2 files changed, 10 insertions(+) diff --git a/jq.pyx b/jq.pyx index a27e238..6d26470 100644 --- a/jq.pyx +++ b/jq.pyx @@ -131,6 +131,9 @@ cdef class _Program(object): program_with_input._bytes_input = string_input.encode("utf8") return program_with_input + def __repr__(self): + return "jq.compile({!r})".format(self._program_bytes.decode("utf8")) + cdef class _ProgramWithInput(object): cdef object _program_bytes diff --git a/tests/jq_tests.py b/tests/jq_tests.py index b6c3c38..7b82794 100644 --- a/tests/jq_tests.py +++ b/tests/jq_tests.py @@ -182,3 +182,10 @@ def unicode_strings_can_be_used_as_programs(): "Dragon‽", jq.compile('.+"‽"').input(text='"Dragon"').first() ) + + +@istest +def repr_of_compile_result_is_compilation_string(): + program = jq.compile(".") + repr_string = repr(program) + assert_equal("jq.compile({!r})".format("."), repr_string) -- cgit v1.2.3