Add Remote.save method.
This commit is contained in:
20
src/remote.c
20
src/remote.c
@@ -215,8 +215,28 @@ Remote_fetch(Remote *self, PyObject *args)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
PyDoc_STRVAR(Remote_save__doc__,
|
||||||
|
"save()\n\n"
|
||||||
|
"Save a remote to its repository configuration.");
|
||||||
|
|
||||||
|
PyObject *
|
||||||
|
Remote_save(Remote *self, PyObject *args)
|
||||||
|
{
|
||||||
|
int err;
|
||||||
|
|
||||||
|
err = git_remote_save(self->remote);
|
||||||
|
if (err == GIT_OK) {
|
||||||
|
Py_RETURN_NONE;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return Error_set(err);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
PyMethodDef Remote_methods[] = {
|
PyMethodDef Remote_methods[] = {
|
||||||
METHOD(Remote, fetch, METH_NOARGS),
|
METHOD(Remote, fetch, METH_NOARGS),
|
||||||
|
METHOD(Remote, save, METH_NOARGS),
|
||||||
{NULL}
|
{NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -98,6 +98,18 @@ class RepositoryTest(utils.RepoTestCase):
|
|||||||
remote = self.repo.create_remote(name, url)
|
remote = self.repo.create_remote(name, url)
|
||||||
self.assertTrue(remote.name in [x.name for x in self.repo.remotes])
|
self.assertTrue(remote.name in [x.name for x in self.repo.remotes])
|
||||||
|
|
||||||
|
def test_remote_save(self):
|
||||||
|
remote = self.repo.remotes[0]
|
||||||
|
|
||||||
|
remote.name = 'new-name'
|
||||||
|
remote.url = 'http://example.com/test.git'
|
||||||
|
|
||||||
|
remote.save()
|
||||||
|
|
||||||
|
self.assertEqual('new-name', self.repo.remotes[0].name)
|
||||||
|
self.assertEqual('http://example.com/test.git',
|
||||||
|
self.repo.remotes[0].url)
|
||||||
|
|
||||||
|
|
||||||
class EmptyRepositoryTest(utils.EmptyRepoTestCase):
|
class EmptyRepositoryTest(utils.EmptyRepoTestCase):
|
||||||
def test_fetch(self):
|
def test_fetch(self):
|
||||||
|
Reference in New Issue
Block a user