def test_index_and_unindex(self): instance = self._create_test_data() search_index = search_api.Index(name='test_index') search.index_entity(instance, index='test_index') # test indexing with custom converters converters = { ndb.StringProperty: mock.Mock(side_effect=lambda n, v: search_api.TextField(name=n, value=v)) } search.index_entity(instance, index='test_index', extra_converters=converters) assert converters[ndb.StringProperty].called # test indexing with callback callback_mock = mock.Mock() search.index_entity(instance, index='text_index', callback=callback_mock) assert callback_mock.called # test error handler with mock.patch('ferris3.search.search_api.Index.put', side_effect=ValueError()): self.assertRaises(ValueError, search.index_entity, instance, index='test_index') # Test responses and translation response = search_index.get_range() assert len(response.results) == 1 entities = search.to_entities(response) assert len(entities) == 1 # Test unindexing search.unindex_entity(instance, index='test_index') response = search_index.get_range() assert len(response.results) == 0
def test_index_and_unindex(self): instance = self._create_test_data() search_index = search_api.Index(name='test_index') search.index_entity(instance, index='test_index') response = search_index.get_range() assert len(response.results) == 1 search.unindex_entity(instance, index='test_index') response = search_index.get_range() assert len(response.results) == 0
def test_index_and_unindex(self): instance = self._create_test_data() search_index = search_api.Index(name='test_index') search.index_entity(instance, index='test_index') # test indexing with custom converters converters = { ndb.StringProperty: mock.Mock( side_effect=lambda n, v: search_api.TextField(name=n, value=v)) } search.index_entity(instance, index='test_index', extra_converters=converters) assert converters[ndb.StringProperty].called # test indexing with callback callback_mock = mock.Mock() search.index_entity(instance, index='text_index', callback=callback_mock) assert callback_mock.called # test error handler with mock.patch('ferris3.search.search_api.Index.put', side_effect=ValueError()): self.assertRaises(ValueError, search.index_entity, instance, index='test_index') # Test responses and translation response = search_index.get_range() assert len(response.results) == 1 entities = search.to_entities(response) assert len(entities) == 1 # Test unindexing search.unindex_entity(instance, index='test_index') response = search_index.get_range() assert len(response.results) == 0