[MIG] printer_zpl2: Migration to 13.0

This commit is contained in:
Rod Schouteden
2019-09-30 15:35:28 +02:00
committed by mreficent
parent fe3208cd64
commit 4291cca6ca
23 changed files with 2074 additions and 1345 deletions

View File

@@ -3,30 +3,35 @@
from odoo.tests.common import TransactionCase
model = 'odoo.addons.base_report_to_printer.models.printing_server'
model = "odoo.addons.base_report_to_printer.models.printing_server"
class TestWizardPrintRecordLabel(TransactionCase):
def setUp(self):
super(TestWizardPrintRecordLabel, self).setUp()
self.Model = self.env['wizard.print.record.label']
self.server = self.env['printing.server'].create({})
self.printer = self.env['printing.printer'].create({
'name': 'Printer',
'server_id': self.server.id,
'system_name': 'Sys Name',
'default': True,
'status': 'unknown',
'status_message': 'Msg',
'model': 'res.users',
'location': 'Location',
'uri': 'URI',
})
self.label = self.env['printing.label.zpl2'].create({
'name': 'ZPL II Label',
'model_id': self.env.ref(
'base_report_to_printer.model_printing_printer').id,
})
self.Model = self.env["wizard.print.record.label"]
self.server = self.env["printing.server"].create({})
self.printer = self.env["printing.printer"].create(
{
"name": "Printer",
"server_id": self.server.id,
"system_name": "Sys Name",
"default": True,
"status": "unknown",
"status_message": "Msg",
"model": "res.users",
"location": "Location",
"uri": "URI",
}
)
self.label = self.env["printing.label.zpl2"].create(
{
"name": "ZPL II Label",
"model_id": self.env.ref(
"base_report_to_printer.model_printing_printer"
).id,
}
)
def test_create_action(self):
""" Check the creation of action """

File diff suppressed because it is too large Load Diff

View File

@@ -4,30 +4,35 @@ import mock
from odoo.tests.common import TransactionCase
model = 'odoo.addons.base_report_to_printer.models.printing_server'
model = "odoo.addons.base_report_to_printer.models.printing_server"
class TestWizardPrintRecordLabel(TransactionCase):
def setUp(self):
super(TestWizardPrintRecordLabel, self).setUp()
self.Model = self.env['wizard.print.record.label']
self.server = self.env['printing.server'].create({})
self.printer = self.env['printing.printer'].create({
'name': 'Printer',
'server_id': self.server.id,
'system_name': 'Sys Name',
'default': True,
'status': 'unknown',
'status_message': 'Msg',
'model': 'res.users',
'location': 'Location',
'uri': 'URI',
})
self.label = self.env['printing.label.zpl2'].create({
'name': 'ZPL II Label',
'model_id': self.env.ref(
'base_report_to_printer.model_printing_printer').id,
})
self.Model = self.env["wizard.print.record.label"]
self.server = self.env["printing.server"].create({})
self.printer = self.env["printing.printer"].create(
{
"name": "Printer",
"server_id": self.server.id,
"system_name": "Sys Name",
"default": True,
"status": "unknown",
"status_message": "Msg",
"model": "res.users",
"location": "Location",
"uri": "URI",
}
)
self.label = self.env["printing.label.zpl2"].create(
{
"name": "ZPL II Label",
"model_id": self.env.ref(
"base_report_to_printer.model_printing_printer"
).id,
}
)
def test_get_record(self):
""" Check if return a record """
@@ -35,12 +40,12 @@ class TestWizardPrintRecordLabel(TransactionCase):
res = self.label._get_record()
Obj = self.env[self.label.model_id.model]
record = Obj.search([('id', '=', self.label.record_id)], limit=1)
record = Obj.search([("id", "=", self.label.record_id)], limit=1)
if not record:
record = Obj.search([], limit=1, order='id desc')
record = Obj.search([], limit=1, order="id desc")
self.assertEqual(res, record)
@mock.patch('%s.cups' % model)
@mock.patch("%s.cups" % model)
def test_print_label_test(self, cups):
""" Check if print test """
self.label.test_print_mode = True
@@ -53,18 +58,17 @@ class TestWizardPrintRecordLabel(TransactionCase):
""" Check if not execute next if not in this mode """
self.label.test_labelary_mode = False
self.label._on_change_labelary()
self.assertIs(self.label.labelary_image, None)
self.assertIs(self.label.labelary_image, False)
def test_emulation_with_bad_header(self):
""" Check if bad header """
self.label.test_labelary_mode = True
self.label.labelary_width = 80
self.label.labelary_dpmm = '8dpmm'
self.label.labelary_dpmm = "8dpmm"
self.label.labelary_height = 10000000
self.env['printing.label.zpl2.component'].create({
'name': 'ZPL II Label',
'label_id': self.label.id,
'data': '"Test"'})
self.env["printing.label.zpl2.component"].create(
{"name": "ZPL II Label", "label_id": self.label.id, "data": '"Test"'}
)
self.label._on_change_labelary()
self.assertFalse(self.label.labelary_image)
@@ -73,24 +77,22 @@ class TestWizardPrintRecordLabel(TransactionCase):
self.label.test_labelary_mode = True
self.label.labelary_width = 80
self.label.labelary_height = 30
self.label.labelary_dpmm = '8dpmm'
component = self.env['printing.label.zpl2.component'].create({
'name': 'ZPL II Label',
'label_id': self.label.id,
'data': 'wrong_data'})
self.label.labelary_dpmm = "8dpmm"
component = self.env["printing.label.zpl2.component"].create(
{"name": "ZPL II Label", "label_id": self.label.id, "data": "wrong_data"}
)
self.label._on_change_labelary()
component.unlink()
self.assertIs(self.label.labelary_image, None)
self.assertIs(self.label.labelary_image, False)
def test_emulation_with_good_data(self):
""" Check if ok """
self.label.test_labelary_mode = True
self.label.labelary_width = 80
self.label.labelary_height = 30
self.label.labelary_dpmm = '8dpmm'
self.env['printing.label.zpl2.component'].create({
'name': 'ZPL II Label',
'label_id': self.label.id,
'data': '"good_data"', })
self.label.labelary_dpmm = "8dpmm"
self.env["printing.label.zpl2.component"].create(
{"name": "ZPL II Label", "label_id": self.label.id, "data": '"good_data"'}
)
self.label._on_change_labelary()
self.assertTrue(self.label.labelary_image)

