66import frappe
77from frappe .tests .utils import FrappeTestCase
88
9+ from pdf_on_submit .utils import extend_boot_info , get_print_details
10+
911TEST_DOCTYPE = "Test Submittable DocType"
1012
1113
@@ -82,18 +84,13 @@ def tearDown(self) -> None:
8284 frappe .set_user ("Administrator" )
8385 frappe .db .rollback ()
8486
85- def _call (self , doctype = TEST_DOCTYPE , docname = None ):
86- from pdf_on_submit .utils import get_print_details
87-
88- return get_print_details (doctype , docname or self .doc .name )
89-
9087 def test_rejects_without_print_permission (self ):
9188 with patch ("frappe.has_permission" , return_value = False ):
9289 with self .assertRaises (frappe .ValidationError ):
93- self ._call ( )
90+ get_print_details ( TEST_DOCTYPE , self .doc . name )
9491
9592 def test_returns_standard_when_no_match (self ):
96- results = self ._call ( )
93+ results = get_print_details ( TEST_DOCTYPE , self .doc . name )
9794 self .assertEqual (len (results ), 1 )
9895 self .assertEqual (results [0 ]["print_format" ], "Standard" )
9996 self .assertIsNone (results [0 ]["letter_head" ])
@@ -106,7 +103,7 @@ def test_returns_matched_config_print_format(self):
106103 )
107104 self .settings .flags .ignore_links = True
108105 self .settings .save ()
109- results = self ._call ( )
106+ results = get_print_details ( TEST_DOCTYPE , self .doc . name )
110107 self .assertEqual (results [0 ]["print_format" ], "Custom Format" )
111108
112109 def test_returns_matched_config_letter_head (self ):
@@ -116,14 +113,14 @@ def test_returns_matched_config_letter_head(self):
116113 )
117114 self .settings .flags .ignore_links = True
118115 self .settings .save ()
119- results = self ._call ( )
116+ results = get_print_details ( TEST_DOCTYPE , self .doc . name )
120117 self .assertEqual (results [0 ]["letter_head" ], "Custom Letter Head" )
121118
122119 def test_letter_head_falls_back_to_doc (self ):
123120 self .doc .letter_head = "Test Letter Head"
124121 self .doc .save ()
125122 with patch ("pdf_on_submit.utils.iter_matching_enabled_doctypes" , return_value = iter ([])):
126- results = self ._call ( )
123+ results = get_print_details ( TEST_DOCTYPE , self .doc . name )
127124 self .assertEqual (results [0 ]["letter_head" ], "Test Letter Head" )
128125
129126 def test_returns_one_entry_per_matching_row (self ):
@@ -137,7 +134,7 @@ def test_returns_one_entry_per_matching_row(self):
137134 )
138135 self .settings .flags .ignore_links = True
139136 self .settings .save ()
140- results = self ._call ( )
137+ results = get_print_details ( TEST_DOCTYPE , self .doc . name )
141138 self .assertEqual ([r ["print_format" ] for r in results ], ["Format A" , "Format B" ])
142139
143140
@@ -152,21 +149,16 @@ def setUp(self) -> None:
152149 def tearDown (self ) -> None :
153150 frappe .db .rollback ()
154151
155- def _call (self ):
156- from pdf_on_submit .utils import extend_boot_info
157-
152+ def test_boot_info_includes_enabled_doctype (self ):
158153 bootinfo = frappe ._dict ()
159154 extend_boot_info (bootinfo )
160- return bootinfo
161-
162- def test_boot_info_includes_enabled_doctype (self ):
163- bootinfo = self ._call ()
164155 self .assertEqual (bootinfo .pdf_on_submit .show_pdf_button , 1 )
165156 self .assertIn (TEST_DOCTYPE , bootinfo .pdf_on_submit .enabled_doctypes )
166157
167158 def test_boot_info_show_pdf_button_reflects_setting (self ):
168159 self .settings .show_pdf_button = 0
169160 self .settings .save ()
170- bootinfo = self ._call ()
161+ bootinfo = frappe ._dict ()
162+ extend_boot_info (bootinfo )
171163 self .assertEqual (bootinfo .pdf_on_submit .show_pdf_button , 0 )
172164 self .assertEqual (bootinfo .pdf_on_submit .enabled_doctypes , [])
0 commit comments