summaryrefslogtreecommitdiffstats
path: root/test/git.js
blob: 9d486063b7a4517574b390685ff59b0fd8eeb712 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
var path = require('path');
var _ = require('lodash');
var assert = require('assert');

var fs = require("fs");
var git = require("../lib/utils/git");

describe('GIT parser and getter', function () {
    it('should correctly parse an https url', function() {
        var parts = git.parseUrl("git+https://gist.github.com/69ea4542e4c8967d2fa7.git/test.md");
        assert(parts);
        assert.equal(parts.host, "https://gist.github.com/69ea4542e4c8967d2fa7.git");
        assert.equal(parts.ref, "master");
        assert.equal(parts.filepath, "test.md");
    });

    it('should correctly parse an https url with a reference', function() {
        var parts = git.parseUrl("git+https://gist.github.com/69ea4542e4c8967d2fa7.git/test.md#0.1.2");
        assert(parts);
        assert.equal(parts.host, "https://gist.github.com/69ea4542e4c8967d2fa7.git");
        assert.equal(parts.ref, "0.1.2");
        assert.equal(parts.filepath, "test.md");
    });

    it('should correctly parse an ssh url', function() {
        var parts = git.parseUrl("git+git@github.com:GitbookIO/gitbook.git/directory/README.md#e1594cde2c32e4ff48f6c4eff3d3d461743d74e1");
        assert(parts);
        assert.equal(parts.host, "git@github.com:GitbookIO/gitbook.git");
        assert.equal(parts.ref, "e1594cde2c32e4ff48f6c4eff3d3d461743d74e1");
        assert.equal(parts.filepath, "directory/README.md");
    });
});