예제 #1
0
def test_line_spacing_error_handling():
    printer = Dummy()
    with assert_raises(ValueError):
      printer.line_spacing(99, divisor=44)
    with assert_raises(ValueError):
      printer.line_spacing(divisor=80, spacing=86)
    with assert_raises(ValueError):
      printer.line_spacing(divisor=360, spacing=256)
    with assert_raises(ValueError):
      printer.line_spacing(divisor=180, spacing=256)
예제 #2
0
def test_line_spacing_error_handling():
    printer = Dummy()
    with assert_raises(ValueError):
        printer.line_spacing(99, divisor=44)
    with assert_raises(ValueError):
        printer.line_spacing(divisor=80, spacing=86)
    with assert_raises(ValueError):
        printer.line_spacing(divisor=360, spacing=256)
    with assert_raises(ValueError):
        printer.line_spacing(divisor=180, spacing=256)
예제 #3
0
def test_line_spacing_code_gen():
    printer = Dummy()
    printer.line_spacing(10)
    assert printer.output == b'\x1b3\n'
예제 #4
0
def test_line_spacing_rest():
    printer = Dummy()
    printer.line_spacing()
    assert printer.output == b'\x1b2'
예제 #5
0
class DummyPrinter(object):
    def __init__(self):
        pass

    # TODO: find a way to clear out this set

    def print_ticket(self, order):
        self.d = Dummy()
        self.d.line_spacing(120)
        self.d.ln(1)

        self.d.set(align="center",
                   bold=True,
                   underline=2,
                   double_height=False,
                   double_width=False,
                   custom_size=True,
                   smooth=True,
                   width=2,
                   height=2,
                   invert=False,
                   density=8,
                   font='a')
        self.d.block_text(str(order.order_number) + ' ' + order.name + '\n',
                          font='a')
        self.d.ln(1)

        self.d.set(align="center",
                   bold=False,
                   underline=0,
                   double_height=False,
                   double_width=False,
                   custom_size=True,
                   smooth=True,
                   width=2,
                   height=2,
                   invert=False,
                   density=8,
                   font='a')
        self.d.block_text(order.order_type + '\n', columns=20, font='a')
        self.d.ln(1)

        self.d.text(order.formatted_number + '\n')
        self.d.text(order.date + '\n')
        self.d.text(order.time + '\n')
        self.d.text(' \n')

        self.d.set(align="left",
                   bold=True,
                   underline=0,
                   double_height=False,
                   double_width=False,
                   custom_size=True,
                   smooth=True,
                   width=2,
                   height=2,
                   invert=False,
                   density=8,
                   font='b')
        self.d.text('PICKUP TIME\n')

        self.d.set(align="left",
                   bold=False,
                   underline=0,
                   double_height=False,
                   double_width=False,
                   custom_size=True,
                   smooth=True,
                   width=2,
                   height=2,
                   invert=False,
                   density=8,
                   font='a')
        self.d.block_text(order.pickup_time + '\n', columns=20, font='a')

        self.d.ln(2)

        self.d.set(align="left",
                   bold=True,
                   underline=0,
                   double_height=False,
                   double_width=False,
                   custom_size=True,
                   smooth=True,
                   width=2,
                   height=2,
                   invert=False,
                   density=8,
                   font='b')
        self.d.text('ORDER\n')

        self.d.set(align="left",
                   bold=False,
                   underline=0,
                   double_height=False,
                   double_width=False,
                   custom_size=True,
                   smooth=True,
                   width=2,
                   height=2,
                   invert=False,
                   density=8,
                   font='a')
        self.d.block_text(order.order + '\n', columns=20, font='a')

        self.d.ln(2)

        if order.notes != '':
            self.d.set(align="left",
                       bold=True,
                       underline=0,
                       double_height=False,
                       double_width=False,
                       custom_size=True,
                       smooth=True,
                       width=2,
                       height=2,
                       invert=False,
                       density=8,
                       font='b')
            self.d.text('NOTES\n')

            self.d.set(align="left",
                       bold=False,
                       underline=0,
                       double_height=False,
                       double_width=False,
                       custom_size=True,
                       smooth=True,
                       width=2,
                       height=2,
                       invert=False,
                       density=8,
                       font='a')
            self.d.block_text(order.notes + '\n', columns=20, font='a')

        self.d.cut()

    def print_error_message(self, error_message):
        pass
예제 #6
0
def test_line_spacing_code_gen():
    printer = Dummy()
    printer.line_spacing(10)
    assert printer.output == b'\x1b3\n'
예제 #7
0
def test_line_spacing_rest():
    printer = Dummy()
    printer.line_spacing()
    assert printer.output == b'\x1b2'