diff --git a/.gitignore b/.gitignore index 300bb05..fb871be 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,5 @@ docs/build .DS_Store dist/ build/ +__pycache__/ +venv/ diff --git a/flask_sieve/rules_processor.py b/flask_sieve/rules_processor.py index a3be94b..0352619 100644 --- a/flask_sieve/rules_processor.py +++ b/flask_sieve/rules_processor.py @@ -194,9 +194,9 @@ def validate_dimensions(self, value, params, **kwargs): if not self.validate_file(value): return False try: - image = Image.open(value.filename) + image = Image.open(value) w, h = image.size - image.close() + value.seek(0) return ('%dx%d' % (w, h)) == params[0] except Exception: return False diff --git a/tests/test_rules_processor.py b/tests/test_rules_processor.py index 274ad60..bba2c97 100644 --- a/tests/test_rules_processor.py +++ b/tests/test_rules_processor.py @@ -11,10 +11,10 @@ class TestRulesProcessor(unittest.TestCase): def setUp(self): self.parser = Parser() self.processor = RulesProcessor() - self.stream = open('tests/files/image.png') + self.stream = open('tests/files/image.png', 'rb') self.image_file = FileStorage( stream=self.stream, - filename='tests/files/image.png', + filename='image.png', content_type='image/png', name='image' )