f2 = ws1.add_file('GT', ID='page1_gt', mimetype='text/xml', local_filename='test.xml', content='') self.assertEqual(f1.url, 'test.tif') self.assertEqual(f2.url, 'test.xml') # these should be no-ops ws1.download_file(f1) ws1.download_file(f2) self.assertEqual(f1.url, 'test.tif') self.assertEqual(f2.url, 'test.xml') def test_save_image_file(self): from PIL import Image img = Image.new('RGB', (1000, 1000)) with TemporaryDirectory() as tempdir: ws = self.resolver.workspace_from_nothing(directory=tempdir) with self.assertRaisesRegex(KeyError, ''): ws.save_image_file(img, 'page1_img', 'IMG', 'page1', 'ceci/nest/pas/une/mimetype') ws.save_image_file(img, 'page1_img', 'IMG', 'page1', 'image/jpeg') self.assertTrue(exists(join(tempdir, 'IMG', 'page1_img.jpg'))) if __name__ == '__main__': main()
CLIS = [ OcrdAnybaseocrBinarizer, OcrdAnybaseocrBlockSegmenter, OcrdAnybaseocrCropper, OcrdAnybaseocrDeskewer, OcrdAnybaseocrDewarper, OcrdAnybaseocrLayoutAnalyser, OcrdAnybaseocrTextline, OcrdAnybaseocrTiseg ] class SmokeTest(TestCase): def test_all_help(self): """ Make sure all CLIs produce --help output """ for cli in CLIS: exit_code, out, err = self.invoke_cli(cli, ['--help']) self.assertIn('--input-file-grp', out) self.assertEquals(exit_code, 0) def test_all_json(self): """ Make sure all CLIs produce --dump-json output on stdout """ for cli in CLIS: exit_code, out, err = self.invoke_cli(cli, ['--dump-json']) parsed = json.loads(out) self.assertTrue(parsed['description']) if __name__ == '__main__': main(__file__)