annotate rhodecode/tests/functional/test_compare.py @ 3645:aef5f5ce5ead beta

use fixtures for forking
author Marcin Kuzminski <marcin@python-works.com>
date Sun, 31 Mar 2013 21:31:36 +0200
parents 2053053e0882
children 8a86836fad64
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2241
b2a2868d7bec Basic compare-view controller with ref parsing
Marcin Kuzminski <marcin@python-works.com>
parents:
diff changeset
1 from rhodecode.tests import *
2684
2b6939a77052 Bumped mercurial version to 2.3
Marcin Kuzminski <marcin@python-works.com>
parents: 2478
diff changeset
2 from rhodecode.model.repo import RepoModel
2b6939a77052 Bumped mercurial version to 2.3
Marcin Kuzminski <marcin@python-works.com>
parents: 2478
diff changeset
3 from rhodecode.model.meta import Session
2b6939a77052 Bumped mercurial version to 2.3
Marcin Kuzminski <marcin@python-works.com>
parents: 2478
diff changeset
4 from rhodecode.model.db import Repository
2b6939a77052 Bumped mercurial version to 2.3
Marcin Kuzminski <marcin@python-works.com>
parents: 2478
diff changeset
5 from rhodecode.model.scm import ScmModel
2b6939a77052 Bumped mercurial version to 2.3
Marcin Kuzminski <marcin@python-works.com>
parents: 2478
diff changeset
6 from rhodecode.lib.vcs.backends.base import EmptyChangeset
3645
aef5f5ce5ead use fixtures for forking
Marcin Kuzminski <marcin@python-works.com>
parents: 3486
diff changeset
7 from rhodecode.tests.fixture import Fixture
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
8
3645
aef5f5ce5ead use fixtures for forking
Marcin Kuzminski <marcin@python-works.com>
parents: 3486
diff changeset
9 fixture = Fixture()
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
10
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
11
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
12 def _commit_change(repo, filename, content, message, vcs_type, parent=None, newfile=False):
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
13 repo = Repository.get_by_repo_name(repo)
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
14 _cs = parent
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
15 if not parent:
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
16 _cs = EmptyChangeset(alias=vcs_type)
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
17
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
18 if newfile:
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
19 cs = ScmModel().create_node(
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
20 repo=repo.scm_instance, repo_name=repo.repo_name,
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
21 cs=_cs, user=TEST_USER_ADMIN_LOGIN,
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
22 author=TEST_USER_ADMIN_LOGIN,
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
23 message=message,
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
24 content=content,
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
25 f_path=filename
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
26 )
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
27 else:
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
28 cs = ScmModel().commit_change(
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
29 repo=repo.scm_instance, repo_name=repo.repo_name,
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
30 cs=parent, user=TEST_USER_ADMIN_LOGIN,
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
31 author=TEST_USER_ADMIN_LOGIN,
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
32 message=message,
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
33 content=content,
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
34 f_path=filename
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
35 )
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
36 return cs
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
37
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
38
2241
b2a2868d7bec Basic compare-view controller with ref parsing
Marcin Kuzminski <marcin@python-works.com>
parents:
diff changeset
39 class TestCompareController(TestController):
b2a2868d7bec Basic compare-view controller with ref parsing
Marcin Kuzminski <marcin@python-works.com>
parents:
diff changeset
40
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
41 def setUp(self):
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
42 self.r1_id = None
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
43 self.r2_id = None
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
44
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
45 def tearDown(self):
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
46 if self.r2_id:
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
47 RepoModel().delete(self.r2_id)
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
48 if self.r1_id:
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
49 RepoModel().delete(self.r1_id)
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
50 Session().commit()
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
51 Session.remove()
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
52
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
53 def test_compare_forks_on_branch_extra_commits_hg(self):
2684
2b6939a77052 Bumped mercurial version to 2.3
Marcin Kuzminski <marcin@python-works.com>
parents: 2478
diff changeset
54 self.log_user()
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
55 repo1 = RepoModel().create_repo(repo_name='one', repo_type='hg',
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
56 description='diff-test',
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
57 owner=TEST_USER_ADMIN_LOGIN)
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
58 Session().commit()
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
59 self.r1_id = repo1.repo_id
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
60 #commit something !
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
61 cs0 = _commit_change(repo1.repo_name, filename='file1', content='line1\n',
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
62 message='commit1', vcs_type='hg', parent=None, newfile=True)
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
63
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
64 #fork this repo
3645
aef5f5ce5ead use fixtures for forking
Marcin Kuzminski <marcin@python-works.com>
parents: 3486
diff changeset
65 repo2 = fixture.create_fork('one', 'one-fork')
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
66 self.r2_id = repo2.repo_id
2684
2b6939a77052 Bumped mercurial version to 2.3
Marcin Kuzminski <marcin@python-works.com>
parents: 2478
diff changeset
67
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
68 #add two extra commit into fork
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
69 cs1 = _commit_change(repo2.repo_name, filename='file1', content='line1\nline2\n',
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
70 message='commit2', vcs_type='hg', parent=cs0)
2684
2b6939a77052 Bumped mercurial version to 2.3
Marcin Kuzminski <marcin@python-works.com>
parents: 2478
diff changeset
71
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
72 cs2 = _commit_change(repo2.repo_name, filename='file1', content='line1\nline2\nline3\n',
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
73 message='commit3', vcs_type='hg', parent=cs1)
3015
16af24982e30 Multiple changes for compare system
Marcin Kuzminski <marcin@python-works.com>
parents: 2907
diff changeset
74
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
75 rev1 = 'default'
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
76 rev2 = 'default'
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
77
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
78 response = self.app.get(url(controller='compare', action='index',
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
79 repo_name=repo1.repo_name,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
80 org_ref_type="branch",
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
81 org_ref=rev2,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
82 other_repo=repo2.repo_name,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
83 other_ref_type="branch",
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
84 other_ref=rev1,
3486
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
85 merge='1',
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
86 ))
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
87
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
88 response.mustcontain('%s@%s -&gt; %s@%s' % (repo1.repo_name, rev2, repo2.repo_name, rev1))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
89 response.mustcontain("""Showing 2 commits""")
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
90 response.mustcontain("""1 file changed with 2 insertions and 0 deletions""")
3015
16af24982e30 Multiple changes for compare system
Marcin Kuzminski <marcin@python-works.com>
parents: 2907
diff changeset
91
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
92 response.mustcontain("""<div class="message tooltip" title="commit2" style="white-space:normal">commit2</div>""")
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
93 response.mustcontain("""<div class="message tooltip" title="commit3" style="white-space:normal">commit3</div>""")
3015
16af24982e30 Multiple changes for compare system
Marcin Kuzminski <marcin@python-works.com>
parents: 2907
diff changeset
94
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
95 response.mustcontain("""<a href="/%s/changeset/%s">r1:%s</a>""" % (repo2.repo_name, cs1.raw_id, cs1.short_id))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
96 response.mustcontain("""<a href="/%s/changeset/%s">r2:%s</a>""" % (repo2.repo_name, cs2.raw_id, cs2.short_id))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
97 ## files
3486
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
98 response.mustcontain("""<a href="/%s/compare/branch@%s...branch@%s?other_repo=%s&amp;merge=1#C--826e8142e6ba">file1</a>""" % (repo1.repo_name, rev2, rev1, repo2.repo_name))
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
99 #swap
3486
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
100 response.mustcontain("""<a href="/%s/compare/branch@%s...branch@%s?other_repo=%s&amp;merge=True">[swap]</a>""" % (repo2.repo_name, rev1, rev2, repo1.repo_name))
3029
685ebc84c2e9 White space cleanup
Marcin Kuzminski <marcin@python-works.com>
parents: 3026
diff changeset
101
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
102 def test_compare_forks_on_branch_extra_commits_origin_has_incomming_hg(self):
3015
16af24982e30 Multiple changes for compare system
Marcin Kuzminski <marcin@python-works.com>
parents: 2907
diff changeset
103 self.log_user()
16af24982e30 Multiple changes for compare system
Marcin Kuzminski <marcin@python-works.com>
parents: 2907
diff changeset
104
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
105 repo1 = RepoModel().create_repo(repo_name='one', repo_type='hg',
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
106 description='diff-test',
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
107 owner=TEST_USER_ADMIN_LOGIN)
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
108 Session().commit()
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
109 self.r1_id = repo1.repo_id
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
110
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
111 #commit something !
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
112 cs0 = _commit_change(repo1.repo_name, filename='file1', content='line1\n',
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
113 message='commit1', vcs_type='hg', parent=None, newfile=True)
3015
16af24982e30 Multiple changes for compare system
Marcin Kuzminski <marcin@python-works.com>
parents: 2907
diff changeset
114
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
115 #fork this repo
3645
aef5f5ce5ead use fixtures for forking
Marcin Kuzminski <marcin@python-works.com>
parents: 3486
diff changeset
116 repo2 = fixture.create_fork('one', 'one-fork')
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
117 self.r2_id = repo2.repo_id
3015
16af24982e30 Multiple changes for compare system
Marcin Kuzminski <marcin@python-works.com>
parents: 2907
diff changeset
118
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
119 #now commit something to origin repo
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
120 cs1_prim = _commit_change(repo1.repo_name, filename='file2', content='line1file2\n',
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
121 message='commit2', vcs_type='hg', parent=cs0, newfile=True)
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
122
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
123 #add two extra commit into fork
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
124 cs1 = _commit_change(repo2.repo_name, filename='file1', content='line1\nline2\n',
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
125 message='commit2', vcs_type='hg', parent=cs0)
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
126
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
127 cs2 = _commit_change(repo2.repo_name, filename='file1', content='line1\nline2\nline3\n',
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
128 message='commit3', vcs_type='hg', parent=cs1)
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
129
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
130 rev1 = 'default'
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
131 rev2 = 'default'
2684
2b6939a77052 Bumped mercurial version to 2.3
Marcin Kuzminski <marcin@python-works.com>
parents: 2478
diff changeset
132
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
133 response = self.app.get(url(controller='compare', action='index',
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
134 repo_name=repo1.repo_name,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
135 org_ref_type="branch",
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
136 org_ref=rev2,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
137 other_repo=repo2.repo_name,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
138 other_ref_type="branch",
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
139 other_ref=rev1,
3486
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
140 merge='x',
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
141 ))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
142 response.mustcontain('%s@%s -&gt; %s@%s' % (repo1.repo_name, rev2, repo2.repo_name, rev1))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
143 response.mustcontain("""Showing 2 commits""")
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
144 response.mustcontain("""1 file changed with 2 insertions and 0 deletions""")
2684
2b6939a77052 Bumped mercurial version to 2.3
Marcin Kuzminski <marcin@python-works.com>
parents: 2478
diff changeset
145
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
146 response.mustcontain("""<div class="message tooltip" title="commit2" style="white-space:normal">commit2</div>""")
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
147 response.mustcontain("""<div class="message tooltip" title="commit3" style="white-space:normal">commit3</div>""")
2684
2b6939a77052 Bumped mercurial version to 2.3
Marcin Kuzminski <marcin@python-works.com>
parents: 2478
diff changeset
148
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
149 response.mustcontain("""<a href="/%s/changeset/%s">r1:%s</a>""" % (repo2.repo_name, cs1.raw_id, cs1.short_id))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
150 response.mustcontain("""<a href="/%s/changeset/%s">r2:%s</a>""" % (repo2.repo_name, cs2.raw_id, cs2.short_id))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
151 ## files
3486
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
152 response.mustcontain("""<a href="/%s/compare/branch@%s...branch@%s?other_repo=%s&amp;merge=x#C--826e8142e6ba">file1</a>""" % (repo1.repo_name, rev2, rev1, repo2.repo_name))
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
153 #swap
3486
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
154 response.mustcontain("""<a href="/%s/compare/branch@%s...branch@%s?other_repo=%s&amp;merge=True">[swap]</a>""" % (repo2.repo_name, rev1, rev2, repo1.repo_name))
2684
2b6939a77052 Bumped mercurial version to 2.3
Marcin Kuzminski <marcin@python-works.com>
parents: 2478
diff changeset
155
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
156 def test_compare_cherry_pick_changesets_from_bottom(self):
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
157
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
158 # repo1:
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
159 # cs0:
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
160 # cs1:
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
161 # repo1-fork- in which we will cherry pick bottom changesets
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
162 # cs0:
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
163 # cs1:
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
164 # cs2: x
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
165 # cs3: x
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
166 # cs4: x
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
167 # cs5:
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
168 #make repo1, and cs1+cs2
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
169 self.log_user()
3023
c2a206162062 Basic implementation of cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3015
diff changeset
170
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
171 repo1 = RepoModel().create_repo(repo_name='repo1', repo_type='hg',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
172 description='diff-test',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
173 owner=TEST_USER_ADMIN_LOGIN)
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
174 Session().commit()
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
175 self.r1_id = repo1.repo_id
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
176
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
177 #commit something !
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
178 cs0 = _commit_change(repo1.repo_name, filename='file1', content='line1\n',
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
179 message='commit1', vcs_type='hg', parent=None,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
180 newfile=True)
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
181 cs1 = _commit_change(repo1.repo_name, filename='file1', content='line1\nline2\n',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
182 message='commit2', vcs_type='hg', parent=cs0)
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
183 #fork this repo
3645
aef5f5ce5ead use fixtures for forking
Marcin Kuzminski <marcin@python-works.com>
parents: 3486
diff changeset
184 repo2 = fixture.create_fork('repo1', 'repo1-fork')
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
185 self.r2_id = repo2.repo_id
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
186 #now make cs3-6
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
187 cs2 = _commit_change(repo1.repo_name, filename='file1', content='line1\nline2\nline3\n',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
188 message='commit3', vcs_type='hg', parent=cs1)
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
189 cs3 = _commit_change(repo1.repo_name, filename='file1', content='line1\nline2\nline3\nline4\n',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
190 message='commit4', vcs_type='hg', parent=cs2)
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
191 cs4 = _commit_change(repo1.repo_name, filename='file1', content='line1\nline2\nline3\nline4\nline5\n',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
192 message='commit5', vcs_type='hg', parent=cs3)
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
193 cs5 = _commit_change(repo1.repo_name, filename='file1', content='line1\nline2\nline3\nline4\nline5\nline6\n',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
194 message='commit6', vcs_type='hg', parent=cs4)
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
195
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
196 response = self.app.get(url(controller='compare', action='index',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
197 repo_name=repo2.repo_name,
3484
75e563531350 compare: drop unused rev_start and rev_end
Mads Kiilerich <madski@unity3d.com>
parents: 3442
diff changeset
198 org_ref_type="rev",
75e563531350 compare: drop unused rev_start and rev_end
Mads Kiilerich <madski@unity3d.com>
parents: 3442
diff changeset
199 org_ref=cs1.short_id, # parent of cs2, in repo2
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
200 other_repo=repo1.repo_name,
3484
75e563531350 compare: drop unused rev_start and rev_end
Mads Kiilerich <madski@unity3d.com>
parents: 3442
diff changeset
201 other_ref_type="rev",
75e563531350 compare: drop unused rev_start and rev_end
Mads Kiilerich <madski@unity3d.com>
parents: 3442
diff changeset
202 other_ref=cs4.short_id,
3486
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
203 merge='True',
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
204 ))
3484
75e563531350 compare: drop unused rev_start and rev_end
Mads Kiilerich <madski@unity3d.com>
parents: 3442
diff changeset
205 response.mustcontain('%s@%s -&gt; %s@%s' % (repo2.repo_name, cs1.short_id, repo1.repo_name, cs4.short_id))
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
206 response.mustcontain("""Showing 3 commits""")
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
207 response.mustcontain("""1 file changed with 3 insertions and 0 deletions""")
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
208
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
209 response.mustcontain("""<div class="message tooltip" title="commit3" style="white-space:normal">commit3</div>""")
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
210 response.mustcontain("""<div class="message tooltip" title="commit4" style="white-space:normal">commit4</div>""")
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
211 response.mustcontain("""<div class="message tooltip" title="commit5" style="white-space:normal">commit5</div>""")
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
212
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
213 response.mustcontain("""<a href="/%s/changeset/%s">r2:%s</a>""" % (repo1.repo_name, cs2.raw_id, cs2.short_id))
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
214 response.mustcontain("""<a href="/%s/changeset/%s">r3:%s</a>""" % (repo1.repo_name, cs3.raw_id, cs3.short_id))
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
215 response.mustcontain("""<a href="/%s/changeset/%s">r4:%s</a>""" % (repo1.repo_name, cs4.raw_id, cs4.short_id))
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
216 ## files
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
217 response.mustcontain("""#C--826e8142e6ba">file1</a>""")
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
218
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
219 def test_compare_cherry_pick_changesets_from_top(self):
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
220 # repo1:
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
221 # cs0:
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
222 # cs1:
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
223 # repo1-fork- in which we will cherry pick bottom changesets
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
224 # cs0:
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
225 # cs1:
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
226 # cs2:
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
227 # cs3: x
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
228 # cs4: x
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
229 # cs5: x
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
230 #
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
231 #make repo1, and cs1+cs2
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
232 self.log_user()
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
233 repo1 = RepoModel().create_repo(repo_name='repo1', repo_type='hg',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
234 description='diff-test',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
235 owner=TEST_USER_ADMIN_LOGIN)
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
236 Session().commit()
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
237 self.r1_id = repo1.repo_id
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
238
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
239 #commit something !
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
240 cs0 = _commit_change(repo1.repo_name, filename='file1', content='line1\n',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
241 message='commit1', vcs_type='hg', parent=None,
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
242 newfile=True)
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
243 cs1 = _commit_change(repo1.repo_name, filename='file1', content='line1\nline2\n',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
244 message='commit2', vcs_type='hg', parent=cs0)
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
245 #fork this repo
3645
aef5f5ce5ead use fixtures for forking
Marcin Kuzminski <marcin@python-works.com>
parents: 3486
diff changeset
246 repo2 = fixture.create_fork('repo1', 'repo1-fork')
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
247 self.r2_id = repo2.repo_id
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
248 #now make cs3-6
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
249 cs2 = _commit_change(repo1.repo_name, filename='file1', content='line1\nline2\nline3\n',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
250 message='commit3', vcs_type='hg', parent=cs1)
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
251 cs3 = _commit_change(repo1.repo_name, filename='file1', content='line1\nline2\nline3\nline4\n',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
252 message='commit4', vcs_type='hg', parent=cs2)
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
253 cs4 = _commit_change(repo1.repo_name, filename='file1', content='line1\nline2\nline3\nline4\nline5\n',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
254 message='commit5', vcs_type='hg', parent=cs3)
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
255 cs5 = _commit_change(repo1.repo_name, filename='file1', content='line1\nline2\nline3\nline4\nline5\nline6\n',
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
256 message='commit6', vcs_type='hg', parent=cs4)
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
257 response = self.app.get(url(controller='compare', action='index',
3484
75e563531350 compare: drop unused rev_start and rev_end
Mads Kiilerich <madski@unity3d.com>
parents: 3442
diff changeset
258 repo_name=repo1.repo_name,
75e563531350 compare: drop unused rev_start and rev_end
Mads Kiilerich <madski@unity3d.com>
parents: 3442
diff changeset
259 org_ref_type="rev",
75e563531350 compare: drop unused rev_start and rev_end
Mads Kiilerich <madski@unity3d.com>
parents: 3442
diff changeset
260 org_ref=cs2.short_id, # parent of cs3, not in repo2
75e563531350 compare: drop unused rev_start and rev_end
Mads Kiilerich <madski@unity3d.com>
parents: 3442
diff changeset
261 other_ref_type="rev",
75e563531350 compare: drop unused rev_start and rev_end
Mads Kiilerich <madski@unity3d.com>
parents: 3442
diff changeset
262 other_ref=cs5.short_id,
3486
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
263 merge='1',
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
264 ))
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
265
3484
75e563531350 compare: drop unused rev_start and rev_end
Mads Kiilerich <madski@unity3d.com>
parents: 3442
diff changeset
266 response.mustcontain('%s@%s -&gt; %s@%s' % (repo1.repo_name, cs2.short_id, repo1.repo_name, cs5.short_id))
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
267 response.mustcontain("""Showing 3 commits""")
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
268 response.mustcontain("""1 file changed with 3 insertions and 0 deletions""")
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
269
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
270 response.mustcontain("""<div class="message tooltip" title="commit4" style="white-space:normal">commit4</div>""")
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
271 response.mustcontain("""<div class="message tooltip" title="commit5" style="white-space:normal">commit5</div>""")
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
272 response.mustcontain("""<div class="message tooltip" title="commit6" style="white-space:normal">commit6</div>""")
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
273
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
274 response.mustcontain("""<a href="/%s/changeset/%s">r3:%s</a>""" % (repo1.repo_name, cs3.raw_id, cs3.short_id))
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
275 response.mustcontain("""<a href="/%s/changeset/%s">r4:%s</a>""" % (repo1.repo_name, cs4.raw_id, cs4.short_id))
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
276 response.mustcontain("""<a href="/%s/changeset/%s">r5:%s</a>""" % (repo1.repo_name, cs5.raw_id, cs5.short_id))
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
277 ## files
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
278 response.mustcontain("""#C--826e8142e6ba">file1</a>""")
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
279
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
280 def test_compare_cherry_pick_changeset_mixed_branches(self):
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
281 """
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
282
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
283 """
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
284 pass
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
285 #TODO write this tastecase
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
286
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
287 def test_compare_remote_branches_hg(self):
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
288 self.log_user()
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
289
3645
aef5f5ce5ead use fixtures for forking
Marcin Kuzminski <marcin@python-works.com>
parents: 3486
diff changeset
290 repo2 = fixture.create_fork(HG_REPO, HG_FORK)
3380
01fe360a66c0 fixed pull-requests with cherry picking changesets
Marcin Kuzminski <marcin@python-works.com>
parents: 3379
diff changeset
291 self.r2_id = repo2.repo_id
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
292 rev1 = '56349e29c2af'
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
293 rev2 = '7d4bc8ec6be5'
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
294
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
295 response = self.app.get(url(controller='compare', action='index',
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
296 repo_name=HG_REPO,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
297 org_ref_type="rev",
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
298 org_ref=rev1,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
299 other_ref_type="rev",
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
300 other_ref=rev2,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
301 other_repo=HG_FORK,
3486
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
302 merge='1',
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
303 ))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
304 response.mustcontain('%s@%s -&gt; %s@%s' % (HG_REPO, rev1, HG_FORK, rev2))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
305 ## outgoing changesets between those revisions
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
306
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
307 response.mustcontain("""<a href="/%s/changeset/2dda4e345facb0ccff1a191052dd1606dba6781d">r4:2dda4e345fac</a>""" % (HG_FORK))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
308 response.mustcontain("""<a href="/%s/changeset/6fff84722075f1607a30f436523403845f84cd9e">r5:6fff84722075</a>""" % (HG_FORK))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
309 response.mustcontain("""<a href="/%s/changeset/7d4bc8ec6be56c0f10425afb40b6fc315a4c25e7">r6:%s</a>""" % (HG_FORK, rev2))
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
310
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
311 ## files
3486
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
312 response.mustcontain("""<a href="/%s/compare/rev@%s...rev@%s?other_repo=%s&amp;merge=1#C--9c390eb52cd6">vcs/backends/hg.py</a>""" % (HG_REPO, rev1, rev2, HG_FORK))
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
313 response.mustcontain("""<a href="/%s/compare/rev@%s...rev@%s?other_repo=%s&amp;merge=1#C--41b41c1f2796">vcs/backends/__init__.py</a>""" % (HG_REPO, rev1, rev2, HG_FORK))
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
314 response.mustcontain("""<a href="/%s/compare/rev@%s...rev@%s?other_repo=%s&amp;merge=1#C--2f574d260608">vcs/backends/base.py</a>""" % (HG_REPO, rev1, rev2, HG_FORK))
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
315
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
316 def test_org_repo_new_commits_after_forking_simple_diff(self):
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
317 self.log_user()
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
318
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
319 repo1 = RepoModel().create_repo(repo_name='one', repo_type='hg',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
320 description='diff-test',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
321 owner=TEST_USER_ADMIN_LOGIN)
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
322
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
323 Session().commit()
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
324 self.r1_id = repo1.repo_id
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
325 r1_name = repo1.repo_name
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
326
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
327 #commit something initially !
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
328 cs0 = ScmModel().create_node(
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
329 repo=repo1.scm_instance, repo_name=r1_name,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
330 cs=EmptyChangeset(alias='hg'), user=TEST_USER_ADMIN_LOGIN,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
331 author=TEST_USER_ADMIN_LOGIN,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
332 message='commit1',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
333 content='line1',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
334 f_path='file1'
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
335 )
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
336 Session().commit()
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
337 self.assertEqual(repo1.scm_instance.revisions, [cs0.raw_id])
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
338 #fork the repo1
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
339 repo2 = RepoModel().create_repo(repo_name='one-fork', repo_type='hg',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
340 description='compare-test',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
341 clone_uri=repo1.repo_full_path,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
342 owner=TEST_USER_ADMIN_LOGIN, fork_of='one')
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
343 Session().commit()
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
344 self.assertEqual(repo2.scm_instance.revisions, [cs0.raw_id])
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
345 self.r2_id = repo2.repo_id
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
346 r2_name = repo2.repo_name
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
347
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
348 #make 3 new commits in fork
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
349 cs1 = ScmModel().create_node(
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
350 repo=repo2.scm_instance, repo_name=r2_name,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
351 cs=repo2.scm_instance[-1], user=TEST_USER_ADMIN_LOGIN,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
352 author=TEST_USER_ADMIN_LOGIN,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
353 message='commit1-fork',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
354 content='file1-line1-from-fork',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
355 f_path='file1-fork'
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
356 )
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
357 cs2 = ScmModel().create_node(
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
358 repo=repo2.scm_instance, repo_name=r2_name,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
359 cs=cs1, user=TEST_USER_ADMIN_LOGIN,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
360 author=TEST_USER_ADMIN_LOGIN,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
361 message='commit2-fork',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
362 content='file2-line1-from-fork',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
363 f_path='file2-fork'
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
364 )
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
365 cs3 = ScmModel().create_node(
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
366 repo=repo2.scm_instance, repo_name=r2_name,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
367 cs=cs2, user=TEST_USER_ADMIN_LOGIN,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
368 author=TEST_USER_ADMIN_LOGIN,
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
369 message='commit3-fork',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
370 content='file3-line1-from-fork',
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
371 f_path='file3-fork'
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
372 )
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
373
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
374 #compare !
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
375 rev1 = 'default'
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
376 rev2 = 'default'
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
377
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
378 response = self.app.get(url(controller='compare', action='index',
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
379 repo_name=r2_name,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
380 org_ref_type="branch",
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
381 org_ref=rev1,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
382 other_ref_type="branch",
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
383 other_ref=rev2,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
384 other_repo=r1_name,
3486
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
385 merge='1',
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
386 ))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
387 response.mustcontain('%s@%s -&gt; %s@%s' % (r2_name, rev1, r1_name, rev2))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
388 response.mustcontain('No files')
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
389 response.mustcontain('No changesets')
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
390
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
391 #add new commit into parent !
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
392 cs0 = ScmModel().create_node(
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
393 repo=repo1.scm_instance, repo_name=r1_name,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
394 cs=EmptyChangeset(alias='hg'), user=TEST_USER_ADMIN_LOGIN,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
395 author=TEST_USER_ADMIN_LOGIN,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
396 message='commit2-parent',
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
397 content='line1-added-after-fork',
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
398 f_path='file2'
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
399 )
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
400 #compare !
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
401 rev1 = 'default'
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
402 rev2 = 'default'
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
403 response = self.app.get(url(controller='compare', action='index',
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
404 repo_name=r2_name,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
405 org_ref_type="branch",
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
406 org_ref=rev1,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
407 other_ref_type="branch",
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
408 other_ref=rev2,
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
409 other_repo=r1_name,
3486
2053053e0882 compare/pullrequest: introduce merge parameter
Mads Kiilerich <madski@unity3d.com>
parents: 3484
diff changeset
410 merge='1',
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
411 ))
3331
0379e15f0b85 added some failing tests for compare using cherry pick changesets, to be fixed later
Marcin Kuzminski <marcin@python-works.com>
parents: 3322
diff changeset
412
3379
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
413 response.mustcontain('%s@%s -&gt; %s@%s' % (r2_name, rev1, r1_name, rev2))
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
414
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
415 response.mustcontain("""commit2-parent""")
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
416 response.mustcontain("""1 file changed with 1 insertions and 0 deletions""")
8171dfafb5db some tests fixes for compare view
Marcin Kuzminski <marcin@python-works.com>
parents: 3338
diff changeset
417 response.mustcontain("""line1-added-after-fork""")