View File

@@ -7,92 +7,89 @@ from odoo.tests.common import TransactionCase
class TestWizardImportZpl2(TransactionCase):
def setUp(self):
super(TestWizardImportZpl2, self).setUp()
self.Model = self.env['wizard.print.record.label']
self.server = self.env['printing.server'].create({})
self.printer = self.env['printing.printer'].create({
'name': 'Printer',
'server_id': self.server.id,
'system_name': 'Sys Name',
'default': True,
'status': 'unknown',
'status_message': 'Msg',
'model': 'res.users',
'location': 'Location',
'uri': 'URI',
})
self.label = self.env['printing.label.zpl2'].create({
'name': 'ZPL II Label',
'model_id': self.env.ref(
'base_report_to_printer.model_printing_printer').id,
})
self.Model = self.env["wizard.print.record.label"]
self.server = self.env["printing.server"].create({})
self.printer = self.env["printing.printer"].create(
{
"name": "Printer",
"server_id": self.server.id,
"system_name": "Sys Name",
"default": True,
"status": "unknown",
"status_message": "Msg",
"model": "res.users",
"location": "Location",
"uri": "URI",
}
)
self.label = self.env["printing.label.zpl2"].create(
{
"name": "ZPL II Label",
"model_id": self.env.ref(
"base_report_to_printer.model_printing_printer"
).id,
}
)
def test_open_wizard(self):
""" open wizard from label"""
res = self.label.import_zpl2()
self.assertEqual(
res.get('context').get('default_label_id'),
self.label.id)
self.assertEqual(res.get("context").get("default_label_id"), self.label.id)
def test_wizard_import_zpl2(self):
""" Import ZPL2 from wizard """
zpl_data = ("^XA\n"
"^CI28\n"
"^LH0,0\n"
"^CF0\n"
"^CFA,10\n"
"^CFB,10,10\n"
"^FO10,10^A0N,30,30^FDTEXT^FS\n"
"^BY2,3.0^FO600,60^BCN,30,N,N,N"
"^FDAJFGJAGJVJVHK^FS\n"
"^FO10,40^A0N,20,40^FB150,2,1,J,0^FDTEXT BLOCK^FS\n"
"^FO300,10^GC100,3,B^FS\n"
"^FO10,200^GB200,200,100,B,0^FS\n"
"^FO10,60^GFA,16.0,16.0,2.0,"
"b'FFC0FFC0FFC0FFC0FFC0FFC0FFC0FFC0'^FS\n"
"^FO10,200^GB300,100,6,W,0^FS\n"
"^BY2,3.0^FO300,10^B1N,N,30,N,N^FD678987656789^FS\n"
"^BY2,3.0^FO300,70^B2N,30,Y,Y,N^FD567890987768^FS\n"
"^BY2,3.0^FO300,120^B3N,N,30,N,N^FD98765456787656^FS\n"
"^BY2,3.0^FO300,200^BQN,2,5,Q,7"
"^FDMM,A876567897656787658654645678^FS\n"
"^BY2,3.0^FO400,250^BER,40,Y,Y^FD9876789987654567^FS\n"
"^BY2,3.0^FO350,250^B7N,20,0,0,0,N^FD8765678987656789^FS\n"
"^BY2,3.0^FO700,10^B9N,20,N,N,N^FD87657890987654^FS\n"
"^BY2,3.0^FO600,200^B4N,50,N^FD7654567898765678^FS\n"
"^BY2,3.0^FO600,300^BEN,50,Y,Y^FD987654567890876567^FS\n"
"^FO300,300^AGI,50,50^FR^FDINVERTED^FS\n"
"^BY2,3.0^FO700,200^B8,50,N,N^FD987609876567^FS\n"
"^JUR\n"
"^XZ")
zpl_data = (
"^XA\n"
"^CI28\n"
"^LH0,0\n"
"^CF0\n"
"^CFA,10\n"
"^CFB,10,10\n"
"^FO10,10^A0N,30,30^FDTEXT^FS\n"
"^BY2,3.0^FO600,60^BCN,30,N,N,N"
"^FDAJFGJAGJVJVHK^FS\n"
"^FO10,40^A0N,20,40^FB150,2,1,J,0^FDTEXT BLOCK^FS\n"
"^FO300,10^GC100,3,B^FS\n"
"^FO10,200^GB200,200,100,B,0^FS\n"
"^FO10,60^GFA,16.0,16.0,2.0,"
"b'FFC0FFC0FFC0FFC0FFC0FFC0FFC0FFC0'^FS\n"
"^FO10,200^GB300,100,6,W,0^FS\n"
"^BY2,3.0^FO300,10^B1N,N,30,N,N^FD678987656789^FS\n"
"^BY2,3.0^FO300,70^B2N,30,Y,Y,N^FD567890987768^FS\n"
"^BY2,3.0^FO300,120^B3N,N,30,N,N^FD98765456787656^FS\n"
"^BY2,3.0^FO300,200^BQN,2,5,Q,7"
"^FDMM,A876567897656787658654645678^FS\n"
"^BY2,3.0^FO400,250^BER,40,Y,Y^FD9876789987654567^FS\n"
"^BY2,3.0^FO350,250^B7N,20,0,0,0,N^FD8765678987656789^FS\n"
"^BY2,3.0^FO700,10^B9N,20,N,N,N^FD87657890987654^FS\n"
"^BY2,3.0^FO600,200^B4N,50,N^FD7654567898765678^FS\n"
"^BY2,3.0^FO600,300^BEN,50,Y,Y^FD987654567890876567^FS\n"
"^FO300,300^AGI,50,50^FR^FDINVERTED^FS\n"
"^BY2,3.0^FO700,200^B8,50,N,N^FD987609876567^FS\n"
"^JUR\n"
"^XZ"
)
vals = {'label_id': self.label.id,
'delete_component': True,
'data': zpl_data}
wizard = self.env['wizard.import.zpl2'].create(vals)
vals = {"label_id": self.label.id, "delete_component": True, "data": zpl_data}
wizard = self.env["wizard.import.zpl2"].create(vals)
wizard.import_zpl2()
self.assertEqual(
18,
len(self.label.component_ids))
self.assertEqual(18, len(self.label.component_ids))
def test_wizard_import_zpl2_add(self):
""" Import ZPL2 from wizard ADD"""
self.env['printing.label.zpl2.component'].create({
'name': 'ZPL II Label',
'label_id': self.label.id,
'data': '"data"',
'sequence': 10})
zpl_data = ("^XA\n"
"^CI28\n"
"^LH0,0\n"
"^FO10,10^A0N,30,30^FDTEXT^FS\n"
"^JUR\n"
"^XZ")
self.env["printing.label.zpl2.component"].create(
{
"name": "ZPL II Label",
"label_id": self.label.id,
"data": '"data"',
"sequence": 10,
}
)
zpl_data = (
"^XA\n" "^CI28\n" "^LH0,0\n" "^FO10,10^A0N,30,30^FDTEXT^FS\n" "^JUR\n" "^XZ"
)
vals = {'label_id': self.label.id,
'delete_component': False,
'data': zpl_data}
wizard = self.env['wizard.import.zpl2'].create(vals)
vals = {"label_id": self.label.id, "delete_component": False, "data": zpl_data}
wizard = self.env["wizard.import.zpl2"].create(vals)
wizard.import_zpl2()
self.assertEqual(
2,
len(self.label.component_ids))
self.assertEqual(2, len(self.label.component_ids))

