Exemplo n.º 1
0
 def test_min_max_dimensions(self):
     ops = {'w': MAX_IMAGE_W*2, 'h': MAX_IMAGE_H*2}
     max_dim = {'w': MAX_IMAGE_W, 'h': MAX_IMAGE_H}
     params = param_validation(ops)
     self.assertEqual(max_dim, params)
     ops = {'w': 0, 'h': -1}
     min_dim = {'w': 1, 'h': 1}
     params = param_validation(ops)
     self.assertEqual(min_dim, params)
Exemplo n.º 2
0
 def test_valid(self):
     ops = {'WIDTH': 10, 'height': 20, 'fit': 'bounds',
            'format': 'jpeg', 'quality': 75, 'auto': 'compress'}
     params = param_validation(ops)
     self.assertIn('w', params)
     ops = {'w': 10, 'h': 20, 'fit': 'CROP',
                   'fm': 'jpeg', 'q': 75, 'auto': 'compress'}
     params = param_validation(ops)
     self.assertIn('fit', params)
     ops = {'w': 10, 'h': 20, 'f': 'clip', 'dpr': 5.3,
                   'fm': 'jpeg', 'q': 75, 'auto': 'compress'}
     params = param_validation(ops)
     self.assertEqual(ops, params)
Exemplo n.º 3
0
    def test_other_limits(self):
        ops = {'q': 120}
        params = param_validation(ops)
        exp_ops = {'q': 100}
        self.assertEqual(exp_ops, params)
        ops = {'q': -1}
        params = param_validation(ops)
        exp_ops = {'q': 1}
        self.assertEqual(exp_ops, params)

        ops = {'dpr': 0.0}
        params = param_validation(ops)
        exp_ops = {'dpr': 1}
        self.assertEqual(exp_ops, params)
        ops = {'dpr': 10}
        params = param_validation(ops)
        exp_ops = {'dpr': 8}
        self.assertEqual(exp_ops, params)
Exemplo n.º 4
0
    def test_invalid_schema(self):
        ops = {'width': 'invalid', 'h': 20, 'fit': 'crop', 'dpr': 1.1,
                      'format': 'jpeg', 'quality': 75, 'auto': 'compress'}

        params =   param_validation(ops)
        self.assertNotIn('w', params)
        self.assertIn('h', params)
        self.assertIn('q', params)
        self.assertIn('dpr', params)

        ops = {'h': 'invalid', 'w': 20, 'fit': 'invalid', 'dpr': 'invalid',
                      'format': 'jpeg', 'quality': 75, 'auto': 'compress'}
        params = param_validation(ops)
        self.assertNotIn('h', params)
        self.assertNotIn('dpr', params)
        self.assertNotIn('fit', params)
        self.assertIn('w', params)
        self.assertIn('fm', params)
        self.assertIn('auto', params)
Exemplo n.º 5
0
    def test_dependencies(self):
        self.assertIsNotNone(param_validation({'w': 1}))
        self.assertIsNotNone(param_validation({'h': 1}))
        self.assertIsNotNone(param_validation({'fm': 'png'}))
        self.assertIsNotNone(param_validation({'q': 1}))
        self.assertIsNotNone(param_validation({'auto': 'compress'}))
        self.assertIsNotNone(param_validation({'dpr': 1}))

        #
        # `fit` is dependend of either `w` or `h`
        #
        params = param_validation({'fit': 'crop'})
        self.assertEqual(params, {})
Exemplo n.º 6
0
 def test_unknown_params(self):
     ops = {'invalid': 'value', 'q': 75}
     params = param_validation(ops)
     self.assertEqual(ops, params)
Exemplo n.º 7
0
 def test_invalid_quality_fmt(self):
     ops = {'fm': 'gif', 'q': 75}
     params = param_validation(ops)
     self.assertNotIn('q', params)
     self.assertIn('fm', params)