15
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
"""Tests being able to ignore bad filetypes."""
18
"""Tests being able to ignore mad filetypes.
20
from cStringIO import StringIO
21
from bzrlib import ignores
22
from bzrlib.tests import TestCaseWithTransport
23
from bzrlib.errors import BadFileKindError
27
from bzrlib.status import show_tree_status
28
from bzrlib.tests import TestCaseWithTransport
31
26
def verify_status(tester, tree, value):
32
"""Verify the output of show_tree_status"""
27
from bzrlib.status import show_tree_status
28
from cStringIO import StringIO
34
31
show_tree_status(tree, to_file=tof)
36
tester.assertEqual(value, tof.readlines())
33
tester.assertEquals(tof.readlines(), value)
39
36
class TestBadFiles(TestCaseWithTransport):
41
38
def test_bad_files(self):
42
39
"""Test that bzr will ignore files it doesn't like"""
43
if getattr(os, 'mkfifo', None) is None:
44
# TODO: Ultimately this should be TestSkipped
45
# or PlatformDeficiency
40
from bzrlib.add import smart_add_tree
41
from bzrlib.branch import Branch
48
43
wt = self.make_branch_and_tree('.')
51
46
files = ['one', 'two', 'three']
52
file_ids = ['one-id', 'two-id', 'three-id']
53
47
self.build_tree(files)
54
wt.add(files, file_ids)
55
49
wt.commit("Commit one", rev_id="a@u-0-0")
50
self.build_tree(['four'])
52
wt.commit("Commit two", rev_id="a@u-0-1")
53
self.build_tree(['five'])
55
wt.commit("Commit three", rev_id="a@u-0-2")
57
57
# We should now have a few files, lets try to
58
58
# put some bogus stuff in the tree
60
# status with nothing changed
60
# We can only continue if we have mkfifo
61
if not hasattr(os, 'mkfifo'):
62
# TODO: Ultimately this should be TestSkipped
63
# or PlatformDeficiency
66
# Ignore the .bazaar/ home directory that is created
67
ignores._set_user_ignores(['./.bazaar'])
61
70
verify_status(self, wt, [])
63
72
os.mkfifo('a-fifo')