View File

@@ -5,37 +5,41 @@ import mock
from odoo.tests.common import TransactionCase
model = 'odoo.addons.base_report_to_printer.models.printing_server'
model = "odoo.addons.base_report_to_printer.models.printing_server"
class TestWizardPrintRecordLabel(TransactionCase):
def setUp(self):
super(TestWizardPrintRecordLabel, self).setUp()
self.Model = self.env['wizard.print.record.label']
self.server = self.env['printing.server'].create({})
self.printer = self.env['printing.printer'].create({
'name': 'Printer',
'server_id': self.server.id,
'system_name': 'Sys Name',
'default': True,
'status': 'unknown',
'status_message': 'Msg',
'model': 'res.users',
'location': 'Location',
'uri': 'URI',
})
self.label = self.env['printing.label.zpl2'].create({
'name': 'ZPL II Label',
'model_id': self.env.ref(
'base_report_to_printer.model_printing_printer').id,
})
self.Model = self.env["wizard.print.record.label"]
self.server = self.env["printing.server"].create({})
self.printer = self.env["printing.printer"].create(
{
"name": "Printer",
"server_id": self.server.id,
"system_name": "Sys Name",
"default": True,
"status": "unknown",
"status_message": "Msg",
"model": "res.users",
"location": "Location",
"uri": "URI",
}
)
self.label = self.env["printing.label.zpl2"].create(
{
"name": "ZPL II Label",
"model_id": self.env.ref(
"base_report_to_printer.model_printing_printer"
).id,
}
)
@mock.patch('%s.cups' % model)
@mock.patch("%s.cups" % model)
def test_print_record_label(self, cups):
""" Check that printing a label using the generic wizard works """
wizard_obj = self.Model.with_context(
active_model='printing.printer',
active_model="printing.printer",
active_id=self.printer.id,
active_ids=[self.printer.id],
printer_zpl2_id=self.printer.id,
@@ -50,41 +54,48 @@ class TestWizardPrintRecordLabel(TransactionCase):
""" Check that printer_id and label_id are not automatically filled
when there are multiple possible values
"""
self.env['printing.printer'].create({
'name': 'Other_Printer',
'server_id': self.server.id,
'system_name': 'Sys Name',
'default': True,
'status': 'unknown',
'status_message': 'Msg',
'model': 'res.users',
'location': 'Location',
'uri': 'URI',
})
self.env['printing.label.zpl2'].create({
'name': 'Other ZPL II Label',
'model_id': self.env.ref(
'base_report_to_printer.model_printing_printer').id,
})
self.env["printing.printer"].create(
{
"name": "Other_Printer",
"server_id": self.server.id,
"system_name": "Sys Name",
"default": True,
"status": "unknown",
"status_message": "Msg",
"model": "res.users",
"location": "Location",
"uri": "URI",
}
)
self.env["printing.label.zpl2"].create(
{
"name": "Other ZPL II Label",
"model_id": self.env.ref(
"base_report_to_printer.model_printing_printer"
).id,
}
)
wizard_obj = self.Model.with_context(
active_model='printing.printer',
active_model="printing.printer",
active_id=self.printer.id,
active_ids=[self.printer.id],
)
values = wizard_obj.default_get(['printer_id', 'label_id'])
self.assertEqual(values.get('printer_id', False), False)
self.assertEqual(values.get('label_id', False), False)
values = wizard_obj.default_get(["printer_id", "label_id"])
self.assertEqual(values.get("printer_id", False), False)
self.assertEqual(values.get("label_id", False), False)
def test_wizard_multiple_labels_but_on_different_models(self):
""" Check that label_id is automatically filled when there are multiple
labels, but only one on the right model
"""
self.env['printing.label.zpl2'].create({
'name': 'Other ZPL II Label',
'model_id': self.env.ref('base.model_res_users').id,
})
self.env["printing.label.zpl2"].create(
{
"name": "Other ZPL II Label",
"model_id": self.env.ref("base.model_res_users").id,
}
)
wizard_obj = self.Model.with_context(
active_model='printing.printer',
active_model="printing.printer",
active_id=self.printer.id,
active_ids=[self.printer.id],
printer_zpl2_id=self.printer.id,