[FIX] Update tests to new return signature of behaviour

This commit is contained in:
Graeme Gellatly
2017-10-08 19:46:52 +13:00
parent 3424a0900c
commit 64c5800d11
5 changed files with 68 additions and 64 deletions

View File

@@ -153,7 +153,7 @@ class PrintingPrinter(models.Model):
def _set_option_tray(self, report, value): def _set_option_tray(self, report, value):
"""Note we use self here as some older PPD use tray """Note we use self here as some older PPD use tray
rather than InputSlot so we may need to query printer in override""" rather than InputSlot so we may need to query printer in override"""
return {'InputSlot': str(value)} return {'InputSlot': str(value)} if value else {}
@staticmethod @staticmethod
def _set_option_noop(report, value): def _set_option_noop(report, value):

View File

@@ -67,7 +67,7 @@ class TestIrActionsReportXml(TransactionCase):
""" It should return correct serializable result for behaviour """ """ It should return correct serializable result for behaviour """
with mock.patch.object(self.Model, '_get_report_from_name') as mk: with mock.patch.object(self.Model, '_get_report_from_name') as mk:
res = self.Model.print_action_for_report_name('test') res = self.Model.print_action_for_report_name('test')
behaviour = mk().behaviour()[mk()] behaviour = mk().behaviour()
expect = { expect = {
'action': behaviour['action'], 'action': behaviour['action'],
'printer_name': behaviour['printer'].name, 'printer_name': behaviour['printer'].name,
@@ -85,11 +85,11 @@ class TestIrActionsReportXml(TransactionCase):
report.property_printing_action_id = False report.property_printing_action_id = False
report.printing_printer_id = False report.printing_printer_id = False
self.assertEqual(report.behaviour(), { self.assertEqual(report.behaviour(), {
report: {
'action': 'client', 'action': 'client',
'printer': self.env['printing.printer'], 'printer': self.env['printing.printer'],
'tray': False,
}, },
}) )
def test_behaviour_user_values(self): def test_behaviour_user_values(self):
""" It should return the action and printer from user """ """ It should return the action and printer from user """
@@ -97,11 +97,11 @@ class TestIrActionsReportXml(TransactionCase):
self.env.user.printing_action = 'client' self.env.user.printing_action = 'client'
self.env.user.printing_printer_id = self.new_printer() self.env.user.printing_printer_id = self.new_printer()
self.assertEqual(report.behaviour(), { self.assertEqual(report.behaviour(), {
report: {
'action': 'client', 'action': 'client',
'printer': self.env.user.printing_printer_id, 'printer': self.env.user.printing_printer_id,
'tray': False,
}, },
}) )
def test_behaviour_report_values(self): def test_behaviour_report_values(self):
""" It should return the action and printer from report """ """ It should return the action and printer from report """
@@ -110,11 +110,11 @@ class TestIrActionsReportXml(TransactionCase):
report.property_printing_action_id = self.new_action() report.property_printing_action_id = self.new_action()
report.printing_printer_id = self.new_printer() report.printing_printer_id = self.new_printer()
self.assertEqual(report.behaviour(), { self.assertEqual(report.behaviour(), {
report: {
'action': report.property_printing_action_id.action_type, 'action': report.property_printing_action_id.action_type,
'printer': report.printing_printer_id, 'printer': report.printing_printer_id,
'tray': False,
}, },
}) )
def test_behaviour_user_action(self): def test_behaviour_user_action(self):
""" It should return the action and printer from user action""" """ It should return the action and printer from user action"""
@@ -122,11 +122,11 @@ class TestIrActionsReportXml(TransactionCase):
self.env.user.printing_action = 'client' self.env.user.printing_action = 'client'
report.property_printing_action_id.action_type = 'user_default' report.property_printing_action_id.action_type = 'user_default'
self.assertEqual(report.behaviour(), { self.assertEqual(report.behaviour(), {
report: {
'action': 'client', 'action': 'client',
'printer': report.printing_printer_id, 'printer': report.printing_printer_id,
'tray': False,
}, },
}) )
def test_behaviour_printing_action_on_wrong_user(self): def test_behaviour_printing_action_on_wrong_user(self):
""" It should return the action and printer ignoring printing action """ It should return the action and printer ignoring printing action
@@ -138,11 +138,11 @@ class TestIrActionsReportXml(TransactionCase):
('id', '!=', self.env.user.id), ('id', '!=', self.env.user.id),
], limit=1) ], limit=1)
self.assertEqual(report.behaviour(), { self.assertEqual(report.behaviour(), {
report: {
'action': 'client', 'action': 'client',
'printer': report.printing_printer_id, 'printer': report.printing_printer_id,
'tray': False,
}, },
}) )
def test_behaviour_printing_action_on_wrong_report(self): def test_behaviour_printing_action_on_wrong_report(self):
""" It should return the action and printer ignoring printing action """ It should return the action and printer ignoring printing action
@@ -155,11 +155,11 @@ class TestIrActionsReportXml(TransactionCase):
('id', '!=', report.id), ('id', '!=', report.id),
], limit=1) ], limit=1)
self.assertEqual(report.behaviour(), { self.assertEqual(report.behaviour(), {
report: {
'action': 'client', 'action': 'client',
'printer': report.printing_printer_id, 'printer': report.printing_printer_id,
'tray': False,
}, },
}) )
def test_behaviour_printing_action_with_no_printer(self): def test_behaviour_printing_action_with_no_printer(self):
""" It should return the action from printing action and printer from other """ It should return the action from printing action and printer from other
@@ -170,11 +170,11 @@ class TestIrActionsReportXml(TransactionCase):
printing_action.user_id = self.env.user printing_action.user_id = self.env.user
printing_action.report_id = report printing_action.report_id = report
self.assertEqual(report.behaviour(), { self.assertEqual(report.behaviour(), {
report: {
'action': printing_action.action, 'action': printing_action.action,
'printer': report.printing_printer_id, 'printer': report.printing_printer_id,
'tray': False,
}, },
}) )
def test_behaviour_printing_action_with_printer(self): def test_behaviour_printing_action_with_printer(self):
""" It should return the action and printer from printing action """ """ It should return the action and printer from printing action """
@@ -184,11 +184,11 @@ class TestIrActionsReportXml(TransactionCase):
printing_action.user_id = self.env.user printing_action.user_id = self.env.user
printing_action.printer_id = self.new_printer() printing_action.printer_id = self.new_printer()
self.assertEqual(report.behaviour(), { self.assertEqual(report.behaviour(), {
report: {
'action': printing_action.action, 'action': printing_action.action,
'printer': printing_action.printer_id, 'printer': printing_action.printer_id,
'tray': False,
}, },
}) )
def test_behaviour_printing_action_user_defaults(self): def test_behaviour_printing_action_user_defaults(self):
""" It should return the action and printer from user with printing action """ It should return the action and printer from user with printing action
@@ -199,11 +199,11 @@ class TestIrActionsReportXml(TransactionCase):
printing_action.user_id = self.env.user printing_action.user_id = self.env.user
printing_action.action = 'user_default' printing_action.action = 'user_default'
self.assertEqual(report.behaviour(), { self.assertEqual(report.behaviour(), {
report: {
'action': 'client', 'action': 'client',
'printer': report.printing_printer_id, 'printer': report.printing_printer_id,
'tray': False,
}, },
}) )
def test_onchange_printer_tray_id_empty(self): def test_onchange_printer_tray_id_empty(self):
action = self.env['ir.actions.report'].new( action = self.env['ir.actions.report'].new(

View File

@@ -37,16 +37,19 @@ class TestPrintingPrinter(TransactionCase):
def test_printing_options(self): def test_printing_options(self):
""" It should generate the right options dictionnary """ """ It should generate the right options dictionnary """
self.assertEqual(self.Model.print_options('report', 'raw'), {
'raw': 'True',
})
self.assertEqual(self.Model.print_options('report', 'pdf', 2), {
'copies': '2', 'copies': '2',
}) # TODO: None here used as report - tests here should be merged
self.assertEqual(self.Model.print_options('report', 'raw', 2), { # with tests in test_printing_printer_tray from when modules merged
'raw': 'True', self.assertEqual(self.Model.print_options(
'copies': '2', None, doc_format='raw'), {'raw': 'True',}
}) )
self.assertEqual(self.Model.print_options(
None, doc_format='pdf', copies=2), {'copies': '2',}
)
self.assertEqual(self.Model.print_options(
None, doc_format='raw', copies=2),
{'raw': 'True', 'copies': '2',}
)
@mock.patch('%s.cups' % server_model) @mock.patch('%s.cups' % server_model)
def test_print_report(self, cups): def test_print_report(self, cups):
@@ -55,7 +58,8 @@ class TestPrintingPrinter(TransactionCase):
with mock.patch('%s.mkstemp' % model) as mkstemp: with mock.patch('%s.mkstemp' % model) as mkstemp:
mkstemp.return_value = fd, file_name mkstemp.return_value = fd, file_name
printer = self.new_record() printer = self.new_record()
printer.print_document('report_name', b'content to print', 'pdf') printer.print_document(self.report, b'content to print',
doc_format='pdf')
cups.Connection().printFile.assert_called_once_with( cups.Connection().printFile.assert_called_once_with(
printer.system_name, printer.system_name,
file_name, file_name,
@@ -72,7 +76,7 @@ class TestPrintingPrinter(TransactionCase):
printer = self.new_record() printer = self.new_record()
with self.assertRaises(UserError): with self.assertRaises(UserError):
printer.print_document( printer.print_document(
'report_name', b'content to print', 'pdf') self.report, b'content to print', doc_format='pdf')
@mock.patch('%s.cups' % server_model) @mock.patch('%s.cups' % server_model)
def test_print_file(self, cups): def test_print_file(self, cups):

View File

@@ -129,14 +129,14 @@ class TestPrintingPrinter(TransactionCase):
self.env.user.printer_tray_id = False self.env.user.printer_tray_id = False
report.printer_tray_id = False report.printer_tray_id = False
action.printer_tray_id = False action.printer_tray_id = False
options = self.Model.print_options(report, 'pdf') options = self.Model.print_options(report, doc_format='pdf')
self.assertFalse('InputSlot' in options) self.assertFalse('InputSlot' in options)
# Only user tray is defined # Only user tray is defined
self.env.user.printer_tray_id = user_tray self.env.user.printer_tray_id = user_tray
report.printer_tray_id = False report.printer_tray_id = False
action.printer_tray_id = False action.printer_tray_id = False
options = self.Model.print_options(report, 'pdf') options = self.Model.print_options(report, doc_format='pdf')
self.assertEquals(options, { self.assertEquals(options, {
'InputSlot': 'User tray', 'InputSlot': 'User tray',
}) })
@@ -145,7 +145,7 @@ class TestPrintingPrinter(TransactionCase):
self.env.user.printer_tray_id = False self.env.user.printer_tray_id = False
report.printer_tray_id = report_tray report.printer_tray_id = report_tray
action.printer_tray_id = False action.printer_tray_id = False
options = self.Model.print_options(report, 'pdf') options = self.Model.print_options(report, doc_format='pdf')
self.assertEquals(options, { self.assertEquals(options, {
'InputSlot': 'Report tray', 'InputSlot': 'Report tray',
}) })
@@ -154,7 +154,7 @@ class TestPrintingPrinter(TransactionCase):
self.env.user.printer_tray_id = False self.env.user.printer_tray_id = False
report.printer_tray_id = False report.printer_tray_id = False
action.printer_tray_id = action_tray action.printer_tray_id = action_tray
options = self.Model.print_options(report, 'pdf') options = self.Model.print_options(report, doc_format='pdf')
self.assertEquals(options, { self.assertEquals(options, {
'InputSlot': 'Action tray', 'InputSlot': 'Action tray',
}) })
@@ -163,7 +163,7 @@ class TestPrintingPrinter(TransactionCase):
self.env.user.printer_tray_id = user_tray self.env.user.printer_tray_id = user_tray
report.printer_tray_id = report_tray report.printer_tray_id = report_tray
action.printer_tray_id = action_tray action.printer_tray_id = action_tray
options = self.Model.print_options(report, 'pdf') options = self.Model.print_options(report, doc_format='pdf')
self.assertEquals(options, { self.assertEquals(options, {
'InputSlot': 'Action tray', 'InputSlot': 'Action tray',
}) })