Mercurial > hgsubversion
view tests/test_svn_pre_commit_hooks.py @ 1518:09476d758b59
maps: handle sqlite lock error triggered by PRAGMA statements
"self._db.execute('PRAGMA cache_size=%d' % (-cachesize))" could raise
"OperationalError: database is locked". Therefore move PRAGMA statements
inside "self._transaction" which handles the "locked" error automatically.
author | Jun Wu <quark@fb.com> |
---|---|
date | Fri, 11 Aug 2017 09:24:29 -0700 |
parents | d741f536f23a |
children | cff81f35b31e |
line wrap: on
line source
import os import sys import test_util import unittest from mercurial import hg from mercurial import commands from mercurial import util class TestSvnPreCommitHooks(test_util.TestBase): def setUp(self): super(TestSvnPreCommitHooks, self).setUp() self.repo_path = self.load_and_fetch('single_rev.svndump')[1] # creating pre-commit hook that doesn't allow any commit hook_file_name = os.path.join( self.repo_path, 'hooks', 'pre-commit' ) hook_file = open(hook_file_name, 'w') hook_file.write( '#!/bin/sh\n' 'echo "Commits are not allowed" >&2; exit 1;\n' ) hook_file.close() os.chmod(hook_file_name, 0755) def test_push_with_pre_commit_hooks(self): changes = [('narf/a', 'narf/a', 'ohai',), ] self.commitchanges(changes) self.assertRaises(util.Abort, self.pushrevisions)