Пример #1
0
 def test_makereadonly_dir(self):
     temp = tempfile.mkdtemp()
     try:
         self.assertTrue(is_writable(temp))
         make_readonly(temp)
         self.assertFalse(is_writable(temp))
     finally:
         rmtree_readonly(temp)
Пример #2
0
 def test_makereadonly_dir(self):
     temp = tempfile.mkdtemp()
     try:
         self.assertTrue(is_writable(temp))
         make_readonly(temp)
         self.assertFalse(is_writable(temp))
     finally:
         rmtree_readonly(temp)
Пример #3
0
 def test_makereadonly_dir(self):
     temp = tempfile.mkdtemp()
     try:
         path = Path(temp)
         self.assertTrue(stat.S_IWUSR & path.stat()[stat.ST_MODE])
         make_readonly(temp)
         self.assertFalse(stat.S_IWUSR & path.stat()[stat.ST_MODE])
     finally:
         rmtree_readonly(temp)
Пример #4
0
 def test_rmtree_readonly(self):
     d = tempfile.mkdtemp()
     path = Path(d)
     try:
         (path / 'a file').open('w')
         (path / 'a directory').mkdir()
         (path / 'a directory' / 'another file').open('w')
         make_readonly(path)
         self.assertTrue(path.is_dir())
     finally:
         rmtree_readonly(path)
         self.assertFalse(path.is_dir())
Пример #5
0
 def test_rmtree_readonly(self):
     d = tempfile.mkdtemp()
     path = Path(d)
     try:
         (path / 'a file').open('w')
         (path / 'a directory').mkdir()
         (path / 'a directory' / 'another file').open('w')
         make_readonly(path)
         self.assertTrue(path.is_dir())
     finally:
         rmtree_readonly(path)
         self.assertFalse(path.is_dir())
Пример #6
0
    def test_save_crops_read_only_directory(self):
        "Can't write crops to a read-only directory"
        # This case is doing more than simply testing filesystem behavour
        # because it tests the failure code in InselectImage
        temp = tempfile.mkdtemp()
        try:
            make_readonly(temp)

            i = InselectImage(TESTDATA / 'test_segment.png')
            with self.assertRaises(InselectError):
                i.save_crops([Rect(0, 0, 1, 1)], [Path(temp) / 'x.png'])
        finally:
            rmtree_readonly(temp)
Пример #7
0
    def test_save_crops_read_only_directory(self):
        "Can't write crops to a read-only directory"
        # This case is doing more than simply testing filesystem behavour
        # because it tests the failure code in InselectImage
        temp = tempfile.mkdtemp()
        try:
            make_readonly(temp)

            i = InselectImage(TESTDATA / 'test_segment.png')
            with self.assertRaises(InselectError):
                i.save_crops([Rect(0, 0, 1, 1)], [Path(temp) / 'x.png'])
        finally:
            rmtree_readonly(temp)
Пример #8
0
    def test_open_readonly_doc(self, mock_warning):
        "User is warned when opening a read-only inselect document"
        with temp_directory_with_files(TESTDATA / 'test_segment.inselect',
                                       TESTDATA / 'test_segment.png',
                                       ) as tempdir:
            make_readonly(tempdir / 'test_segment.inselect')
            self.window.open_file(tempdir / 'test_segment.inselect')

            self.assertTrue(mock_warning.called)
            expected = (u'The file [test_segment.inselect] is read-only.\n\n'
                        u'You will not be able to save any changes that you '
                        'make.')
            self.assertTrue(expected in mock_warning.call_args[0])
Пример #9
0
    def test_open_readonly_doc(self, mock_warning):
        "User is warned when opening a read-only inselect document"
        with temp_directory_with_files(
                TESTDATA / 'shapes.inselect',
                TESTDATA / 'shapes.png',
        ) as tempdir:
            make_readonly(tempdir / 'shapes.inselect')
            self.window.open_file(path=tempdir / 'shapes.inselect')

            self.assertTrue(mock_warning.called)
            expected = ('The file [shapes.inselect] is read-only.\n\n'
                        'You will not be able to save any changes that you '
                        'make.')
            self.assertTrue(expected in mock_warning.call_args[0])
Пример #10
0
    def test_thumbnail_read_only(self):
        "Can't write thumbnail to a read-only directory"
        # This case is doing more than simply testing filesystem behavour
        # because it tests the failure code in InselectDocument
        with temp_directory_with_files(TESTDATA / 'test_segment.png') as tempdir:
            mode = make_readonly(tempdir)

            self.assertRaises(
                InselectError, InselectDocument.new_from_scan,
                tempdir / 'test_segment.png', thumbnail_width_pixels=2048
            )

            # Restor the original mode
            tempdir.chmod(mode)
Пример #11
0
    def test_thumbnail_read_only(self):
        "Can't write thumbnail to a read-only directory"
        # This case is doing more than simply testing filesystem behavour
        # because it tests the failure code in InselectDocument
        with temp_directory_with_files(TESTDATA / 'shapes.png') as tempdir:
            mode = make_readonly(tempdir)

            self.assertRaises(InselectError,
                              InselectDocument.new_from_scan,
                              tempdir / 'shapes.png',
                              thumbnail_width_pixels=2048)

            # Restor the original mode
            tempdir.chmod(mode)
Пример #12
0
    def test_ensure_thumbnail_read_only(self):
        "Can't write thumbnail to a read-only directory"
        # This case is doing more than simply testing filesystem behavour
        # because it tests the failure code in InselectDocument
        source_doc = TESTDATA / 'test_segment.inselect'
        source_img = TESTDATA / 'test_segment.png'
        with temp_directory_with_files(source_doc, source_img) as tempdir:
            doc = InselectDocument.load(tempdir / 'test_segment.inselect')

            mode = make_readonly(tempdir)

            self.assertRaises(InselectError, doc.ensure_thumbnail)

            # Restor the original mode
            tempdir.chmod(mode)
Пример #13
0
 def test_makereadonly_file(self):
     f = tempfile.NamedTemporaryFile()
     path = Path(f.name)
     self.assertTrue(is_writable(path))
     make_readonly(path)
     self.assertFalse(is_writable(path))
Пример #14
0
 def test_makereadonly_file(self):
     f = tempfile.NamedTemporaryFile()
     path = Path(f.name)
     self.assertTrue(stat.S_IWUSR & path.stat()[stat.ST_MODE])
     make_readonly(path)
     self.assertFalse(stat.S_IWUSR & path.stat()[stat.ST_MODE])
Пример #15
0
 def test_makereadonly_file(self):
     f = tempfile.NamedTemporaryFile()
     path = Path(f.name)
     self.assertTrue(is_writable(path))
     make_readonly(path)
     self.assertFalse(is_writable(path))