def test_put_mapping(self): elastic = Elastic(None) elastic.init_app(self.app) elastic.put_mapping(self.app) mapping = elastic.get_mapping(elastic.index) self.assertNotIn('published_items', mapping['mappings']) items_mapping = mapping['mappings']['items']['properties'] self.assertIn('firstcreated', items_mapping) self.assertEqual('date', items_mapping['firstcreated']['type']) self.assertIn(config.DATE_CREATED, items_mapping) self.assertIn(config.LAST_UPDATED, items_mapping) self.assertIn('uri', items_mapping) self.assertIn('category', items_mapping) self.assertIn('dateline', items_mapping) dateline_mapping = items_mapping['dateline'] self.assertIn('created', dateline_mapping['properties']) self.assertEqual('date', dateline_mapping['properties']['created']['type']) self.assertIn('place', items_mapping) place_mapping = items_mapping['place'] self.assertIn('created', place_mapping['properties']) self.assertEqual('date', place_mapping['properties']['created']['type'])
def test_put_mapping(self): elastic = Elastic(None) elastic.init_app(self.app) with self.app.app_context(): elastic.put_mapping(self.app) mapping = elastic.get_mapping(elastic.index) self.assertNotIn('published_items', mapping['mappings']) items_mapping = mapping['mappings']['items']['properties'] self.assertIn('firstcreated', items_mapping) self.assertEqual('date', items_mapping['firstcreated']['type']) self.assertIn(config.DATE_CREATED, items_mapping) self.assertIn(config.LAST_UPDATED, items_mapping) self.assertIn('uri', items_mapping) self.assertIn('category', items_mapping) self.assertIn('dateline', items_mapping) dateline_mapping = items_mapping['dateline'] self.assertIn('created', dateline_mapping['properties']) self.assertEqual('date', dateline_mapping['properties']['created']['type']) self.assertIn('place', items_mapping) place_mapping = items_mapping['place'] self.assertIn('created', place_mapping['properties']) self.assertEqual('date', place_mapping['properties']['created']['type'])
def test_custom_index_settings_per_resource(self): archived_index = 'elastic_test_archived' archived_type = 'archived_items' self.drop_index(archived_index) with self.app.app_context(): self.app.config['ELASTICSEARCH_INDEXES'] = { archived_type: archived_index } self.assertIn(archived_type, self.app.config['SOURCES']) self.assertFalse(self.es.indices.exists(archived_index)) self.app.data = Elastic(self.app) self.app.data.init_app(self.app) self.app.data.init_index(self.app) self.assertTrue(self.es.indices.exists(archived_index)) self.assertEqual(0, self.es.count(archived_index, archived_type)['count']) with self.app.app_context(): self.app.data.insert(archived_type, [ { 'name': 'foo', 'archived': '2013-01-01T11:12:13+0000' }, ]) self.assertEqual(1, self.es.count(archived_index, archived_type)['count']) with self.app.app_context(): item = self.app.data.find_one(archived_type, req=None, name='foo') self.assertEqual('foo', item['name'])
def test_it_can_use_configured_url(self): with self.app.app_context(): self.app.config['ELASTICSEARCH_URL'] = 'http://localhost:9292' elastic = Elastic(self.app) elastic.init_index(self.app)