コード例 #1
0
class TestSearch:
    @pytest.fixture(autouse=True)
    def initial_data(self, clean_db):
        self.search = SearchIndexCommand("search-index")
        self.index = index_for(model.Package)
        self.query = query_for(model.Package)
        CreateTestData.create()

    def test_clear_and_rebuild_index(self):

        # Clear index
        self.search.args = ()
        self.search.options = FakeOptions()
        self.search.clear()

        self.query.run({"q": "*:*"})

        assert self.query.count == 0

        # Rebuild index
        self.search.args = ()
        self.search.options = FakeOptions(
            only_missing=False,
            force=False,
            refresh=False,
            commit_each=False,
            quiet=False,
        )
        self.search.rebuild()
        pkg_count = (model.Session.query(
            model.Package).filter(model.Package.state == u"active").count())

        self.query.run({"q": "*:*"})

        assert self.query.count == pkg_count

        pkg_count = (model.Session.query(
            model.Package).filter(model.Package.state == u"active").count())

        # Clear index for annakarenina
        self.search.args = ("clear annakarenina").split()
        self.search.options = FakeOptions()
        self.search.clear()

        self.query.run({"q": "*:*"})

        assert self.query.count == pkg_count - 1

        # Rebuild index for annakarenina
        self.search.args = ("rebuild annakarenina").split()
        self.search.options = FakeOptions(only_missing=False,
                                          force=False,
                                          refresh=False,
                                          commit_each=False)
        self.search.rebuild()

        self.query.run({"q": "*:*"})

        assert self.query.count == pkg_count
コード例 #2
0
    def _update_tracking_info(self):
        # update tracking info
        date = (datetime.now() -timedelta(days=1)).strftime('%Y-%m-%d')
        Tracking('Tracking').update_all(engine=model.meta.engine, start_date=date)

        #rebuild search index
        class FakeOptions():
            def __init__(self,**kwargs):
                for key in kwargs:
                    setattr(self,key,kwargs[key])
        sic = SearchIndexCommand('search-index')
        sic.args = []
        sic.options = FakeOptions(only_missing=False, force=False, refresh=False, commit_each=False, quiet=False)
        sic.rebuild()
コード例 #3
0
ファイル: test_cli.py プロジェクト: bwica/origin
 def setup_class(cls):
     cls.search = SearchIndexCommand('search-index')
     cls.index = index_for(model.Package)
     cls.query = query_for(model.Package)
     CreateTestData.create()
コード例 #4
0
 def initial_data(self, clean_db):
     self.search = SearchIndexCommand("search-index")
     self.index = index_for(model.Package)
     self.query = query_for(model.Package)
     CreateTestData.create()