annotate tests/test_fetch_exec.py @ 1347:759cafce6bec stable 1.8.3

editor: cope with slightly out-of-order editor drives As of Subversion 1.8, ra_serf replaces ra_neon as the only http remote access method. ra_serf does lots of clever network things, but as a side effect violates some of the legacy editor API. It turns out we were only barely using those guarantees, so it was straightforward to relax our constraints and work with serf. Prior to this change, attempting to use ra_serf would almost certainly result in an exception due to an out-of-order editor drive. See https://svn.apache.org/repos/asf/subversion/trunk/notes/api-errata/1.7/ra001.txt for more details of the Subversion change.
author Augie Fackler <raf@durin42.com>
date Sat, 26 Sep 2015 10:49:57 -0400
parents 449c61eeace7
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
643
d2ef7220a079 tests: import test_util as the first module in all relevant tests
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 158
diff changeset
1 import test_util
d2ef7220a079 tests: import test_util as the first module in all relevant tests
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 158
diff changeset
2
125
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
3 import unittest
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
4
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
5 from mercurial import node
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
6
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
7 class TestFetchExec(test_util.TestBase):
1063
449c61eeace7 test_fetch_exec: use metaclass stupid mode tests
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 1044
diff changeset
8 stupid_mode_tests = True
449c61eeace7 test_fetch_exec: use metaclass stupid mode tests
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 1044
diff changeset
9
125
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
10 def assertexec(self, ctx, files, isexec=True):
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
11 for f in files:
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
12 self.assertEqual(isexec, 'x' in ctx[f].flags())
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
13
1063
449c61eeace7 test_fetch_exec: use metaclass stupid mode tests
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 1044
diff changeset
14 def test_exec(self):
449c61eeace7 test_fetch_exec: use metaclass stupid mode tests
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 1044
diff changeset
15 repo = self._load_fixture_and_fetch('executebit.svndump')
125
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
16 self.assertexec(repo[0], ['text1', 'binary1', 'empty1'], True)
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
17 self.assertexec(repo[0], ['text2', 'binary2', 'empty2'], False)
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
18 self.assertexec(repo[1], ['text1', 'binary1', 'empty1'], False)
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
19 self.assertexec(repo[1], ['text2', 'binary2', 'empty2'], True)
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
20
1063
449c61eeace7 test_fetch_exec: use metaclass stupid mode tests
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 1044
diff changeset
21 def test_empty_prop_val_executable(self):
449c61eeace7 test_fetch_exec: use metaclass stupid mode tests
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 1044
diff changeset
22 repo = self._load_fixture_and_fetch('executable_file_empty_prop.svndump')
125
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
23 self.assertEqual(node.hex(repo['tip'].node()),
154
6fa97cfbf62f fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents: 125
diff changeset
24 '08e6b380bf291b361a418203a1cb9427213cd1fd')
125
c35f59aa200e Move and complete execute bit conversion tests into test_fetch_exec.py
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
25 self.assertEqual(repo['tip']['foo'].flags(), 'x')