コード例 #1
0
    def test_get_schema(self):
        self.assertEqual(
            {
                'type': ['array'],
                'items': {
                    'readonly': False,
                    'type': ['string'],
                },
                'minItems': 0,
                'uniqueItems': True
            }, self.field.get_schema())

        sot = senlin_fields.IdentityList(fields.String(),
                                         min_items=2,
                                         unique=False,
                                         nullable=True)
        self.assertEqual(
            {
                'type': ['array', 'null'],
                'items': {
                    'readonly': False,
                    'type': ['string'],
                },
                'minItems': 2,
                'uniqueItems': False
            }, sot.get_schema())
コード例 #2
0
    def test_init_with_params(self):
        sot = senlin_fields.IdentityList(fields.String(),
                                         min_items=1,
                                         unique=False)

        self.assertEqual(1, sot.min_items)
        self.assertFalse(sot.unique_items)
コード例 #3
0
ファイル: test_fields.py プロジェクト: eayunstack/senlin
    def test_coerce_not_unique_okay(self):
        sot = senlin_fields.IdentityList(fields.String(), min_items=1,
                                         unique=False)
        obj = mock.Mock()

        # not unique is okay
        res = sot.coerce(obj, 'attr', ['abc', 'abc'])
        self.assertEqual(['abc', 'abc'], res)
コード例 #4
0
    def setUp(self):
        super(TestIdentityList, self).setUp()

        self.field = senlin_fields.IdentityList(fields.String())

        self.coerce_good_values = [(['abc'], ['abc'])]
        self.coerce_bad_values = [123]
        self.to_primitive_values = self.coerce_good_values[0:1]
        self.from_primitive_values = self.coerce_good_values[0:1]
コード例 #5
0
    def test_coerce_too_short(self):
        sot = senlin_fields.IdentityList(fields.String(),
                                         min_items=2,
                                         unique=False)
        obj = mock.Mock()

        # violating min_items
        ex = self.assertRaises(ValueError, sot.coerce, obj, 'attr', [])

        self.assertEqual("Value for 'attr' must have at least 2 item(s).",
                         six.text_type(ex))