Beispiel #1
0
    def test_setup_fields_processors(self, mock_eng, mock_resolve):
        from ramses import models
        config = Mock()
        schema = {
            'properties': {
                'stories': {
                    "_db_settings": {
                        "type": "relationship",
                        "document": "Story",
                        "backref_name": "owner",
                    },
                    "_processors": ["lowercase"],
                    "_backref_processors": ["backref_lowercase"]
                }
            }
        }

        models.setup_fields_processors(config, 'mymodel', schema)

        mock_resolve.assert_has_calls([
            call('lowercase'), call('backref_lowercase')])
        mock_eng.get_document_cls.assert_called_once_with('Story')
        config.add_field_processors.assert_has_calls([
            call([mock_resolve()], model='mymodel', field='stories'),
            call([mock_resolve()], model=mock_eng.get_document_cls(),
                 field='owner'),
        ])
Beispiel #2
0
    def test_setup_fields_processors(self, mock_eng, mock_resolve):
        from ramses import models
        config = Mock()
        schema = {
            'properties': {
                'stories': {
                    "_db_settings": {
                        "type": "relationship",
                        "document": "Story",
                        "backref_name": "owner",
                    },
                    "_processors": ["lowercase"],
                    "_backref_processors": ["backref_lowercase"]
                }
            }
        }

        models.setup_fields_processors(config, 'mymodel', schema)

        mock_resolve.assert_has_calls(
            [call('lowercase'), call('backref_lowercase')])
        mock_eng.get_document_cls.assert_called_once_with('Story')
        config.add_field_processors.assert_has_calls([
            call([mock_resolve()], model='mymodel', field='stories'),
            call([mock_resolve()],
                 model=mock_eng.get_document_cls(),
                 field='owner'),
        ])
Beispiel #3
0
 def test_setup_fields_processors_backref_no_backname(
         self, mock_eng, mock_resolve):
     from ramses import models
     config = Mock()
     schema = {
         'properties': {
             'stories': {
                 "_db_settings": {
                     "type": "relationship",
                     "document": "Story",
                 },
                 "_backref_processors": ["backref_lowercase"]
             }
         }
     }
     models.setup_fields_processors(config, 'mymodel', schema)
     assert not config.add_field_processors.called
Beispiel #4
0
 def test_setup_fields_processors_backref_no_backname(
         self, mock_eng, mock_resolve):
     from ramses import models
     config = Mock()
     schema = {
         'properties': {
             'stories': {
                 "_db_settings": {
                     "type": "relationship",
                     "document": "Story",
                 },
                 "_backref_processors": ["backref_lowercase"]
             }
         }
     }
     models.setup_fields_processors(config, 'mymodel', schema)
     assert not config.add_field_processors.called