saddler-reporter-support-git 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 98eeae525928a40adc311bf7604f9031897a133d
4
- data.tar.gz: ada9f45ead3535d22d51bbb80652ad30ae72bdbc
3
+ metadata.gz: 7466560b02e7c4227e113d4c375e20d6063c1565
4
+ data.tar.gz: e080c3a0b2a914aed5b4f4ec7c6c4ae38d2246d4
5
5
  SHA512:
6
- metadata.gz: 53a9e1bd716eba35b869082725711b782d1bd43a504d49fb4f5c5aff8baf79894aa30f2a675c63fe3ad41bbed24d194283af64818f754d8550b68b038356f396
7
- data.tar.gz: 02bff7146e8ce55f1f1ead3055891a0ccd989620dc180a2fe44f94ea4a16aa951bd4e797c8479b53b790b45f8883ddad263ddd9e2fdc0e0304e340cfbd73aabc
6
+ metadata.gz: f6f52383fc838407b5716d3f893819b3bc8c52a178c1bfb911683eaf2c49d68a94527457ea5477469f48d08a802ef31c6aeeecb94ab2e8b333c98655a6e253b9
7
+ data.tar.gz: b9ee3c11b900ac0524c21e1bbe8a56cd2268a27743a309569e01df91ce25f292da7aaff7421902f3fdb7bbda95e88b9926b14b3e8b1bd982aa643f53339a42d3
data/.travis.yml CHANGED
@@ -13,3 +13,7 @@ notifications:
13
13
  branches:
14
14
  only:
15
15
  - master
16
+ script: bundle exec rake --verbose
17
+ matrix:
18
+ allow_failures:
19
+ - rvm: 2.2
data/Rakefile CHANGED
@@ -4,6 +4,7 @@ require 'rake/testtask'
4
4
  Rake::TestTask.new(:test) do |t|
5
5
  t.libs << 'test'
6
6
  t.test_files = FileList['test/**/test*.rb']
7
+ t.verbose = true
7
8
  end
8
9
 
9
10
  task default: :test
@@ -1,4 +1,5 @@
1
1
  require 'git'
2
+ require 'addressable/uri'
2
3
  require 'saddler/reporter/support/git/version'
3
4
  require 'saddler/reporter/support/git/repository'
4
5
 
@@ -3,26 +3,25 @@ module Saddler
3
3
  module Support
4
4
  module Git
5
5
  class Repository
6
- def initialize(path)
7
- @git = ::Git.open(path)
6
+ attr_reader :git
7
+
8
+ def initialize(path, options = {})
9
+ @git = ::Git.open(path, options)
8
10
  end
9
11
 
10
12
  def slug
11
- name = /[[:alnum:]_\-\.]*/
12
- repo = /[[:alnum:]_\-\.]*/
13
- regex_slug = %r{#{name}/#{repo}}
14
- regex = /.*?#{Regexp.quote(github_domain)}.*?(?<slug>#{regex_slug})/
15
- target = remote_urls.map do |url|
16
- match = regex.match(strip_git_extension(url))
13
+ slug_regex = %r{\A/?(?<slug>.*?)(?:\.git)?\Z}
14
+ remote_urls.map do |url|
15
+ uri = Addressable::URI.parse(url)
16
+ match = slug_regex.match(uri.path)
17
17
  match[:slug] if match
18
18
  end.compact.first
19
19
  end
20
20
 
21
21
  def remote_urls
22
22
  @git
23
- .branches
24
- .remote
25
- .map { |branch| branch.remote.url }
23
+ .remotes
24
+ .map(&:url)
26
25
  end
27
26
 
28
27
  def current_branch
@@ -33,21 +32,16 @@ module Saddler
33
32
  @git.object('HEAD')
34
33
  end
35
34
 
36
- def strip_git_extension(name)
37
- match = /\A(?<identity>.*?)(?:\.git)?\z/.match(name)
38
- match[:identity] if match
39
- end
40
-
41
- # FIXME: if endpoint set, this return wrong result
42
- def github_domain
43
- github_api_endpoint
44
- .split('.')
45
- .slice(-2, 2)
46
- .join('.')
35
+ def push_endpoint
36
+ (env_push_endpoint || 'github.com').chomp('/')
47
37
  end
48
38
 
49
- def github_api_endpoint
50
- ENV['GITHUB_API_ENDPOINT'] || 'api.github.com'
39
+ # e.g. 'github.com'
40
+ # git@github.com:packsaddle/ruby-saddler-reporter-support-git.git
41
+ def env_push_endpoint
42
+ if ENV['PUSH_ENDPOINT']
43
+ ENV['PUSH_ENDPOINT']
44
+ end
51
45
  end
52
46
 
53
47
  def env_current_branch
@@ -2,7 +2,7 @@ module Saddler
2
2
  module Reporter
3
3
  module Support
4
4
  module Git
5
- VERSION = '0.1.1'
5
+ VERSION = '0.1.2'
6
6
  end
7
7
  end
8
8
  end
@@ -20,8 +20,10 @@ Gem::Specification.new do |spec|
20
20
  spec.require_paths = ['lib']
21
21
 
22
22
  spec.add_runtime_dependency 'git'
23
+ spec.add_runtime_dependency 'addressable'
23
24
 
24
25
  spec.add_development_dependency 'bundler', '~> 1.8'
25
26
  spec.add_development_dependency 'rake', '~> 10.0'
26
27
  spec.add_development_dependency 'test-unit'
28
+ spec.add_development_dependency 'mocha'
27
29
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: saddler-reporter-support-git
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - sanemat
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-02-24 00:00:00.000000000 Z
11
+ date: 2015-02-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: git
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: addressable
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: bundler
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -66,6 +80,20 @@ dependencies:
66
80
  - - ">="
67
81
  - !ruby/object:Gem::Version
68
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: mocha
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
69
97
  description: Utilities for Saddler reporter and git repository.
70
98
  email:
71
99
  - o.gata.ken@gmail.com