def calibration_report(self): """ Process form paramters, create a pdf calibration report form and generate a thumbnail view. """ form = Form(ReportSchema(), buttons=("submit",)) if "submit" in self.request.POST: #log.info("submit: %s", self.request.POST) controls = self.request.POST.items() try: appstruct = form.validate(controls) rendered_form = form.render(appstruct) report = self.populate_data(appstruct) self.makedir_write_files(appstruct) pdf = WasatchSinglePage(filename=report.filename, report=report) pdf.write_thumbnail() return {"form":rendered_form, "appstruct":appstruct} except ValidationFailure as exc: #log.exception(exc) log.info("Validation failure") return {'form':exc.render()} return {"form":form.render()}
def test_thumbnail_generation(self): # Create the default report from calibrationreport.pdfgenerator import WasatchSinglePage filename = "default.pdf" self.assertFalse(touch_erase(filename)) pdf = WasatchSinglePage() self.assertTrue(file_range(filename, 101194, ok_range=5000)) # Generate the thumbnail of the first page png_filename = pdf.write_thumbnail() # Verify the size is as epected self.assertTrue(file_range(png_filename, 198863, ok_range=40000))