Merge lp:~jelmer/bzr-builddeb/fix-do-tests into lp:bzr-builddeb

Proposed by Jelmer Vernooij
Status: Rejected
Rejected by: Jelmer Vernooij
Proposed branch: lp:~jelmer/bzr-builddeb/fix-do-tests
Merge into: lp:bzr-builddeb
Diff against target: 143 lines (+40/-37)
1 file modified
tests/blackbox/test_do.py (+40/-37)
To merge this branch: bzr merge lp:~jelmer/bzr-builddeb/fix-do-tests
Reviewer Review Type Date Requested Status
Bzr-builddeb-hackers code Pending
Review via email: mp+32335@code.launchpad.net

Description of the change

This fixes the bzr bd-do tests.

To post a comment you must log in.

Unmerged revisions

466. By Jelmer Vernooij

Fix tests in test_do.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'tests/blackbox/test_do.py'
2--- tests/blackbox/test_do.py 2010-07-30 01:25:51 +0000
3+++ tests/blackbox/test_do.py 2010-08-11 15:04:45 +0000
4@@ -60,14 +60,14 @@
5 c.add_change('')
6 return c
7
8- def make_unpacked_source(self):
9+ def make_unpacked_source(self, path):
10 """Create an unpacked source tree in a branch. Return the working tree"""
11- tree = self.make_branch_and_tree('.')
12+ tree = self.make_branch_and_tree(path)
13 cl_file = 'debian/changelog'
14 source_files = ['debian/'] + [cl_file]
15- self.build_tree(source_files)
16+ self.build_tree([os.path.join(path, n) for n in source_files])
17 c = self.make_changelog()
18- f = open(cl_file, 'wb')
19+ f = open(os.path.join(path, cl_file), 'wb')
20 try:
21 c.write_to_open_file(f)
22 finally:
23@@ -76,17 +76,18 @@
24 return tree
25
26 def make_merge_mode_config(self, tree):
27- os.mkdir('.bzr-builddeb/')
28- f = open('.bzr-builddeb/default.conf', 'wb')
29+ os.mkdir(os.path.join(tree.basedir, '.bzr-builddeb'))
30+ f = open(os.path.join(tree.basedir, '.bzr-builddeb/default.conf'), 'wb')
31 try:
32 f.write('[BUILDDEB]\nmerge = True\n')
33 finally:
34 f.close()
35 tree.add(['.bzr-builddeb/', '.bzr-builddeb/default.conf'])
36
37- def make_upstream_tarball(self):
38+ def make_upstream_tarball(self, path):
39+ os.makedirs(path)
40 self.build_tree(['test-0.1/', 'test-0.1/a'])
41- tar = tarfile.open(os.path.join('..', 'test_0.1.orig.tar.gz'),
42+ tar = tarfile.open(os.path.join(path, 'test_0.1.orig.tar.gz'),
43 'w:gz')
44 try:
45 tar.add('test-0.1')
46@@ -117,66 +118,68 @@
47 '/merge.html for more information.'], 'bd-do true')
48
49 def test_fails_no_changelog(self):
50- tree = self.make_branch_and_tree('.')
51+ tree = self.make_branch_and_tree('tree')
52 self.make_merge_mode_config(tree)
53- self.run_bzr_error(['Could not find changelog'], 'bd-do true')
54+ self.run_bzr_error(['Could not find changelog'], 'bd-do true',
55+ working_dir="tree")
56
57 def test_no_copy_on_fail(self):
58- tree = self.make_unpacked_source()
59+ tree = self.make_unpacked_source('tree')
60 self.make_merge_mode_config(tree)
61- self.make_upstream_tarball()
62+ self.make_upstream_tarball('tarballs')
63 self.run_bzr_error(['Not updating the working tree as the command '
64- 'failed.'], ['bd-do', 'touch debian/do && false'])
65- self.failIfExists('debian/do')
66+ 'failed.'], ['bd-do', 'touch debian/do && false'],
67+ working_dir="tree")
68+ self.failIfExists('tree/debian/do')
69
70 def test_copy_on_success(self):
71- tree = self.make_unpacked_source()
72+ tree = self.make_unpacked_source('tree')
73 self.make_merge_mode_config(tree)
74- self.make_upstream_tarball()
75- self.run_bzr(['bd-do', 'touch debian/do'])
76- self.failUnlessExists('debian/do')
77+ self.make_upstream_tarball('tarballs')
78+ self.run_bzr(['bd-do', 'touch debian/do'], working_dir="tree")
79+ self.failUnlessExists('tree/debian/do')
80
81 def test_removed_files_are_removed_in_branch(self):
82- tree = self.make_unpacked_source()
83+ tree = self.make_unpacked_source('tree')
84 self.make_merge_mode_config(tree)
85- self.make_upstream_tarball()
86- self.run_bzr(['bd-do', 'rm debian/changelog'])
87+ self.make_upstream_tarball('tarballs')
88+ self.run_bzr(['bd-do', 'rm debian/changelog'], working_dir="tree")
89 # It might be nice if this was actually gone, but that would involve
90 # either a comaparison, or removing all the files, but the latter is
91 # dangerous. I guess it's a TODO to implement the comparison.
92- self.failUnlessExists('debian/changelog')
93+ self.failUnlessExists('tree/debian/changelog')
94
95 def test_new_directories_created(self):
96- tree = self.make_unpacked_source()
97+ tree = self.make_unpacked_source('tree')
98 self.make_merge_mode_config(tree)
99- self.make_upstream_tarball()
100- self.run_bzr(['bd-do', 'mkdir debian/dir'])
101- self.failUnlessExists('debian/dir')
102+ self.make_upstream_tarball('tarballs')
103+ self.run_bzr(['bd-do', 'mkdir debian/dir'], working_dir="tree")
104+ self.failUnlessExists('tree/debian/dir')
105
106 def test_contents_taken_from_export(self):
107- tree = self.make_unpacked_source()
108+ tree = self.make_unpacked_source('tree')
109 self.make_merge_mode_config(tree)
110- self.make_upstream_tarball()
111- self.run_bzr(['bd-do', 'echo a > debian/changelog'])
112- self.assertFileEqual('a\n', 'debian/changelog')
113+ self.make_upstream_tarball('tarballs')
114+ self.run_bzr(['bd-do', 'echo a > debian/changelog'], working_dir="tree")
115+ self.assertFileEqual('a\n', 'tree/debian/changelog')
116
117 def test_export_purged(self):
118- tree = self.make_unpacked_source()
119+ tree = self.make_unpacked_source('tree')
120 self.make_merge_mode_config(tree)
121- self.make_upstream_tarball()
122- self.run_bzr(['bd-do', 'echo a > debian/changelog'])
123+ self.make_upstream_tarball('tarballs')
124+ self.run_bzr(['bd-do', 'echo a > debian/changelog'], working_dir="tree")
125 self.failIfExists(self.build_dir())
126
127 def test_uses_shell(self):
128- tree = self.make_unpacked_source()
129+ tree = self.make_unpacked_source('tree')
130 self.make_merge_mode_config(tree)
131- self.make_upstream_tarball()
132+ self.make_upstream_tarball('tarballs')
133 old_shell = os.environ['SHELL']
134 os.environ['SHELL'] = "touch debian/shell"
135 try:
136- self.run_bzr('bd-do')
137+ self.run_bzr('bd-do', working_dir="tree")
138 finally:
139 os.environ['SHELL'] = old_shell
140- self.failUnlessExists('debian/shell')
141+ self.failUnlessExists('tree/debian/shell')
142
143 # vim: ts=2 sts=2 sw=2

Subscribers

People subscribed via source and target branches