diff --git a/generate/input/descriptor.json b/generate/input/descriptor.json index 92772180c..07bb84650 100644 --- a/generate/input/descriptor.json +++ b/generate/input/descriptor.json @@ -3312,7 +3312,20 @@ "ignore": true }, "git_remote_rename": { - "ignore": true + "isAsync": true, + "args": { + "problems": { + "isReturn": true, + "shouldAlloc": true, + "cppClassName": "Array", + "jsClassName": "Array", + "size": "count", + "key": "strings" + } + }, + "return": { + "isErrorCode": true + } }, "git_remote_push": { "isAsync": true, diff --git a/test/tests/remote.js b/test/tests/remote.js index e5d4eed1f..a57c89ad2 100644 --- a/test/tests/remote.js +++ b/test/tests/remote.js @@ -101,6 +101,31 @@ describe("Remote", function() { }); }); + it("can rename a remote", function() { + var repository = this.repository; + + return Remote.list(repository) + .then(function(remoteNames) { + assert.deepEqual(remoteNames, ["origin"]); + return Remote.rename(repository, "origin", "origin2"); + }) + .then(function(problems) { + assert.deepEqual(problems, []); + return Remote.list(repository); + }) + .then(function(remoteNames) { + assert.deepEqual(remoteNames, ["origin2"]); + return Remote.rename(repository, "origin2", "origin"); + }) + .then(function(problems) { + assert.deepEqual(problems, []); + return Remote.list(repository); + }) + .then(function(remoteNames) { + assert.deepEqual(remoteNames, ["origin"]); + }); + }); + it("can delete a remote", function() { var repository = this.repository;