def create(self, tickets_json, mount_point, mount_label, **kw): if self.importer.enforce_limit(c.project): save_importer_upload(c.project, 'tickets.json', json.dumps(tickets_json)) self.importer.post( mount_point=mount_point, mount_label=mount_label, ) flash('Ticket import has begun. Your new tracker will be available ' 'when the import is complete.') redirect(c.project.url() + 'admin/') else: flash('There are too many imports pending at this time. Please wait and try again.', 'error') redirect(c.project.url() + 'admin/')
def test_save_importer_upload(giup, os): os.path.join = lambda *a: '/'.join(a) giup.return_value = 'path' os.makedirs.side_effect = OSError(errno.EEXIST, 'foo') _open = mock.MagicMock() fp = _open.return_value.__enter__.return_value with mock.patch('__builtin__.open', _open): base.save_importer_upload('project', 'file', 'data') os.makedirs.assert_called_once_with('path') _open.assert_called_once_with('path/file', 'w') fp.write.assert_called_once_with('data') os.makedirs.side_effect = OSError(errno.EACCES, 'foo') assert_raises(OSError, base.save_importer_upload, 'project', 'file', 'data')
def create(self, discussions_json, mount_point, mount_label, **kw): if self.importer.enforce_limit(c.project): save_importer_upload(c.project, 'discussions.json', json.dumps(discussions_json)) self.importer.post(mount_point=mount_point, mount_label=mount_label) flash( 'Discussion import has begun. Your new discussion will be available when the import is complete' ) else: flash( 'There are too many imports pending at this time. Please wait and try again.', 'error') redirect(c.project.url() + 'admin/')
def test_save_importer_upload(giup, os): os.path.join = lambda *a: "/".join(a) giup.return_value = "path" os.makedirs.side_effect = OSError(errno.EEXIST, "foo") _open = mock.MagicMock() fp = _open.return_value.__enter__.return_value with mock.patch("__builtin__.open", _open): base.save_importer_upload("project", "file", "data") os.makedirs.assert_called_once_with("path") _open.assert_called_once_with("path/file", "w") fp.write.assert_called_once_with("data") os.makedirs.side_effect = OSError(errno.EACCES, "foo") assert_raises(OSError, base.save_importer_upload, "project", "file", "data")