diff options
Diffstat (limited to 'share/extensions/tests/test_extractimage.py')
-rw-r--r-- | share/extensions/tests/test_extractimage.py | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/share/extensions/tests/test_extractimage.py b/share/extensions/tests/test_extractimage.py new file mode 100644 index 0000000..88044ba --- /dev/null +++ b/share/extensions/tests/test_extractimage.py @@ -0,0 +1,40 @@ +# coding=utf-8 + +import os +from extractimage import ExtractImage +from inkex.tester import ComparisonMixin, InkscapeExtensionTestMixin, TestCase + +class ExtractImageBasicTest(ComparisonMixin, InkscapeExtensionTestMixin, TestCase): + stderr_protect = False + effect_class = ExtractImage + compare_file = 'svg/images.svg' + comparisons = [ + ('--selectedonly=False',), + ('--selectedonly=True', '--id=embeded_image01'), + ] + + def test_all_comparisons(self): + """Images are extracted to a file directory""" + for args in self.comparisons: + outdir = os.path.join(self.tempdir, 'img') + args += ('--filepath={}/'.format(outdir),) + self.assertEffect(self.compare_file, args=args) + + outfile = os.path.join(outdir, 'embeded_image01.png') + self.assertTrue(os.path.isfile(outfile), "No output file created! {}".format(outfile)) + + with open(outfile, 'rb') as fhl: + data_a = fhl.read() + + self.assertTrue(data_a, "No data produced with {}".format(args)) + + outfile = self.get_compare_outfile(args) + if os.environ.get('EXPORT_COMPARE', False): + with open(outfile + '.export', 'wb') as fhl: + fhl.write(data_a) + print("Written output: {}.export".format(outfile)) + + with open(outfile, 'rb') as fhl: + data_b = fhl.read() + + self.assertEqual(data_a, data_b) |