OLD | NEW |
1 # Copyright (C) 2010 Google Inc. All rights reserved. | 1 # Copyright (C) 2010 Google Inc. All rights reserved. |
2 # | 2 # |
3 # Redistribution and use in source and binary forms, with or without | 3 # Redistribution and use in source and binary forms, with or without |
4 # modification, are permitted provided that the following conditions | 4 # modification, are permitted provided that the following conditions |
5 # are met: | 5 # are met: |
6 # | 6 # |
7 # 1. Redistributions of source code must retain the above copyright | 7 # 1. Redistributions of source code must retain the above copyright |
8 # notice, this list of conditions and the following disclaimer. | 8 # notice, this list of conditions and the following disclaimer. |
9 # 2. Redistributions in binary form must reproduce the above copyright | 9 # 2. Redistributions in binary form must reproduce the above copyright |
10 # notice, this list of conditions and the following disclaimer in the | 10 # notice, this list of conditions and the following disclaimer in the |
11 # documentation and/or other materials provided with the distribution. | 11 # documentation and/or other materials provided with the distribution. |
12 # | 12 # |
13 # THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY | 13 # THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY |
14 # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | 14 # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
15 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | 15 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
16 # DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY | 16 # DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY |
17 # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | 17 # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
18 # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | 18 # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
19 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | 19 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND |
20 # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 20 # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
21 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | 21 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
22 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 22 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
23 | 23 |
24 import shutil | 24 import shutil |
25 import tempfile | 25 import tempfile |
26 import webkitpy.thirdparty.unittest2 as unittest | 26 import unittest |
27 import zipfile | 27 import zipfile |
28 | 28 |
29 from webkitpy.common.system.filesystem_mock import MockFileSystem | 29 from webkitpy.common.system.filesystem_mock import MockFileSystem |
30 from webkitpy.common.system.zipfileset import ZipFileSet | 30 from webkitpy.common.system.zipfileset import ZipFileSet |
31 | 31 |
32 | 32 |
33 class FakeZip(object): | 33 class FakeZip(object): |
34 def __init__(self, filesystem): | 34 def __init__(self, filesystem): |
35 self._filesystem = filesystem | 35 self._filesystem = filesystem |
36 self._files = {} | 36 self._files = {} |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
85 def test_deep_extract(self): | 85 def test_deep_extract(self): |
86 self._filesystem.maybe_make_directory('/some-dir') | 86 self._filesystem.maybe_make_directory('/some-dir') |
87 self._zip.extract('a/b/some-other-file', '/some-dir') | 87 self._zip.extract('a/b/some-other-file', '/some-dir') |
88 self.assertTrue(self._filesystem.isfile('/some-dir/a/b/some-other-file')
) | 88 self.assertTrue(self._filesystem.isfile('/some-dir/a/b/some-other-file')
) |
89 | 89 |
90 def test_cant_delete(self): | 90 def test_cant_delete(self): |
91 self.assertRaises(Exception, self._zip.delete, 'some-file') | 91 self.assertRaises(Exception, self._zip.delete, 'some-file') |
92 | 92 |
93 def test_namelist(self): | 93 def test_namelist(self): |
94 self.assertTrue('some-file' in self._zip.namelist()) | 94 self.assertTrue('some-file' in self._zip.namelist()) |
OLD | NEW |