diff --git a/generate/input/descriptor.json b/generate/input/descriptor.json index 01f2a5f49..523d1e65e 100644 --- a/generate/input/descriptor.json +++ b/generate/input/descriptor.json @@ -1364,6 +1364,12 @@ "git_remote_default_branch": { "ignore": true }, + "git_remote_delete": { + "isAsync": true, + "return": { + "isErrorCode": true + } + }, "git_remote_fetch": { "args": { "reflog_message": { diff --git a/test/tests/remote.js b/test/tests/remote.js index 3b24f6a4b..9ac619af1 100644 --- a/test/tests/remote.js +++ b/test/tests/remote.js @@ -13,10 +13,16 @@ describe("Remote", function() { var url2 = "https://github.com/nodegit/test2"; function removeOrigins(repository) { - Remote.delete(repository, "origin1"); - Remote.delete(repository, "origin2"); - Remote.delete(repository, "origin3"); - Remote.delete(repository, "test2"); + return Promise.all([ + Remote.delete(repository, "origin1"), + Remote.delete(repository, "origin2"), + Remote.delete(repository, "origin3"), + Remote.delete(repository, "test2") + ]) + .catch(function() { + // We don't care if a remote was unable to be deleted. Just try to wipe + // everything and we'll start from a clean slate each time. + }); } beforeEach(function() { @@ -76,9 +82,10 @@ describe("Remote", function() { var repository = this.repository; Remote.create(repository, "origin3", url); - Remote.delete(repository, "origin3"); - - return Remote.lookup(repository, "origin3") + return Remote.delete(repository, "origin3") + .then(function() { + return Remote.lookup(repository, "origin3"); + }) .then(Promise.reject, Promise.resolve); }); @@ -131,7 +138,7 @@ describe("Remote", function() { .then(function() { assert.ok(wasCalled); - Remote.delete(repo, "test2"); + return Remote.delete(repo, "test2"); }); });