Files @ 9211cc737587
Branch filter:

Location: kallithea/kallithea/tests/functional/test_branches.py

Thomas De Schampheleire
pytest migration: search: use tmpdir fixture instead of 'current dir'

The test_empty_search method needs to refer to an existing directory that is
guaranteed to not contain a search index. The current implementation chose
the 'current' directory '.' but it is more of a hack than careful planning.
A temporary empty directory would be cleaner but was more involved to
create.

With the introduction of pytest-style test classes, this can very easily
be improved. Creating a temporary directory with pytest is as simple as
accepting the magic 'tmpdir' argument to the test method. This 'tmpdir' is
a fixture provided by pytest. The variable is initialized with a
py.path.local object referring a temporary directory. For details, see:
http://pytest.org/latest/tmpdir.html
from kallithea.tests import *


class TestBranchesController(TestController):

    def test_index_hg(self):
        self.log_user()
        response = self.app.get(url(controller='branches',
                                    action='index', repo_name=HG_REPO))
        response.mustcontain("""<a href="/%s/changelog?branch=default">default</a>""" % HG_REPO)

        # closed branches
        response.mustcontain("""<a href="/%s/changelog?branch=git">git [closed]</a>""" % HG_REPO)
        response.mustcontain("""<a href="/%s/changelog?branch=web">web [closed]</a>""" % HG_REPO)

    def test_index_git(self):
        self.log_user()
        response = self.app.get(url(controller='branches',
                                    action='index', repo_name=GIT_REPO))
        response.mustcontain("""<a href="/%s/changelog?branch=master">master</a>""" % GIT_REPO)