1
# Copyright (C) 2006 Canonical Ltd
2
# Copyright (C) 2008 Aaron Bentley <aaron@aaronbentley.com>
4
# This program is free software; you can redistribute it and/or modify
5
# it under the terms of the GNU General Public License as published by
6
# the Free Software Foundation; either version 2 of the License, or
7
# (at your option) any later version.
9
# This program is distributed in the hope that it will be useful,
10
# but WITHOUT ANY WARRANTY; without even the implied warranty of
11
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
# GNU General Public License for more details.
14
# You should have received a copy of the GNU General Public License
15
# along with this program; if not, write to the Free Software
16
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
from breezy.errors import BinaryFile
19
from breezy.patch import diff3, PatchInvokeError, run_patch
20
from breezy.tests import TestCaseInTempDir
23
class TestPatch(TestCaseInTempDir):
25
def test_diff3_binaries(self):
26
with open('this', 'wb') as f:
28
with open('other', 'wb') as f:
30
with open('base', 'wb') as f:
32
self.assertRaises(BinaryFile, diff3, 'unused', 'this', 'other', 'base')
35
class TestPatch(TestCaseInTempDir):
37
def test_missing_patch(self):
38
self.assertRaises(PatchInvokeError, run_patch, '.', [],
39
_patch_cmd='/unlikely/to/exist')