Files @ cff9d4e1d821
Branch filter:

Location: kallithea/rhodecode/tests/functional/test_changelog.py

Marcin Kuzminski
Fixed issue when node didn't exists at 'tip' and we tried calculate history based on that assumption.
Now fallback to the changeset the node exists in for history calculation
from rhodecode.tests import *


class TestChangelogController(TestController):

    def test_index_hg(self):
        self.log_user()
        response = self.app.get(url(controller='changelog', action='index',
                                    repo_name=HG_REPO))

        response.mustcontain("""<div id="chg_20" class="container tablerow1">""")
        response.mustcontain(
            """<input class="changeset_range" """
            """id="5e204e7583b9c8e7b93a020bd036564b1e731dae" """
            """name="5e204e7583b9c8e7b93a020bd036564b1e731dae" """
            """type="checkbox" value="1" />"""
        )
        response.mustcontain(
            """<span class="changeset_id">154:"""
            """<span class="changeset_hash">5e204e7583b9</span></span>"""
        )

        response.mustcontain("""Small update at simplevcs app""")

        response.mustcontain(
            """<div id="changed_total_5e204e7583b9c8e7b93a020bd036564b1e731dae" """
            """style="float:right;" class="changed_total tooltip" """
            """title="Affected number of files, click to show """
            """more details">3</div>"""
        )

        #pagination
        response = self.app.get(url(controller='changelog', action='index',
                                    repo_name=HG_REPO), {'page': 1})
        response = self.app.get(url(controller='changelog', action='index',
                                    repo_name=HG_REPO), {'page': 2})
        response = self.app.get(url(controller='changelog', action='index',
                                    repo_name=HG_REPO), {'page': 3})
        response = self.app.get(url(controller='changelog', action='index',
                                    repo_name=HG_REPO), {'page': 4})
        response = self.app.get(url(controller='changelog', action='index',
                                    repo_name=HG_REPO), {'page': 5})
        response = self.app.get(url(controller='changelog', action='index',
                                    repo_name=HG_REPO), {'page': 6})

        # Test response after pagination...
        response.mustcontain(
            """<input class="changeset_range" """
            """id="46ad32a4f974e45472a898c6b0acb600320579b1" """
            """name="46ad32a4f974e45472a898c6b0acb600320579b1" """
            """type="checkbox" value="1" />"""
        )
        response.mustcontain(
            """<span class="changeset_id">64:"""
            """<span class="changeset_hash">46ad32a4f974</span></span>"""
        )

        response.mustcontain(
            """<div id="changed_total_46ad32a4f974e45472a898c6b0acb600320579b1" """
            """style="float:right;" class="changed_total tooltip" """
            """title="Affected number of files, click to show """
            """more details">21</div>"""
        )

        response.mustcontain(
            """<a href="/%s/changeset/"""
            """46ad32a4f974e45472a898c6b0acb600320579b1" """
            """title="Merge with 2e6a2bf9356ca56df08807f4ad86d480da72a8f4">"""
            """46ad32a4f974</a>""" % HG_REPO
        )