示例#1
0
    def test_returns_correct_handler(self):
        bhsearch = BloodhoundSearchModule(self.env)
        tracsearch = self.env[TracSearchModule]

        class PathInfoSetter(object):
            # pylint: disable=incomplete-protocol
            def __setitem__(other, key, value):
                if key == "PATH_INFO":
                    self.req.path_info = value
        self.req.environ = PathInfoSetter()

        self.env.config.set('bhsearch', 'enable_redirect', "True")

        self.req.path_info = '/search'
        self.assertIs(bhsearch.pre_process_request(self.req, tracsearch),
                      bhsearch)

        self.req.path_info = '/bhsearch'
        self.assertIs(bhsearch.pre_process_request(self.req, tracsearch),
                      bhsearch)

        self.env.config.set('bhsearch', 'enable_redirect', "False")
        # With redirect disabled, handler should not be changed.
        self.req.path_info = '/search'
        self.assertIs(bhsearch.pre_process_request(self.req, None),
                      None)

        self.req.path_info = '/bhsearch'
        self.assertIs(bhsearch.pre_process_request(self.req, None),
                      None)
示例#2
0
    def test_returns_correct_handler(self):
        bhsearch = BloodhoundSearchModule(self.env)
        tracsearch = self.env[TracSearchModule]

        class PathInfoSetter(object):
            # pylint: disable=incomplete-protocol
            def __setitem__(other, key, value):
                if key == "PATH_INFO":
                    self.req.path_info = value

        self.req.environ = PathInfoSetter()

        self.env.config.set('bhsearch', 'enable_redirect', "True")

        self.req.path_info = '/search'
        self.assertIs(bhsearch.pre_process_request(self.req, tracsearch),
                      bhsearch)

        self.req.path_info = '/bhsearch'
        self.assertIs(bhsearch.pre_process_request(self.req, tracsearch),
                      bhsearch)

        self.env.config.set('bhsearch', 'enable_redirect', "False")
        # With redirect disabled, handler should not be changed.
        self.req.path_info = '/search'
        self.assertIs(bhsearch.pre_process_request(self.req, None), None)

        self.req.path_info = '/bhsearch'
        self.assertIs(bhsearch.pre_process_request(self.req, None), None)