Example #1
0
 def test(self):
     f = VersionField()
     self.assertEqual(1, f.clean(VersionFieldSigner().sign(1)))
     self.assertEqual(1, f.clean(VersionFieldSigner().sign('1')))
     self.assertEqual(0, f.clean(None))
     self.assertEqual(0, f.clean(''))
     self.assertRaises(VersionError, f.clean, '100')
     self.assertRaises(VersionError, f.clean, VersionFieldSigner().sign(1.5))
Example #2
0
 def test_with_dummy_signer(self):
     f = VersionField(signer=DummySigner())
     self.assertEqual(1, f.clean(1))
     self.assertEqual(1, f.clean('1'))
     self.assertEqual(0, f.clean(None))
     self.assertEqual(0, f.clean(''))
     self.assertRaises(VersionError, f.clean, 'aa:bb')
     self.assertRaises(VersionError, f.clean, 1.5)
Example #3
0
 def test_with_dummy_signer(self):
     f = VersionField(signer=DummySigner())
     self.assertEqual(1, f.clean(1))
     self.assertEqual(1, f.clean('1'))
     self.assertEqual(0, f.clean(None))
     self.assertEqual(0, f.clean(''))
     self.assertRaisesMessage(SuspiciousOperation,
                             "Version number seems tampered", f.clean, 'aa:bb')
     self.assertRaisesMessage(SuspiciousOperation,
                              "Version number seems tampered", f.clean, 1.5)
Example #4
0
 def test(self):
     f = VersionField()
     self.assertEqual(1, f.clean(VersionFieldSigner().sign(1)))
     self.assertEqual(1, f.clean(VersionFieldSigner().sign('1')))
     self.assertEqual(0, f.clean(None))
     self.assertEqual(0, f.clean(''))
     self.assertRaisesMessage(SuspiciousOperation,
                             "Version number seems tampered", f.clean, '100')
     self.assertRaisesMessage(SuspiciousOperation,
                              "Version number seems tampered",
                              f.clean,
                              VersionFieldSigner().sign(1.5))
Example #5
0
 def test_dummy_signer(self):
     obj, __ = TestIssue3Model.objects.get_or_create(username='******')
     Form = modelform_factory(
         TestIssue3Model,
         type('xxx', (ConcurrentForm, ),
              {'revision': VersionField(signer=DummySigner())}))
     data = {'id': 1, 'revision': obj.revision}
     form = Form(data, instance=obj)
     self.assertTrue(form.is_valid(), form.non_field_errors())
Example #6
0
 def test_initial_value_with_custom_signer(self):
     Form = modelform_factory(
         TestIssue3Model,
         type('xxx', (ConcurrentForm, ),
              {'version': VersionField(signer=DummySigner())}))
     form = Form({'username': '******'})
     self.assertHTMLEqual(
         str(form['version']),
         '<input type="hidden" value="" name="version" id="id_version" />')
     self.assertTrue(form.is_valid(), form.non_field_errors())
Example #7
0
 def test_with_dummy_signer(self):
     f = VersionField(signer=DummySigner())
     self.assertEqual(1, f.clean(1))
     self.assertEqual(1, f.clean('1'))
     self.assertEqual(0, f.clean(None))
     self.assertEqual(0, f.clean(''))
     self.assertRaises(VersionError, f.clean, 'aa:bb')
     self.assertRaises(VersionError, f.clean, 1.5)
Example #8
0
 def test(self):
     f = VersionField()
     self.assertEqual(1, f.clean(VersionFieldSigner().sign(1)))
     self.assertEqual(1, f.clean(VersionFieldSigner().sign('1')))
     self.assertEqual(0, f.clean(None))
     self.assertEqual(0, f.clean(''))
     self.assertRaises(VersionError, f.clean, '100')
     self.assertRaises(VersionError, f.clean,
                       VersionFieldSigner().sign(1.5))
Example #9
0
 def test_with_wrong_signer(self):
     with self.settings(CONCURRENCY_FIELD_SIGNER='invalid.Signer'):
         with pytest.raises(ImproperlyConfigured):
             VersionField()