1.5.0 • Published 9 years ago

github-url-from-git v1.5.0

Weekly downloads
136,658
License
MIT
Repository
github
Last release
9 years ago

github-url-from-git

describe('parse(url)', function () {
  it('should support git://*', function () {
    var url = 'git://github.com/jamesor/mongoose-versioner'
    parse(url).should.equal('https://github.com/jamesor/mongoose-versioner')
  })

  it('should support git://*.git', function () {
    var url = 'git://github.com/treygriffith/cellar.git'
    parse(url).should.equal('https://github.com/treygriffith/cellar')
  })

  it('should support https://*', function () {
    var url = 'https://github.com/Empeeric/i18n-node'
    parse(url).should.equal('https://github.com/Empeeric/i18n-node')
  })

  it('should support https://*.git', function () {
    var url = 'https://jpillora@github.com/banchee/tranquil.git'
    parse(url).should.equal('https://github.com/banchee/tranquil')
  })

  it('should return undefined on failure', function () {
    var url = 'git://github.com/justgord/.git'
    assert(parse(url) == null)
  })

  it('should parse git@github.com:bcoe/thumbd.git', function () {
    var url = 'git@github.com:bcoe/thumbd.git'
    parse(url).should.eql('https://github.com/bcoe/thumbd')
  })

  it('should parse git@github.com:/bcoe/thumbd.git', function () {
    var url = 'git@github.com:/bcoe/thumbd.git'
    parse(url).should.eql('https://github.com/bcoe/thumbd')
  })

  it('should parse git@github.com:bcoe/thumbd.git#2.7.0', function () {
    var url = 'git@github.com:bcoe/thumbd.git#2.7.0'
    parse(url).should.eql('https://github.com/bcoe/thumbd')
  })

  it('should parse git+https://github.com/bcoe/thumbd.git', function () {
    var url = 'git+https://github.com/bcoe/thumbd.git'
    parse(url).should.eql('https://github.com/bcoe/thumbd')
  })

  it('should parse git+ssh://github.com/bcoe/thumbd.git', function () {
    var url = 'git+ssh://github.com/bcoe/thumbd.git'
    parse(url).should.eql('https://github.com/bcoe/thumbd')
  })

  it('should parse https://EastCloud@github.com/EastCloud/node-websockets.git', function () {
    var url = 'https://EastCloud@github.com/EastCloud/node-websockets.git'
    parse(url).should.eql('https://github.com/EastCloud/node-websockets')
  })

  // gist urls.

  it('should parse git@gist urls', function () {
    var url = 'git@gist.github.com:3135914.git'
    parse(url).should.equal('https://gist.github.com/3135914')
  })

  it('should parse https://gist urls', function () {
    var url = 'https://gist.github.com/3135914.git'
    parse(url).should.equal('https://gist.github.com/3135914')
  })

  // Handle arbitrary GitHub Enterprise domains.

  it('should parse parse extra GHE urls provided', function () {
    var url = 'git://github.example.com/treygriffith/cellar.git'
    parse(
      url, {extraBaseUrls: ['github.example.com']}
    ).should.equal('https://github.example.com/treygriffith/cellar')
  })

  it('should parse GHE urls with multiple subdomains', function () {
    var url = 'git://github.internal.example.com/treygriffith/cellar.git'
    parse(
      url, {extraBaseUrls: ['github.internal.example.com']}
    ).should.equal('https://github.internal.example.com/treygriffith/cellar')
  })
})

describe('re', function () {
  it('should expose GitHub url parsing regex', function () {
    parse.re.source.should.equal(
      /^(?:https?:\/\/|git:\/\/|git\+ssh:\/\/|git\+https:\/\/)?(?:[^@]+@)?(gist.github.com|github.com)(?::\/?|\/)([^/]+\/[^/]+?|[0-9]+)$/.source
    )
  })
})
genchangegenerate-simple-changelogopen-github-diffscogoportutilsrenovate@everything-registry/sub-chunk-1766wombat-dressing-roomworkshopper-browser-guidewhale-component-docgenvscode-github-file-folder-urlvcloudcam-playkit-js-hls@codedungeon/packagist-home@crcong/generate-changelog@cythral/renovateissue-linkkappa-wwwstart-starwars-libtj-npmtogo-np@akhilome/np@bee-icons/qwik@bsneddon/npme-auth-github@ckatzorke/renovate@cognistreamer/np@boundless-inc/mobiledoc-dom-renderer@deja-js/generate-changelogyapmyarn-changelog-generatoryarn-gen-changelogyarn-outdated-notifierzf-npvue-v3-yandex-metrikaupdate-mondayvfenpmversion-changelogvh-semantic-release-cliuptodate@emedvedev/renovate@gerhobbelt/changelog@innodata/vue-v3-ya-metrika@inkdpixels/release-notes-generator@kylemh/np@likun7981/np@manuth/package-json-editor@muukii/chglog-cli@hoodie/bundle-bump-bot@julianlam/generate-changelog@kamshak/release-notes-generator@moredhel/renovate@oneblink/release-cli@pika/publishmpd-parser-1mmm-git-somemyrenobatebotmyrenovatebotpackage-diff-summaryover-armour-masternpm2npm-2npm-repo-proxyomegapmoghlinernpnbnpme-auth-githubnpme-auth-gitlabrootnovateroc-plugin-reposemantic-release-clisemantic-sf-clinode-infong-renovatenf-conventional-changelognpm-betanpm-for-cnpmnpm-link-clinpnp-emekanpm-pkg-topnpm-script-contextpkp-plugin-cliplaykit-js-hls-sondqpolen-web-components-reactrenovate-csmrepo-url-from-packagerepo-npmpunchcard-semantic-releasegit-to-github-urlgithub-sluggithub-upstreamerglitch-deploygit-labelmakergit-labelmaker-32fixgithub-repo-urlgithub-repo-from-configgithub-post-releasegithub-linker-resolvegithub-linker-resolvergithub-url-from-npmgh-homegh-sec
1.5.0

9 years ago

1.4.0

11 years ago

1.3.0

11 years ago

1.2.0

11 years ago

1.1.1

12 years ago

1.1.0

12 years ago

1.0.0

12 years ago

0.0.1

12 years ago