From ed903e50e57a6c38224caa08d0d92ff119b19322 Mon Sep 17 00:00:00 2001 From: Maximiliano Korp Date: Tue, 3 Mar 2015 09:40:00 -0700 Subject: [PATCH 1/6] works now when loading via nodegit, direct requires (eg require../clone) broken --- generate/scripts/helpers.js | 3 +++ generate/templates/templates/nodegit.js | 23 +++++++++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/generate/scripts/helpers.js b/generate/scripts/helpers.js index 733e546a6..db8600ace 100644 --- a/generate/scripts/helpers.js +++ b/generate/scripts/helpers.js @@ -324,6 +324,9 @@ var Helpers = { } }).value(); + if ("git_" + typeDef.typeName == fnDef.cFunctionName) { + fnDef.useAsOnRootProto = true; + } _.merge(fnDef, _.omit(fnOverrides, "args", "return")); }, diff --git a/generate/templates/templates/nodegit.js b/generate/templates/templates/nodegit.js index 4c94df742..e01b3d2b9 100644 --- a/generate/templates/templates/nodegit.js +++ b/generate/templates/templates/nodegit.js @@ -66,6 +66,29 @@ var importExtension = function(name) { //must go last! require("./enums"); +/* jshint ignore:start */ +{% each . as idef %} + {% if idef.type != "enum" %} + {% each idef.functions as fn %} + + {% if fn.useAsOnRootProto %} + // Inherit directly from the original {{idef.jsClassName}} object. + _{{ idef.jsClassName }}.{{ fn.jsFunctionName }}.__proto__ = + _{{ idef.jsClassName }}; + + // Ensure we're using the correct prototype. + _{{ idef.jsClassName }}.{{ fn.jsFunctionName }}.prototype = + _{{ idef.jsClassName }}.prototype; + + // Assign the function as the root + rawApi.{{idef.jsClassName}} = + _{{ idef.jsClassName }}.{{ fn.jsFunctionName }}; + {% endif %} + {% endeach %} + {% endif %} +{% endeach %} +/* jshint ignore:end */ + // Wrap asynchronous methods to return promises. promisify(exports); From 9d4777be839e868e22b6a31934bfbf0b745719ec Mon Sep 17 00:00:00 2001 From: Maximiliano Korp Date: Tue, 3 Mar 2015 12:15:24 -0700 Subject: [PATCH 2/6] statusfile is not a function? and reset.reset not promisifying --- generate/templates/templates/enums.js | 3 ++- lib/clone.js | 6 ----- lib/reset.js | 20 +++------------ test/tests/attr.js | 7 +++--- test/tests/blob.js | 8 +++--- test/tests/branch.js | 5 ++-- test/tests/checkout.js | 5 ++-- test/tests/clone.js | 35 ++++++++++++++++++++------- test/tests/diff.js | 5 ++-- test/tests/index.js | 5 ++-- test/tests/odb.js | 7 +++--- test/tests/oid.js | 3 ++- test/tests/refs.js | 5 ++-- test/tests/remote.js | 4 +-- test/tests/repository.js | 9 ++++--- test/tests/reset.js | 5 ++-- test/tests/revwalk.js | 7 +++--- test/tests/signature.js | 5 ++-- test/tests/status.js | 5 ++-- test/tests/status_file.js | 5 ++-- test/tests/status_list.js | 7 +++--- test/tests/tag.js | 13 +++++----- test/tests/tree_entry.js | 5 ++-- 23 files changed, 99 insertions(+), 80 deletions(-) diff --git a/generate/templates/templates/enums.js b/generate/templates/templates/enums.js index 58a7b9946..edfc4992a 100644 --- a/generate/templates/templates/enums.js +++ b/generate/templates/templates/enums.js @@ -4,7 +4,8 @@ NodeGit.Enums = {}; {% each . as enumerable %} {% if not enumerable.ignore %} {% if enumerable.type == "enum" %} - NodeGit.{{ enumerable.owner }}.{{ enumerable.JsName }} = { + NodeGit.{{ enumerable.owner }}.{{ enumerable.JsName }} = + NodeGit.{{ enumerable.owner }}.__proto__.{{ enumerable.JsName }} = { {% each enumerable.values as value %} {{ value.JsName }}: {{ value.value }}, {% endeach %} diff --git a/lib/clone.js b/lib/clone.js index e962ed563..26e5cabf3 100644 --- a/lib/clone.js +++ b/lib/clone.js @@ -45,10 +45,4 @@ Clone.clone = function(url, local_path, options) { .then(openRepository); }; -// Inherit directly from the original clone object. -Clone.clone.__proto__ = Clone; - -// Ensure we're using the correct prototype. -Clone.clone.prototype = Clone.prototype; - module.exports = Clone.clone; diff --git a/lib/reset.js b/lib/reset.js index 358cbba96..008cbc39a 100644 --- a/lib/reset.js +++ b/lib/reset.js @@ -2,29 +2,17 @@ var NodeGit = require("../"); var normalizeOptions = require("./util/normalize_options"); var Reset = NodeGit.Reset; - var defaultFn = Reset.default; + Reset.default = function(repo, target, pathspecs) { return defaultFn.call(this, repo, target, pathspecs); }; var reset = Reset.reset; -Reset.reset = function( repo, - target, - resetType, - checkoutOpts, - signature, - logMessage) { - checkoutOpts = normalizeOptions(checkoutOpts, NodeGit.CheckoutOptions); +Reset.reset = function(repo, target, resetType, opts, signature, logMessage) { + opts = normalizeOptions(opts, NodeGit.CheckoutOptions); - return reset.call( - this, - repo, - target, - resetType, - checkoutOpts, - signature, - logMessage); + return reset.call(this, repo, target, resetType, opts, signature, logMessage); }; module.exports = Reset; diff --git a/test/tests/attr.js b/test/tests/attr.js index 8ea0fbe2e..2f2c43139 100644 --- a/test/tests/attr.js +++ b/test/tests/attr.js @@ -3,9 +3,10 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("Attr", function() { - var Repository = require(local("../../lib/repository")); - var Attr = require(local("../../lib/attr")); - var Status = require(local("../../lib/status")); + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Attr = NodeGit.Attr; + var Status = NodeGit.Status; var reposPath = local("../repos/workdir/.git"); diff --git a/test/tests/blob.js b/test/tests/blob.js index 3b245ac27..5526d43d0 100644 --- a/test/tests/blob.js +++ b/test/tests/blob.js @@ -3,9 +3,11 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("Blob", function() { - var Oid = require(local("../../lib/oid")); - var Repository = require(local("../../lib/repository")); - var FileMode = require(local("../../lib/tree_entry")).FILEMODE; + var NodeGit = require(local("../../")); + + var Oid = NodeGit.Oid; + var Repository = NodeGit.Repository; + var FileMode = NodeGit.TreeEntry.FILEMODE; var reposPath = local("../repos/workdir/.git"); var oid = "111dd657329797f6165f52f5085f61ac976dcf04"; diff --git a/test/tests/branch.js b/test/tests/branch.js index dfa7b1d2f..b271c55ce 100644 --- a/test/tests/branch.js +++ b/test/tests/branch.js @@ -4,8 +4,9 @@ var Promise = require("nodegit-promise"); var local = path.join.bind(path, __dirname); describe("Branch", function() { - var Repository = require(local("../../lib/repository")); - var Branch = require(local("../../lib/branch")); + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Branch = NodeGit.Branch; var branchName = "test-branch"; var fullBranchName = "refs/heads/" + branchName; diff --git a/test/tests/checkout.js b/test/tests/checkout.js index c00c84a3c..98d41c62e 100644 --- a/test/tests/checkout.js +++ b/test/tests/checkout.js @@ -3,8 +3,9 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("Checkout", function() { - var Repository = require(local("../../lib/repository")); - var Checkout = require(local("../../lib/checkout")); + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Checkout = NodeGit.Checkout; var packageJsonOid = "0fa56e90e096a4c24c785206b826ab914ea3de1e"; var reposPath = local("../repos/workdir/.git"); diff --git a/test/tests/clone.js b/test/tests/clone.js index a75692335..15a824bd9 100644 --- a/test/tests/clone.js +++ b/test/tests/clone.js @@ -5,9 +5,9 @@ var fse = promisify(require("fs-extra")); var local = path.join.bind(path, __dirname); describe("Clone", function() { - var Repository = require(local("../../lib/repository")); - var clone = require(local("../../lib/clone")); var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Clone = NodeGit.Clone; var clonePath = local("../repos/clone"); @@ -29,7 +29,7 @@ describe("Clone", function() { var test = this; var url = "http://git.tbranyen.com/smart/site-content"; - return clone(url, clonePath).then(function(repo) { + return Clone(url, clonePath).then(function(repo) { assert.ok(repo instanceof Repository); test.repository = repo; }); @@ -46,7 +46,24 @@ describe("Clone", function() { } }; - return clone(url, clonePath, opts).then(function(repo) { + return Clone(url, clonePath, opts).then(function(repo) { + assert.ok(repo instanceof Repository); + test.repository = repo; + }); + }); + + it("can clone using nested function", function() { + var test = this; + var url = "https://github.com/nodegit/test.git"; + var opts = { + remoteCallbacks: { + certificateCheck: function() { + return 1; + } + } + }; + + return Clone.clone(url, clonePath, opts).then(function(repo) { assert.ok(repo instanceof Repository); test.repository = repo; }); @@ -66,7 +83,7 @@ describe("Clone", function() { } }; - return clone(url, clonePath, opts).then(function(repo) { + return Clone(url, clonePath, opts).then(function(repo) { assert.ok(repo instanceof Repository); test.repository = repo; }); @@ -90,7 +107,7 @@ describe("Clone", function() { } }; - return clone(url, clonePath, opts).then(function(repo) { + return Clone(url, clonePath, opts).then(function(repo) { assert.ok(repo instanceof Repository); test.repository = repo; }); @@ -107,7 +124,7 @@ describe("Clone", function() { } }; - return clone(url, clonePath, opts).then(function(repo) { + return Clone(url, clonePath, opts).then(function(repo) { test.repository = repo; assert.ok(repo instanceof Repository); }); @@ -118,7 +135,7 @@ describe("Clone", function() { var prefix = process.platform === "win32" ? "" : "file://"; var url = prefix + local("../repos/empty"); - return clone(url, clonePath).then(function(repo) { + return Clone(url, clonePath).then(function(repo) { assert.ok(repo instanceof Repository); test.repository = repo; }); @@ -127,7 +144,7 @@ describe("Clone", function() { it("will not segfault when accessing a url without username", function() { var url = "https://github.com/nodegit/private"; - return clone(url, clonePath, { + return Clone(url, clonePath, { remoteCallbacks: { certificateCheck: function() { return 1; diff --git a/test/tests/diff.js b/test/tests/diff.js index a47930f6e..be771db01 100644 --- a/test/tests/diff.js +++ b/test/tests/diff.js @@ -6,8 +6,9 @@ var fse = promisify(require("fs-extra")); var local = path.join.bind(path, __dirname); describe("Diff", function() { - var Repository = require(local("../../lib/repository")); - var Diff = require(local("../../lib/diff")); + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Diff = NodeGit.Diff; var reposPath = local("../repos/workdir/.git"); var oid = "fce88902e66c72b5b93e75bdb5ae717038b221f6"; diff --git a/test/tests/index.js b/test/tests/index.js index 4ce034de4..2121314ac 100644 --- a/test/tests/index.js +++ b/test/tests/index.js @@ -10,8 +10,9 @@ var writeFile = promisify(function(filename, data, callback) { }); describe("Index", function() { - var Repository = require(local("../../lib/repository")); - + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var reposPath = local("../repos/workdir/.git"); beforeEach(function() { diff --git a/test/tests/odb.js b/test/tests/odb.js index b594d14bc..6f8ddec8b 100644 --- a/test/tests/odb.js +++ b/test/tests/odb.js @@ -3,9 +3,10 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("Odb", function() { - var Repository = require(local("../../lib/repository")); - var Oid = require(local("../../lib/oid")); - var Obj = require(local("../../lib/object")); + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Oid = NodeGit.Oid; + var Obj = NodeGit.Object; var reposPath = local("../repos/workdir/.git"); diff --git a/test/tests/oid.js b/test/tests/oid.js index a9ff371bd..306c1f3ee 100644 --- a/test/tests/oid.js +++ b/test/tests/oid.js @@ -3,7 +3,8 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("Oid", function() { - var Oid = require(local("../../lib/oid")); + var NodeGit = require(local("../../")); + var Oid = NodeGit.Oid; var oid = "fce88902e66c72b5b93e75bdb5ae717038b221f6"; diff --git a/test/tests/refs.js b/test/tests/refs.js index 7bc1d6ac6..b9e6edcce 100644 --- a/test/tests/refs.js +++ b/test/tests/refs.js @@ -9,8 +9,9 @@ var exec = promisify(function(command, opts, callback) { }); describe("Reference", function() { - var Repository = require(local("../../lib/repository")); - var Reference = require(local("../../lib/reference")); + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Reference = NodeGit.Reference; var reposPath = local("../repos/workdir"); diff --git a/test/tests/remote.js b/test/tests/remote.js index 0d17a247f..65848cee7 100644 --- a/test/tests/remote.js +++ b/test/tests/remote.js @@ -5,8 +5,8 @@ var local = path.join.bind(path, __dirname); describe("Remote", function() { var NodeGit = require(local("../../")); - var Repository = require(local("../../lib/repository")); - var Remote = require(local("../../lib/remote")); + var Repository = NodeGit.Repository; + var Remote = NodeGit.Remote; var reposPath = local("../repos/workdir/.git"); var url = "https://github.com/nodegit/test"; diff --git a/test/tests/repository.js b/test/tests/repository.js index 99e1cd7a4..5fff8b70d 100644 --- a/test/tests/repository.js +++ b/test/tests/repository.js @@ -6,13 +6,14 @@ var fse = promisify(require("fs-extra")); var local = path.join.bind(path, __dirname); describe("Repository", function() { + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Index = NodeGit.Index; + var Signature = NodeGit.Signature; + var reposPath = local("../repos/workdir/.git"); var newRepo = local("../repos/newrepo"); - var Repository = require(local("../../lib/repository")); - var Index = require(local("../../lib/index")); - var Signature = require(local("../../lib/signature")); - beforeEach(function() { var test = this; diff --git a/test/tests/reset.js b/test/tests/reset.js index 5c42eceb2..b8cc2d036 100644 --- a/test/tests/reset.js +++ b/test/tests/reset.js @@ -5,8 +5,9 @@ var promisify = require("promisify-node"); var fse = promisify(require("fs-extra")); describe("Reset", function() { - var Repository = require(local("../../lib/repository")); - var Reset = require(local("../../lib/reset")); + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Reset = NodeGit.Reset; var reposPath = local("../repos/workdir/.git"); var currentCommitOid = "32789a79e71fbc9e04d3eff7425e1771eb595150"; diff --git a/test/tests/revwalk.js b/test/tests/revwalk.js index 9a2cc4dfc..1b29db4a3 100644 --- a/test/tests/revwalk.js +++ b/test/tests/revwalk.js @@ -3,9 +3,10 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("Revwalk", function() { - var Repository = require(local("../../lib/repository")); - var Revwalk = require(local("../../lib/revwalk")); - var Oid = require(local("../../lib/oid")); + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Revwalk = NodeGit.Revwalk; + var Oid = NodeGit.Oid; var reposPath = local("../repos/workdir/.git"); diff --git a/test/tests/signature.js b/test/tests/signature.js index 4eba9f662..3df61fed5 100644 --- a/test/tests/signature.js +++ b/test/tests/signature.js @@ -10,8 +10,9 @@ var exec = promisify(function(command, opts, callback) { }); describe("Signature", function() { - var Signature = require(local("../../lib/signature")); - var Repository = require(local("../../lib/repository")); + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Signature = NodeGit.Signature; var reposPath = local("../repos/workdir/.git"); diff --git a/test/tests/status.js b/test/tests/status.js index 365b533b7..a188e338b 100644 --- a/test/tests/status.js +++ b/test/tests/status.js @@ -9,8 +9,9 @@ var exec = promisify(function(command, opts, callback) { }); describe("Status", function() { - var Status = require(local("../../lib/status")); - var Repository = require(local("../../lib/repository")); + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Status = NodeGit.Status; var reposPath = local("../repos/workdir/.git"); diff --git a/test/tests/status_file.js b/test/tests/status_file.js index 7d13b641b..e1f6e9c73 100644 --- a/test/tests/status_file.js +++ b/test/tests/status_file.js @@ -3,8 +3,9 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("StatusFile", function() { - var Status = require(local("../../lib/status")); - var StatusFile = require(local("../../lib/status_file")); + var NodeGit = require(local("../../")); + var Status = NodeGit.Status; + var StatusFile = NodeGit.StatusFile; var pathName = "README.md"; var statusCode = Status.STATUS.WT_NEW; diff --git a/test/tests/status_list.js b/test/tests/status_list.js index 899499b5d..e80d2c18f 100644 --- a/test/tests/status_list.js +++ b/test/tests/status_list.js @@ -9,9 +9,10 @@ var exec = promisify(function(command, opts, callback) { }); describe("StatusList", function() { - var Status = require(local("../../lib/status")); - var StatusList = require(local("../../lib/status_list")); - var Repository = require(local("../../lib/repository")); + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Status = NodeGit.Status; + var StatusList = NodeGit.StatusList; var reposPath = local("../repos/workdir/.git"); diff --git a/test/tests/tag.js b/test/tests/tag.js index 484e48f56..231ddee8c 100644 --- a/test/tests/tag.js +++ b/test/tests/tag.js @@ -1,14 +1,15 @@ var assert = require("assert"); var path = require("path"); var local = path.join.bind(path, __dirname); +var Promise = require("nodegit-promise"); describe("Tag", function() { - var Repository = require(local("../../lib/repository")); - var Tag = require(local("../../lib/tag")); - var Obj = require(local("../../lib/object")); - var Oid = require(local("../../lib/oid")); - var Reference = require(local("../../lib/reference")); - var Promise = require("nodegit-promise"); + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Tag = NodeGit.Tag; + var Obj = NodeGit.Object; + var Oid = NodeGit.Oid; + var Reference = NodeGit.Reference; var reposPath = local("../repos/workdir/.git"); var tagName = "annotated-tag"; diff --git a/test/tests/tree_entry.js b/test/tests/tree_entry.js index c3451d8b3..54dc3fad4 100644 --- a/test/tests/tree_entry.js +++ b/test/tests/tree_entry.js @@ -3,8 +3,9 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("TreeEntry", function() { - var Repository = require(local("../../lib/repository")); - var Tree = require(local("../../lib/tree")); + var NodeGit = require(local("../../")); + var Repository = NodeGit.Repository; + var Tree = NodeGit.Tree; var reposPath = local("../repos/workdir/.git"); var oid = "5716e9757886eaf38d51c86b192258c960d9cfea"; From 78ea4b722a439fc985e345d8538a7b908f6cdc45 Mon Sep 17 00:00:00 2001 From: Maximiliano Korp Date: Tue, 3 Mar 2015 12:23:03 -0700 Subject: [PATCH 3/6] fix statusfile --- generate/templates/templates/nodegit.js | 3 ++- lib/status_file.js | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/generate/templates/templates/nodegit.js b/generate/templates/templates/nodegit.js index e01b3d2b9..bf24f6678 100644 --- a/generate/templates/templates/nodegit.js +++ b/generate/templates/templates/nodegit.js @@ -70,8 +70,8 @@ require("./enums"); {% each . as idef %} {% if idef.type != "enum" %} {% each idef.functions as fn %} - {% if fn.useAsOnRootProto %} + // Inherit directly from the original {{idef.jsClassName}} object. _{{ idef.jsClassName }}.{{ fn.jsFunctionName }}.__proto__ = _{{ idef.jsClassName }}; @@ -83,6 +83,7 @@ require("./enums"); // Assign the function as the root rawApi.{{idef.jsClassName}} = _{{ idef.jsClassName }}.{{ fn.jsFunctionName }}; + {% endif %} {% endeach %} {% endif %} diff --git a/lib/status_file.js b/lib/status_file.js index 1c53b6b15..843214880 100644 --- a/lib/status_file.js +++ b/lib/status_file.js @@ -87,4 +87,6 @@ var StatusFile = function(args) { }; }; +NodeGit.StatusFile = StatusFile; + module.exports = StatusFile; From 37b3b90ae1ddd640f1bcc4458fb3fe479c121014 Mon Sep 17 00:00:00 2001 From: Maximiliano Korp Date: Tue, 3 Mar 2015 14:18:03 -0700 Subject: [PATCH 4/6] remove module.exports and move stuff around A LOT --- generate/templates/templates/nodegit.js | 26 +++++++++++++----- lib/attr.js | 5 ---- lib/blob.js | 8 +++--- lib/branch.js | 5 ---- lib/checkout.js | 4 +-- lib/clone.js | 4 +-- lib/commit.js | 5 +--- lib/convenient_hunk.js | 4 ++- lib/convenient_patch.js | 9 +++---- lib/diff.js | 10 +++---- lib/index.js | 2 -- lib/merge.js | 4 +-- lib/object.js | 2 -- lib/odb.js | 6 ++--- lib/odb_object.js | 2 -- lib/oid.js | 2 -- lib/patch.js | 5 ---- lib/reference.js | 4 +-- lib/remote.js | 4 +-- lib/repository.js | 27 +++++++++---------- lib/reset.js | 2 +- lib/revwalk.js | 2 -- lib/signature.js | 2 -- lib/status.js | 4 +-- lib/status_file.js | 3 --- lib/status_list.js | 4 +-- lib/tag.js | 9 +++---- lib/tree.js | 13 +++++---- lib/tree_entry.js | 3 --- .../lookup_wrapper.js} | 9 ++++--- lib/{util => utils}/normalize_options.js | 4 ++- test/tests/commit.js | 3 +-- test/tests/reset.js | 2 +- 33 files changed, 79 insertions(+), 119 deletions(-) delete mode 100644 lib/attr.js delete mode 100644 lib/branch.js delete mode 100644 lib/patch.js rename lib/{util/lookupWrapper.js => utils/lookup_wrapper.js} (88%) rename lib/{util => utils}/normalize_options.js (82%) diff --git a/generate/templates/templates/nodegit.js b/generate/templates/templates/nodegit.js index bf24f6678..2f493b263 100644 --- a/generate/templates/templates/nodegit.js +++ b/generate/templates/templates/nodegit.js @@ -1,5 +1,7 @@ var Promise = require("nodegit-promise"); var promisify = require("promisify-node"); +var path = require("path"); +var local = path.join.bind(path, __dirname); var rawApi; // Attempt to load the production release first, if it fails fall back to the @@ -52,20 +54,32 @@ exports.__proto__ = rawApi; var importExtension = function(name) { try { - require("./" + name); - } catch (unhandledException) {} + require(local(name)); + } + catch (unhandledException) { + if (unhandledException.code != "MODULE_NOT_FOUND") { + throw unhandledException; + } + } }; +// Load up utils +rawApi.Utils = {}; +require(local("utils", "lookup_wrapper")); +require(local("utils", "normalize_options")); + +// Load up extra types; +require(local("convenient_hunk")); +require(local("convenient_patch")); +require(local("status_file")); +require(local("enums.js")); + // Import extensions {% each %} {% if type != "enum" %} importExtension("{{ filename }}"); {% endif %} {% endeach %} - -//must go last! -require("./enums"); - /* jshint ignore:start */ {% each . as idef %} {% if idef.type != "enum" %} diff --git a/lib/attr.js b/lib/attr.js deleted file mode 100644 index f84ddaa29..000000000 --- a/lib/attr.js +++ /dev/null @@ -1,5 +0,0 @@ -var NodeGit = require("../"); - -var Attr = NodeGit.Attr; - -module.exports = Attr; diff --git a/lib/blob.js b/lib/blob.js index a67c0adc6..f55ff27da 100644 --- a/lib/blob.js +++ b/lib/blob.js @@ -1,8 +1,8 @@ var NodeGit = require("../"); -var TreeEntry = require("./tree_entry"); -var LookupWrapper = require("./util/lookupWrapper"); - var Blob = NodeGit.Blob; +var LookupWrapper = NodeGit.Utils.lookupWrapper; +var TreeEntry = NodeGit.TreeEntry; + /** * Retrieves the blob pointed to by the oid @@ -41,5 +41,3 @@ Blob.prototype.filemode = function() { return this.isBinary() ? FileMode.EXECUTABLE : FileMode.BLOB; }; - -module.exports = Blob; diff --git a/lib/branch.js b/lib/branch.js deleted file mode 100644 index a437f1de6..000000000 --- a/lib/branch.js +++ /dev/null @@ -1,5 +0,0 @@ -var NodeGit = require("../"); - -var Branch = NodeGit.Branch; - -module.exports = Branch; diff --git a/lib/checkout.js b/lib/checkout.js index e3c05f8ce..459ef9874 100644 --- a/lib/checkout.js +++ b/lib/checkout.js @@ -1,5 +1,5 @@ var NodeGit = require("../"); -var normalizeOptions = require("./util/normalize_options"); +var normalizeOptions = NodeGit.Utils.normalizeOptions; var Checkout = NodeGit.Checkout; var head = Checkout.head; @@ -33,5 +33,3 @@ Checkout.tree = function(repo, treeish, options) { return tree.call(this, repo, treeish, options); }; - -module.exports = Checkout; diff --git a/lib/clone.js b/lib/clone.js index 26e5cabf3..b1388b589 100644 --- a/lib/clone.js +++ b/lib/clone.js @@ -1,5 +1,5 @@ var NodeGit = require("../"); -var normalizeOptions = require("./util/normalize_options"); +var normalizeOptions = NodeGit.Utils.normalizeOptions; var Clone = NodeGit.Clone; var clone = Clone.clone; @@ -44,5 +44,3 @@ Clone.clone = function(url, local_path, options) { .then(freeRepository) .then(openRepository); }; - -module.exports = Clone.clone; diff --git a/lib/commit.js b/lib/commit.js index 20cd3ae0a..3dbd792f3 100644 --- a/lib/commit.js +++ b/lib/commit.js @@ -1,9 +1,8 @@ var events = require("events"); var Promise = require("nodegit-promise"); var NodeGit = require("../"); -var LookupWrapper = require("./util/lookupWrapper"); - var Commit = NodeGit.Commit; +var LookupWrapper = NodeGit.Utils.lookupWrapper; /** * Retrieves the commit pointed to by the oid @@ -207,5 +206,3 @@ Commit.prototype.getDiff = function(callback) { Commit.prototype.toString = function() { return this.sha(); }; - -module.exports = Commit; diff --git a/lib/convenient_hunk.js b/lib/convenient_hunk.js index d61fd8df3..9c28dd296 100644 --- a/lib/convenient_hunk.js +++ b/lib/convenient_hunk.js @@ -1,3 +1,5 @@ +var NodeGit = require("../"); + function ConvenientHunk(raw, i) { this.raw = raw; this.i = i; @@ -32,4 +34,4 @@ ConvenientHunk.prototype.lines = function() { return result; }; -module.exports = ConvenientHunk; +NodeGit.ConvenientHunk = ConvenientHunk; diff --git a/lib/convenient_patch.js b/lib/convenient_patch.js index b6f915114..ce3f62688 100644 --- a/lib/convenient_patch.js +++ b/lib/convenient_patch.js @@ -1,13 +1,12 @@ -var git = require("../"); -var Diff = git.Diff; -var ConvenientHunk = require("./convenient_hunk"); +var NodeGit = require("../"); +var Diff = NodeGit.Diff; +var ConvenientHunk = NodeGit.ConvenientHunk; function ConvenientPatch(delta, patch) { this.delta = delta; this.patch = patch; } - /** * Old name of the file * @return {String} @@ -126,4 +125,4 @@ ConvenientPatch.prototype.isTypeChange = function() { return this.status() == Diff.DELTA.TYPECHANGE; }; -module.exports = ConvenientPatch; +NodeGit.ConvenientPatch = ConvenientPatch; diff --git a/lib/diff.js b/lib/diff.js index 9f4686c6f..4761dfdfd 100644 --- a/lib/diff.js +++ b/lib/diff.js @@ -1,9 +1,9 @@ var NodeGit = require("../"); -var Patch = require("./patch"); -var ConvenientPatch = require("./convenient_patch"); -var normalizeOptions = require("./util/normalize_options"); - var Diff = NodeGit.Diff; +var ConvenientPatch = NodeGit.ConvenientPatch; +var normalizeOptions = NodeGit.Utils.normalizeOptions; +var Patch = NodeGit.Patch; + /** * Retrieve patches in this difflist @@ -62,5 +62,3 @@ Diff.prototype.findSimilar = function(opts) { opts = normalizeOptions(opts, NodeGit.DiffFindOptions); return findSimilar.call(this, opts); }; - -module.exports = Diff; diff --git a/lib/index.js b/lib/index.js index e4b9431d8..be905be60 100644 --- a/lib/index.js +++ b/lib/index.js @@ -31,5 +31,3 @@ var updateAll = Index.prototype.updateAll; Index.prototype.updateAll = function(pathspec, matchedCallback) { return updateAll.call(this, pathspec || "*", matchedCallback, null); }; - -module.exports = Index; diff --git a/lib/merge.js b/lib/merge.js index 8e83c09a3..a7102aad8 100644 --- a/lib/merge.js +++ b/lib/merge.js @@ -1,5 +1,5 @@ var NodeGit = require("../"); -var normalizeOptions = require("./util/normalize_options"); +var normalizeOptions = NodeGit.Utils.normalizeOptions; var Promise = require("nodegit-promise"); var Merge = NodeGit.Merge; @@ -24,5 +24,3 @@ Merge.commits = function(repo, ourCommit, theirCommit, options) { return mergeCommits.call(this, repo, commits[0], commits[1], options); }); }; - -module.exports = Merge; diff --git a/lib/object.js b/lib/object.js index 2ae11b3c2..21938883f 100644 --- a/lib/object.js +++ b/lib/object.js @@ -33,5 +33,3 @@ Obj.prototype.isBlob = function() { Obj.prototype.isTag = function() { return this.type() == Obj.TYPE.TAG; }; - -module.exports = Obj; diff --git a/lib/odb.js b/lib/odb.js index 72d26af52..85a764928 100644 --- a/lib/odb.js +++ b/lib/odb.js @@ -1,6 +1,6 @@ -var git = require("../"); +var NodeGit = require("../"); -var Odb = git.Odb; +var Odb = NodeGit.Odb; var read = Odb.prototype.read; Odb.prototype.read = function(oid, callback) { @@ -12,5 +12,3 @@ Odb.prototype.read = function(oid, callback) { return odbObject; }, callback); }; - -module.exports = Odb; diff --git a/lib/odb_object.js b/lib/odb_object.js index 31ed33eff..cd5995eb5 100644 --- a/lib/odb_object.js +++ b/lib/odb_object.js @@ -7,5 +7,3 @@ OdbObject.prototype.toString = function(size) { return this.data().toBuffer(size).toString(); }; - -module.exports = OdbObject; diff --git a/lib/oid.js b/lib/oid.js index 43aac6255..42d4405af 100644 --- a/lib/oid.js +++ b/lib/oid.js @@ -17,5 +17,3 @@ Object.defineProperties(Oid.prototype, { Oid.prototype.inspect = function() { return "[Oid " + this.allocfmt() + "]"; }; - -module.exports = Oid; diff --git a/lib/patch.js b/lib/patch.js deleted file mode 100644 index 1d486dca3..000000000 --- a/lib/patch.js +++ /dev/null @@ -1,5 +0,0 @@ -var NodeGit = require("../"); - -var Patch = NodeGit.Patch; - -module.exports = Patch; diff --git a/lib/reference.js b/lib/reference.js index 437a61ec8..d9b3b8c27 100644 --- a/lib/reference.js +++ b/lib/reference.js @@ -1,5 +1,5 @@ var NodeGit = require("../"); -var LookupWrapper = require("./util/lookupWrapper"); +var LookupWrapper = NodeGit.Utils.lookupWrapper; var Reference = NodeGit.Reference; var Branch = NodeGit.Branch; @@ -63,5 +63,3 @@ Reference.prototype.toString = function() { Reference.prototype.isHead = function() { return Branch.isHead(this); }; - -module.exports = Reference; diff --git a/lib/remote.js b/lib/remote.js index 4b902d323..8ee13135b 100644 --- a/lib/remote.js +++ b/lib/remote.js @@ -1,6 +1,6 @@ var NodeGit = require("../"); -var normalizeOptions = require("./util/normalize_options"); -var lookupWrapper = require("./util/lookupWrapper"); +var normalizeOptions = NodeGit.Utils.normalizeOptions; +var lookupWrapper = NodeGit.Utils.lookupWrapper; var Remote = NodeGit.Remote; var setCallbacks = Remote.prototype.setCallbacks; diff --git a/lib/repository.js b/lib/repository.js index a0bcea6ab..3276786c8 100644 --- a/lib/repository.js +++ b/lib/repository.js @@ -1,19 +1,18 @@ -var NodeGit = require("../"); -var Blob = require("./blob"); -var Tree = require("./tree"); -var Tag = require("./tag"); -var Reference = require("./reference"); -var Revwalk = require("./revwalk"); -var Commit = require("./commit"); -var Remote = require("./remote"); var Promise = require("nodegit-promise"); -var normalizeOptions = require("./util/normalize_options"); -var Status = require("./status"); -var StatusFile = require("./status_file"); -var StatusList = require("./status_list"); - -var TreeBuilder = NodeGit.Treebuilder; +var NodeGit = require("../"); +var Blob = NodeGit.Blob; +var Commit = NodeGit.Commit; +var normalizeOptions = NodeGit.Utils.normalizeOptions; +var Reference = NodeGit.Reference; +var Remote = NodeGit.Remote; var Repository = NodeGit.Repository; +var Revwalk = NodeGit.Revwalk; +var Status = NodeGit.Status; +var StatusFile = NodeGit.StatusFile; +var StatusList = NodeGit.StatusList; +var Tag = NodeGit.Tag; +var Tree = NodeGit.Tree; +var TreeBuilder = NodeGit.Treebuilder; Object.defineProperty(Repository.prototype, "openIndex", { enumerable: false, diff --git a/lib/reset.js b/lib/reset.js index 008cbc39a..8250ddeff 100644 --- a/lib/reset.js +++ b/lib/reset.js @@ -1,5 +1,5 @@ var NodeGit = require("../"); -var normalizeOptions = require("./util/normalize_options"); +var normalizeOptions = NodeGit.Utils.normalizeOptions; var Reset = NodeGit.Reset; var defaultFn = Reset.default; diff --git a/lib/revwalk.js b/lib/revwalk.js index 638596b34..f33991509 100644 --- a/lib/revwalk.js +++ b/lib/revwalk.js @@ -112,5 +112,3 @@ Revwalk.prototype.getCommits = function(count) { return Promise.all(promises); }); }; - -module.exports = Revwalk; diff --git a/lib/signature.js b/lib/signature.js index ed530322a..7fc8e274d 100644 --- a/lib/signature.js +++ b/lib/signature.js @@ -9,5 +9,3 @@ var Signature = NodeGit.Signature; Signature.prototype.toString = function() { return this.name().toString() + " <" + this.email().toString() + ">"; }; - -module.exports = Signature; diff --git a/lib/status.js b/lib/status.js index 286f8bbaf..964569df0 100644 --- a/lib/status.js +++ b/lib/status.js @@ -1,5 +1,5 @@ var NodeGit = require("../"); -var normalizeOptions = require("./util/normalize_options"); +var normalizeOptions = NodeGit.Utils.normalizeOptions; var Status = NodeGit.Status; @@ -15,5 +15,3 @@ Status.foreachExt = function(repo, opts, callback) { opts = normalizeOptions(opts, NodeGit.StatusOptions); return foreachExt(repo, opts, callback, null); }; - -module.exports = Status; diff --git a/lib/status_file.js b/lib/status_file.js index 843214880..1b82aa1cb 100644 --- a/lib/status_file.js +++ b/lib/status_file.js @@ -1,5 +1,4 @@ var NodeGit = require("../"); - var Status = NodeGit.Status; var StatusFile = function(args) { @@ -88,5 +87,3 @@ var StatusFile = function(args) { }; NodeGit.StatusFile = StatusFile; - -module.exports = StatusFile; diff --git a/lib/status_list.js b/lib/status_list.js index ad1628396..e05eede09 100644 --- a/lib/status_list.js +++ b/lib/status_list.js @@ -1,5 +1,5 @@ var NodeGit = require("../"); -var normalizeOptions = require("./util/normalize_options"); +var normalizeOptions = NodeGit.Utils.normalizeOptions; var StatusList = NodeGit.StatusList; @@ -9,5 +9,3 @@ StatusList.create = function(repo, opts) { opts = normalizeOptions(opts, NodeGit.StatusOptions); return create(repo, opts); }; - -module.exports = StatusList; diff --git a/lib/tag.js b/lib/tag.js index bffdf4677..bf8ddff49 100644 --- a/lib/tag.js +++ b/lib/tag.js @@ -1,7 +1,6 @@ -var git = require("../"); -var LookupWrapper = require("./util/lookupWrapper"); - -var Tag = git.Tag; +var NodeGit = require("../"); +var LookupWrapper = NodeGit.Utils.lookupWrapper; +var Tag = NodeGit.Tag; /** * Retrieves the tag pointed to by the oid @@ -11,5 +10,3 @@ var Tag = git.Tag; * @return {Tag} */ Tag.lookup = LookupWrapper(Tag); - -module.exports = Tag; diff --git a/lib/tree.js b/lib/tree.js index 2b131f98d..e632d1337 100644 --- a/lib/tree.js +++ b/lib/tree.js @@ -1,9 +1,10 @@ -var git = require("../"); -var Tree = git.Tree; -var Treebuilder = git.Treebuilder; -var Diff = git.Diff; var events = require("events"); -var LookupWrapper = require("./util/lookupWrapper"); +var NodeGit = require("../"); +var Diff = NodeGit.Diff; +var LookupWrapper = NodeGit.Utils.lookupWrapper; +var Tree = NodeGit.Tree; +var Treebuilder = NodeGit.Treebuilder; + /** * Retrieves the tree pointed to by the oid @@ -166,5 +167,3 @@ Tree.prototype.builder = function() { return builder; }; - -module.exports = Tree; diff --git a/lib/tree_entry.js b/lib/tree_entry.js index 672c9bc33..a2d19def2 100644 --- a/lib/tree_entry.js +++ b/lib/tree_entry.js @@ -1,6 +1,5 @@ var path = require("path"); var NodeGit = require("../"); - var Tree = NodeGit.Tree; var TreeEntry = NodeGit.TreeEntry; @@ -93,5 +92,3 @@ TreeEntry.prototype.toString = function() { TreeEntry.prototype.oid = function() { return Tree.entryId(this).toString(); }; - -module.exports = TreeEntry; diff --git a/lib/util/lookupWrapper.js b/lib/utils/lookup_wrapper.js similarity index 88% rename from lib/util/lookupWrapper.js rename to lib/utils/lookup_wrapper.js index a0c66ffec..309c675a2 100644 --- a/lib/util/lookupWrapper.js +++ b/lib/utils/lookup_wrapper.js @@ -1,4 +1,5 @@ var Promise = require("nodegit-promise"); +var NodeGit = require("../../"); /** * Wraps a method so that you can pass in either a string, OID or the object @@ -8,9 +9,9 @@ var Promise = require("nodegit-promise"); * object. Defaults to `objectType.lookup`. * @return {Function} */ -module.exports = function(objectType, lookupFunction) { +function lookupWrapper(objectType, lookupFunction) { lookupFunction = lookupFunction || objectType.lookup; - + return function(repo, id, callback) { if (id instanceof objectType) { return Promise.resolve(id).then(function(obj) { @@ -34,4 +35,6 @@ module.exports = function(objectType, lookupFunction) { return obj; }, callback); }; -}; +} + +NodeGit.Utils.lookupWrapper = lookupWrapper; diff --git a/lib/util/normalize_options.js b/lib/utils/normalize_options.js similarity index 82% rename from lib/util/normalize_options.js rename to lib/utils/normalize_options.js index c0c4a0718..a7b73cb5e 100644 --- a/lib/util/normalize_options.js +++ b/lib/utils/normalize_options.js @@ -1,3 +1,5 @@ +var NodeGit = require("../../"); + /** * Normalize an object to match a struct. * @@ -18,4 +20,4 @@ function normalizeOptions(options, Ctor) { return instance; } -module.exports = normalizeOptions; +NodeGit.Utils.normalizeOptions = normalizeOptions; diff --git a/test/tests/commit.js b/test/tests/commit.js index b15ac7d52..36fe93f80 100644 --- a/test/tests/commit.js +++ b/test/tests/commit.js @@ -108,13 +108,12 @@ describe("Commit", function() { }) .then(function(parentResult) { parent = parentResult; - return Promise.all([ NodeGit.Signature.create("Foo Bar", "foo@bar.com", 123456789, 60), NodeGit.Signature.create("Foo A Bar", "foo@bar.com", 987654321, 90) ]); }) - .then(function(signatures){ + .then(function(signatures) { var author = signatures[0]; var committer = signatures[1]; diff --git a/test/tests/reset.js b/test/tests/reset.js index b8cc2d036..6d0fe1622 100644 --- a/test/tests/reset.js +++ b/test/tests/reset.js @@ -134,7 +134,7 @@ describe("Reset", function() { assert(resetContents == currentCommitContents); assert(resetContents != previousCommitContents); - return Reset.reset(test.repo, test.currentCommit, Reset.TYPE.HARD); + return Reset(test.repo, test.currentCommit, Reset.TYPE.HARD); }); }); From dcebe440980814b2b680a1cd48c3ed76be43d8c6 Mon Sep 17 00:00:00 2001 From: Maximiliano Korp Date: Tue, 3 Mar 2015 14:46:42 -0700 Subject: [PATCH 5/6] dont swallow error in remote tests --- test/tests/remote.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/test/tests/remote.js b/test/tests/remote.js index 65848cee7..f6001c285 100644 --- a/test/tests/remote.js +++ b/test/tests/remote.js @@ -203,8 +203,7 @@ describe("Remote", function() { new Error("should not be able to push to the repository")); }, function(err) { if (err.message.indexOf(401) === -1) { - return Promise.reject( - new Error("failed to return unauthorized status code")); + throw err; } else { return Promise.resolve(); } From 1906fea7c8818319c926d825b284f26b1864d532 Mon Sep 17 00:00:00 2001 From: Maximiliano Korp Date: Tue, 3 Mar 2015 15:46:58 -0700 Subject: [PATCH 6/6] remove unneeded locals --- generate/templates/templates/nodegit.js | 16 +++++++--------- lifecycleScripts/install.js | 12 +++++------- test/index.js | 5 ++--- test/tests/attr.js | 4 ++-- test/tests/blob.js | 4 ++-- test/tests/branch.js | 4 ++-- test/tests/checkout.js | 4 ++-- test/tests/clone.js | 2 +- test/tests/commit.js | 4 ++-- test/tests/cred.js | 2 +- test/tests/diff.js | 4 ++-- test/tests/index.js | 4 ++-- test/tests/merge.js | 2 +- test/tests/odb.js | 4 ++-- test/tests/oid.js | 4 +--- test/tests/refs.js | 2 +- test/tests/remote.js | 4 ++-- test/tests/repository.js | 4 ++-- test/tests/reset.js | 4 ++-- test/tests/revwalk.js | 4 ++-- test/tests/signature.js | 4 ++-- test/tests/status.js | 6 +++--- test/tests/status_file.js | 4 +--- test/tests/status_list.js | 6 +++--- test/tests/tag.js | 4 ++-- test/tests/tree_entry.js | 4 ++-- 26 files changed, 56 insertions(+), 65 deletions(-) diff --git a/generate/templates/templates/nodegit.js b/generate/templates/templates/nodegit.js index 2f493b263..c5b8d1da4 100644 --- a/generate/templates/templates/nodegit.js +++ b/generate/templates/templates/nodegit.js @@ -1,7 +1,5 @@ var Promise = require("nodegit-promise"); var promisify = require("promisify-node"); -var path = require("path"); -var local = path.join.bind(path, __dirname); var rawApi; // Attempt to load the production release first, if it fails fall back to the @@ -54,7 +52,7 @@ exports.__proto__ = rawApi; var importExtension = function(name) { try { - require(local(name)); + require("./" + name); } catch (unhandledException) { if (unhandledException.code != "MODULE_NOT_FOUND") { @@ -65,14 +63,14 @@ var importExtension = function(name) { // Load up utils rawApi.Utils = {}; -require(local("utils", "lookup_wrapper")); -require(local("utils", "normalize_options")); +require("./utils/lookup_wrapper"); +require("./utils/normalize_options"); // Load up extra types; -require(local("convenient_hunk")); -require(local("convenient_patch")); -require(local("status_file")); -require(local("enums.js")); +require("./convenient_hunk"); +require("./convenient_patch"); +require("./status_file"); +require("./enums.js"); // Import extensions {% each %} diff --git a/lifecycleScripts/install.js b/lifecycleScripts/install.js index f46caec5b..042d8b520 100644 --- a/lifecycleScripts/install.js +++ b/lifecycleScripts/install.js @@ -3,11 +3,9 @@ var promisify = require("promisify-node"); var path = require("path"); var fs = require("fs"); -var local = path.join.bind(path, __dirname); - -var checkPrepared = require(local("checkPrepared")); +var checkPrepared = require("./checkPrepared"); var whichNativeNodish = require("which-native-nodish"); -var prepareForBuild = require(local("prepareForBuild")); +var prepareForBuild = require("./prepareForBuild"); var exec = promisify(function(command, opts, callback) { return require("child_process").exec(command, opts, callback); @@ -15,7 +13,7 @@ var exec = promisify(function(command, opts, callback) { var nwVersion = null; var asVersion = null; -return whichNativeNodish(local("..")) +return whichNativeNodish("..") .then(function(results) { nwVersion = results.nwVersion; asVersion = results.asVersion; @@ -29,7 +27,7 @@ return whichNativeNodish(local("..")) console.info("[nodegit] Must build for atom-shell"); return checkAndBuild(); } - if (fs.existsSync(local("../.didntcomefromthenpmregistry"))) { + if (fs.existsSync("../.didntcomefromthenpmregistry")) { return checkAndBuild(); } if (process.env.BUILD_DEBUG) { @@ -85,7 +83,7 @@ function build() { } var opts = { - cwd: local(".."), + cwd: ".", maxBuffer: Number.MAX_VALUE }; diff --git a/test/index.js b/test/index.js index 675940a54..7e39d5a26 100644 --- a/test/index.js +++ b/test/index.js @@ -1,12 +1,11 @@ var fork = require("child_process").fork; var path = require("path"); -var local = path.join.bind(path, __dirname); var args = [ "cover", process.platform != "win32" ? "_mocha" : - local("../node_modules/mocha/bin/_mocha"), + "../node_modules/mocha/bin/_mocha", "--", "runner", "tests", @@ -14,7 +13,7 @@ var args = [ "--expose-gc" ]; -fork(local("../node_modules/istanbul/lib/cli.js"), args, { +fork("../node_modules/istanbul/lib/cli.js", args, { cwd: __dirname }).on("close", function(code) { process.exit(code); diff --git a/test/tests/attr.js b/test/tests/attr.js index 2f2c43139..cf229d372 100644 --- a/test/tests/attr.js +++ b/test/tests/attr.js @@ -3,12 +3,12 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("Attr", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Attr = NodeGit.Attr; var Status = NodeGit.Status; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); beforeEach(function() { var test = this; diff --git a/test/tests/blob.js b/test/tests/blob.js index 5526d43d0..342cb2578 100644 --- a/test/tests/blob.js +++ b/test/tests/blob.js @@ -3,13 +3,13 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("Blob", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Oid = NodeGit.Oid; var Repository = NodeGit.Repository; var FileMode = NodeGit.TreeEntry.FILEMODE; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); var oid = "111dd657329797f6165f52f5085f61ac976dcf04"; beforeEach(function() { diff --git a/test/tests/branch.js b/test/tests/branch.js index b271c55ce..922b48152 100644 --- a/test/tests/branch.js +++ b/test/tests/branch.js @@ -4,13 +4,13 @@ var Promise = require("nodegit-promise"); var local = path.join.bind(path, __dirname); describe("Branch", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Branch = NodeGit.Branch; var branchName = "test-branch"; var fullBranchName = "refs/heads/" + branchName; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); beforeEach(function() { var test = this; diff --git a/test/tests/checkout.js b/test/tests/checkout.js index 98d41c62e..a157761f1 100644 --- a/test/tests/checkout.js +++ b/test/tests/checkout.js @@ -3,12 +3,12 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("Checkout", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Checkout = NodeGit.Checkout; var packageJsonOid = "0fa56e90e096a4c24c785206b826ab914ea3de1e"; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); beforeEach(function() { var test = this; diff --git a/test/tests/clone.js b/test/tests/clone.js index 15a824bd9..b519f3bb5 100644 --- a/test/tests/clone.js +++ b/test/tests/clone.js @@ -5,7 +5,7 @@ var fse = promisify(require("fs-extra")); var local = path.join.bind(path, __dirname); describe("Clone", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Clone = NodeGit.Clone; diff --git a/test/tests/commit.js b/test/tests/commit.js index 36fe93f80..79758a683 100644 --- a/test/tests/commit.js +++ b/test/tests/commit.js @@ -6,10 +6,10 @@ var fse = promisify(require("fs-extra")); var local = path.join.bind(path, __dirname); describe("Commit", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); var oid = "fce88902e66c72b5b93e75bdb5ae717038b221f6"; function reinitialize(test) { diff --git a/test/tests/cred.js b/test/tests/cred.js index bafa8c606..28e48ef48 100644 --- a/test/tests/cred.js +++ b/test/tests/cred.js @@ -3,7 +3,7 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("Cred", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var sshPublicKey = local("../id_rsa.pub"); var sshPrivateKey = local("../id_rsa"); diff --git a/test/tests/diff.js b/test/tests/diff.js index be771db01..96c720a0e 100644 --- a/test/tests/diff.js +++ b/test/tests/diff.js @@ -6,11 +6,11 @@ var fse = promisify(require("fs-extra")); var local = path.join.bind(path, __dirname); describe("Diff", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Diff = NodeGit.Diff; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); var oid = "fce88902e66c72b5b93e75bdb5ae717038b221f6"; var diffFilename = "wddiff.txt"; var diffFilepath = local("../repos/workdir", diffFilename); diff --git a/test/tests/index.js b/test/tests/index.js index 2121314ac..846fa1e72 100644 --- a/test/tests/index.js +++ b/test/tests/index.js @@ -10,10 +10,10 @@ var writeFile = promisify(function(filename, data, callback) { }); describe("Index", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); beforeEach(function() { var test = this; diff --git a/test/tests/merge.js b/test/tests/merge.js index 6d8104f2d..14f4b4a2f 100644 --- a/test/tests/merge.js +++ b/test/tests/merge.js @@ -7,7 +7,7 @@ var local = path.join.bind(path, __dirname); fse.ensureDir = promisify(fse.ensureDir); describe("Merge", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var reposPath = local("../repos/merge"); var ourBranchName = "ours"; diff --git a/test/tests/odb.js b/test/tests/odb.js index 6f8ddec8b..67a00c1bc 100644 --- a/test/tests/odb.js +++ b/test/tests/odb.js @@ -3,12 +3,12 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("Odb", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Oid = NodeGit.Oid; var Obj = NodeGit.Object; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); beforeEach(function() { var test = this; diff --git a/test/tests/oid.js b/test/tests/oid.js index 306c1f3ee..8efcb12b4 100644 --- a/test/tests/oid.js +++ b/test/tests/oid.js @@ -1,9 +1,7 @@ var assert = require("assert"); -var path = require("path"); -var local = path.join.bind(path, __dirname); describe("Oid", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Oid = NodeGit.Oid; var oid = "fce88902e66c72b5b93e75bdb5ae717038b221f6"; diff --git a/test/tests/refs.js b/test/tests/refs.js index b9e6edcce..b90b42f8c 100644 --- a/test/tests/refs.js +++ b/test/tests/refs.js @@ -9,7 +9,7 @@ var exec = promisify(function(command, opts, callback) { }); describe("Reference", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Reference = NodeGit.Reference; diff --git a/test/tests/remote.js b/test/tests/remote.js index f6001c285..a1a9e8e9d 100644 --- a/test/tests/remote.js +++ b/test/tests/remote.js @@ -4,11 +4,11 @@ var Promise = require("nodegit-promise"); var local = path.join.bind(path, __dirname); describe("Remote", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Remote = NodeGit.Remote; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); var url = "https://github.com/nodegit/test"; var url2 = "https://github.com/nodegit/test2"; diff --git a/test/tests/repository.js b/test/tests/repository.js index 5fff8b70d..e82045fd3 100644 --- a/test/tests/repository.js +++ b/test/tests/repository.js @@ -6,12 +6,12 @@ var fse = promisify(require("fs-extra")); var local = path.join.bind(path, __dirname); describe("Repository", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Index = NodeGit.Index; var Signature = NodeGit.Signature; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); var newRepo = local("../repos/newrepo"); beforeEach(function() { diff --git a/test/tests/reset.js b/test/tests/reset.js index 6d0fe1622..3638c5761 100644 --- a/test/tests/reset.js +++ b/test/tests/reset.js @@ -5,11 +5,11 @@ var promisify = require("promisify-node"); var fse = promisify(require("fs-extra")); describe("Reset", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Reset = NodeGit.Reset; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); var currentCommitOid = "32789a79e71fbc9e04d3eff7425e1771eb595150"; var previousCommitOid = "c82fb078a192ea221c9f1093c64321c60d64aa0d"; var filePath = "package.json"; diff --git a/test/tests/revwalk.js b/test/tests/revwalk.js index 1b29db4a3..89071f0e8 100644 --- a/test/tests/revwalk.js +++ b/test/tests/revwalk.js @@ -3,12 +3,12 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("Revwalk", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Revwalk = NodeGit.Revwalk; var Oid = NodeGit.Oid; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); // Set a reasonable timeout here now that our repository has grown. this.timeout(60000); diff --git a/test/tests/signature.js b/test/tests/signature.js index 3df61fed5..9c7613986 100644 --- a/test/tests/signature.js +++ b/test/tests/signature.js @@ -10,11 +10,11 @@ var exec = promisify(function(command, opts, callback) { }); describe("Signature", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Signature = NodeGit.Signature; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); var name = "Bob Gnarley"; var email = "gnarlee@bob.net"; diff --git a/test/tests/status.js b/test/tests/status.js index a188e338b..7c8a3ed89 100644 --- a/test/tests/status.js +++ b/test/tests/status.js @@ -9,11 +9,11 @@ var exec = promisify(function(command, opts, callback) { }); describe("Status", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Status = NodeGit.Status; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); before(function() { var test = this; @@ -75,7 +75,7 @@ describe("Status", function() { var fileContent = "new file from status tests"; var repo = this.repository; var filePath = path.join(repo.workdir(), fileName); - return exec("git clean -xdf", {cwd: local("../repos/workdir")}) + return exec("git clean -xdf", {cwd: reposPath}) .then(function() { return fse.writeFile(filePath, fileContent); }) diff --git a/test/tests/status_file.js b/test/tests/status_file.js index e1f6e9c73..cd669350d 100644 --- a/test/tests/status_file.js +++ b/test/tests/status_file.js @@ -1,9 +1,7 @@ var assert = require("assert"); -var path = require("path"); -var local = path.join.bind(path, __dirname); describe("StatusFile", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Status = NodeGit.Status; var StatusFile = NodeGit.StatusFile; diff --git a/test/tests/status_list.js b/test/tests/status_list.js index e80d2c18f..95315a9a6 100644 --- a/test/tests/status_list.js +++ b/test/tests/status_list.js @@ -9,12 +9,12 @@ var exec = promisify(function(command, opts, callback) { }); describe("StatusList", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Status = NodeGit.Status; var StatusList = NodeGit.StatusList; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); before(function() { var test = this; @@ -29,7 +29,7 @@ describe("StatusList", function() { var fileContent = "new file from status tests"; var repo = this.repository; var filePath = path.join(repo.workdir(), fileName); - return exec("git clean -xdf", {cwd: local("../repos/workdir")}) + return exec("git clean -xdf", {cwd: reposPath}) .then(function() { return fse.writeFile(filePath, fileContent); }) diff --git a/test/tests/tag.js b/test/tests/tag.js index 231ddee8c..663c1dd84 100644 --- a/test/tests/tag.js +++ b/test/tests/tag.js @@ -4,14 +4,14 @@ var local = path.join.bind(path, __dirname); var Promise = require("nodegit-promise"); describe("Tag", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Tag = NodeGit.Tag; var Obj = NodeGit.Object; var Oid = NodeGit.Oid; var Reference = NodeGit.Reference; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); var tagName = "annotated-tag"; var tagFullName = "refs/tags/" + tagName; var tagOid = "dc800017566123ff3c746b37284a24a66546667e"; diff --git a/test/tests/tree_entry.js b/test/tests/tree_entry.js index 54dc3fad4..2e0620040 100644 --- a/test/tests/tree_entry.js +++ b/test/tests/tree_entry.js @@ -3,11 +3,11 @@ var path = require("path"); var local = path.join.bind(path, __dirname); describe("TreeEntry", function() { - var NodeGit = require(local("../../")); + var NodeGit = require("../../"); var Repository = NodeGit.Repository; var Tree = NodeGit.Tree; - var reposPath = local("../repos/workdir/.git"); + var reposPath = local("../repos/workdir"); var oid = "5716e9757886eaf38d51c86b192258c960d9cfea"; beforeEach(function() {