コード例 #1
0
 def test_can_validate_field_with_range(self):
     field_format = fields.IntegerFieldFormat("x", False, None, "1...10", _ANY_FORMAT)
     self.assertEqual(field_format.validated("1"), 1)
     self.assertEqual(field_format.validated("7"), 7)
     self.assertEqual(field_format.validated("10"), 10)
     field_format = fields.IntegerFieldFormat("x", False, None, "123", _ANY_FORMAT)
     self.assertEqual(field_format.validated("123"), 123)
コード例 #2
0
    def test_can_set_range_from_length_or_rule(self):
        field_format = fields.IntegerFieldFormat("x", False, "1...", "3...5", _ANY_FORMAT)
        self.assertEqual(field_format.validated("3"), 3)
        self.assertEqual(field_format.validated("5"), 5)
        self.assertRaises(errors.FieldValueError, field_format.validated, "2")
        self.assertRaises(errors.FieldValueError, field_format.validated, "6")

        field_format = fields.IntegerFieldFormat("x", False, "1...5", "-9...-1, 10...", _ANY_FORMAT)
        self.assertEqual(field_format.validated("-1"), -1)
        self.assertEqual(field_format.validated("-9"), -9)
        self.assertEqual(field_format.validated("10"), 10)
        self.assertRaises(errors.FieldValueError, field_format.validated, "-10")
        self.assertRaises(errors.FieldValueError, field_format.validated, "0")
        self.assertRaises(errors.FieldValueError, field_format.validated, "9")
コード例 #3
0
 def test_can_validate_fixed_format_with_length_and_rule(self):
     field_format = fields.IntegerFieldFormat('x', False, '3', '12...789', _FIXED_FORMAT)
     self.assertEqual(field_format.validated('100'), 100)
     self.assertEqual(field_format.validated('12'), 12)
     self.assertEqual(field_format.validated(' 12'), 12)
     self.assertEqual(field_format.validated('12 '), 12)
     self.assertEqual(field_format.validated('012'), 12)
コード例 #4
0
 def test_can_validate_empty_value_with_range_from_length(self):
     field_format = fields.IntegerFieldFormat('x', True, '2...3, 5...', '',
                                              _ANY_FORMAT)
     self.assertEqual(field_format.validated('10'), 10)
     self.assertEqual(field_format.validated('10000'), 10000)
     self.assertEqual(field_format.validated(''), None)
     self.assertRaises(errors.FieldValueError, field_format.validated, '1')
コード例 #5
0
ファイル: test_fields.py プロジェクト: butterhirsch/cutplace2
 def test_fails_on_invalid_example(self):
     field_format = fields.IntegerFieldFormat("x", False, None, "1:10",
                                              _ANY_FORMAT)
     try:
         field_format.example = "11"
         self.fail()
     except errors.FieldValueError:
         # Ignore expected error.
         pass
コード例 #6
0
 def test_fails_on_invalid_example(self):
     field_format = fields.IntegerFieldFormat("x", False, None, "1:10", _ANY_FORMAT)
     try:
         # NOTE: We cannot use dev_info.assert_raises_and_fnmatches() here
         # because the failing statement is an assignment, not a function
         # call.
         field_format.example = "11"
         self.fail()
     except errors.FieldValueError as anticipated_error:
         self.assertEqual('value is 11 but must be within range: 1...10', six.text_type(anticipated_error))
コード例 #7
0
    def test_can_validate_field_with_range_from_length(self):
        field_format = fields.IntegerFieldFormat("x", False, "2...2", "", _ANY_FORMAT)
        self.assertEqual(field_format.validated("-9"), -9)
        self.assertEqual(field_format.validated("-1"), -1)
        self.assertEqual(field_format.validated("10"), 10)
        self.assertEqual(field_format.validated("99"), 99)
        self.assertRaises(errors.FieldValueError, field_format.validated, "0")
        self.assertRaises(errors.FieldValueError, field_format.validated, "9")
        self.assertRaises(errors.FieldValueError, field_format.validated, "-10")
        self.assertRaises(errors.FieldValueError, field_format.validated, "100")

        field_format = fields.IntegerFieldFormat("x", False, "3...4, 10...", "", _ANY_FORMAT)
        self.assertEqual(field_format.validated("-999"), -999)
        self.assertEqual(field_format.validated("-10"), -10)
        self.assertEqual(field_format.validated("100"), 100)
        self.assertEqual(field_format.validated("9999"), 9999)
        self.assertRaises(errors.FieldValueError, field_format.validated, "-1")
        self.assertRaises(errors.FieldValueError, field_format.validated, "9")
        self.assertRaises(errors.FieldValueError, field_format.validated, "10000")
コード例 #8
0
 def test_can_accept_valid_example(self):
     field_format = fields.IntegerFieldFormat("x", False, None, "1...10", _ANY_FORMAT)
     field_format.example = "3"
     self.assertEqual(field_format.example, "3")
コード例 #9
0
 def test_fails_on_no_number(self):
     field_format = fields.IntegerFieldFormat("x", False, None, "1...10", _ANY_FORMAT)
     self.assertRaises(errors.FieldValueError, field_format.validated, "abc")
コード例 #10
0
 def test_can_set_range_from_length(self):
     field_format = fields.IntegerFieldFormat("x", False, "1...3", '', _ANY_FORMAT)
     self.assertEqual(field_format.valid_range.items, [(-99, 999)])
コード例 #11
0
 def test_can_set_range_from_rule(self):
     field_format = fields.IntegerFieldFormat("x", False, None, "1...5", _ANY_FORMAT)
     self.assertEqual(field_format.valid_range.items, [(1, 5)])
コード例 #12
0
 def test_can_set_default_range_without_rule(self):
     field_format = fields.IntegerFieldFormat("x", False, None, '', _ANY_FORMAT)
     self.assertEqual(field_format.valid_range.items, [(-2147483648, 2147483647)])