From f76aaffe4b1040501b0b751c683bf9c9512f1bc4 Mon Sep 17 00:00:00 2001 From: petemill Date: Wed, 9 Dec 2015 02:32:12 -0800 Subject: [PATCH] enable access to git_index_new and add test (which is only intermittently succeeding) --- generate/input/descriptor.json | 2 +- test/tests/index.js | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/generate/input/descriptor.json b/generate/input/descriptor.json index a64a9b4e9..a332528f1 100644 --- a/generate/input/descriptor.json +++ b/generate/input/descriptor.json @@ -988,7 +988,7 @@ } }, "git_index_new": { - "ignore": true + "isAsync": false }, "git_index_read": { "args": { diff --git a/test/tests/index.js b/test/tests/index.js index 35e6ecaa4..f37fc11b9 100644 --- a/test/tests/index.js +++ b/test/tests/index.js @@ -33,6 +33,29 @@ describe("Index", function() { NodeGit.disableThreadSafety(); }); + it("can create a new index and add entries", function(){ + + var index = NodeGit.Index.create(); + //create file entry + var fileContent = new Buffer("first file content", "binary"); + var newFileOid = NodeGit.Blob.createFromBuffer(this.repository, + fileContent, + fileContent.length); + var fileEntry = new NodeGit.IndexEntry(); + fileEntry.path = "sub/folder/firstfile.txt"; + fileEntry.id = newFileOid; + fileEntry.mode = NodeGit.TreeEntry.FILEMODE.BLOB; + fileEntry.ctime.seconds = new Date().getTime(); + fileEntry.mtime.seconds = new Date().getTime(); + //add entry to index + index.add(fileEntry); + //check index has entry + assert.equal(1, index.entries().length, "Index should contain entry"); + //check for conflicts, which there of course should definitely not be + // considering this is a new index, and we've only added 1 entry + assert.equal(false,index.hasConflicts(), "Index should not have conflicts"); + }); + it("can get the index of a repo and examine entries", function() { var entries = this.index.entries();