示例#1
0
    def test_get_acc_cont_obj(self, mock_xattr):
        pickled_metadata = pickle.dumps({'name': '/account/container/object'})
        mock_xattr.side_effect = [pickled_metadata, IOError]
        fm = FileMover(self.dummy_options)

        with mock.patch('__builtin__.open') as mock_open:
            info = fm._get_acc_cont_obj("filename")
            mock_open.assert_called_with("filename")
            self.assertEqual(info.get('account'), 'account')
            self.assertEqual(info.get('container'), 'container')
            self.assertEqual(info.get('object'), 'object')
示例#2
0
    def test_move_file(self, mock_rename, mock_makedirs):
        fm = FileMover(self.dummy_options)

        with self.assertRaises(Exception):
            fm._move_file("filename", "dummy")

        fm._get_acc_cont_obj = mock.Mock()
        info = {'account': 'account',
                'container': 'container',
                'object': 'object'}
        fm._get_acc_cont_obj.return_value = info

        fm._move_file("node/objects/0/obj.data", "objects")

        mock_rename.assert_called_with('node/objects/0/obj.data',
                                       'node/objects/61/obj.data')
        mock_makedirs.assert_called_with('node/objects/61')