def test_build_index(self): elastic_index.clear() # Populate the database self._load_and_assert_success(Category, 'load_categories') self._load_and_assert_success(Resource, 'load_resources', ResourceCategory, 'resource') self._load_and_assert_success(Event, 'load_events', ResourceCategory, 'event') self._load_and_assert_success(Location, 'load_locations', ResourceCategory, 'location') self._load_and_assert_success(Study, 'load_studies', StudyCategory) # Build the index data_loader.DataLoader().build_index() # Get the number of items in the database num_db_resources = db.session.query(Resource).filter( Resource.type == 'resource').count() num_db_events = db.session.query(Resource).filter( Resource.type == 'event').count() num_db_locations = db.session.query(Resource).filter( Resource.type == 'location').count() num_db_studies = db.session.query(Study).count() # Get the number of items in the search index es_resources = elastic_index.search( Search(types=[Resource.__tablename__])) es_events = elastic_index.search(Search(types=[Event.__tablename__])) es_locations = elastic_index.search( Search(types=[Location.__tablename__])) es_studies = elastic_index.search(Search(types=[Study.__tablename__])) # Verify that the number of items in the database match the number of items in the search index self.assertEqual(num_db_resources, es_resources.hits.total) self.assertEqual(num_db_events, es_events.hits.total) self.assertEqual(num_db_locations, es_locations.hits.total) self.assertEqual(num_db_studies, es_studies.hits.total) # Assure there are not age related categories. self.assertEqual( 0, db.session.query(Category).filter( Category.name == 'Age Range').count()) self.assertEqual( 0, db.session.query(Category).filter( Category.name == 'Pre-K (0 - 5 years)').count())
def setUp(self): self.ctx.push() clean_db(db) elastic_index.clear() self.auths = {}
def tearDownClass(cls): db.drop_all() db.session.remove() elastic_index.clear()
def tearDown(self): self.ctx.pop() db.drop_all() elastic_index.clear() pass
def clear_index(self): print("Clearing the index") elastic_index.clear()