git-gems 0.0.3 → 0.0.4
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.
- data/.travis.yml +8 -0
- data/README.md +4 -3
- data/Rakefile +18 -0
- data/git-gems.gemspec +5 -1
- data/lib/git/gems/version.rb +1 -1
- data/spec/lib/git/gems/cli_spec.rb +69 -0
- data/spec/spec_helper.rb +29 -0
- metadata +96 -16
- checksums.yaml +0 -7
data/.travis.yml
ADDED
data/README.md
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
[](https://travis-ci.org/magicdrive/ruby-git-gems)
|
1
2
|
# Git::Gems
|
2
3
|
|
3
4
|
my bundler and git wrapper. (thor based)
|
@@ -35,10 +36,10 @@ make a template of the repository nor a rack app without also be of gem.
|
|
35
36
|
|
36
37
|
git gems init
|
37
38
|
|
38
|
-
`
|
39
|
+
`release` command:
|
39
40
|
taged for release. Tag name is the default YYYYMMDDHHmm.
|
40
41
|
|
41
|
-
git gems
|
42
|
+
git gems release [--version][version_name]
|
42
43
|
|
43
44
|
`exec` command:
|
44
45
|
The runs are passed to the bundle exec option if it does not support came over. Argument is also in accordance with the rules of the `bundle exec`.
|
@@ -52,7 +53,7 @@ The runs are passed to the bundle exec option if it does not support came over.
|
|
52
53
|
|
53
54
|
## Contributing
|
54
55
|
|
55
|
-
1. Fork it ( https://github.com/
|
56
|
+
1. Fork it ( https://github.com/magicdrive/ruby-git-gems/fork )
|
56
57
|
2. Create your feature branch (`git checkout -b my-new-feature`)
|
57
58
|
3. Commit your changes (`git commit -am 'Add some feature'`)
|
58
59
|
4. Push to the branch (`git push origin my-new-feature`)
|
data/Rakefile
CHANGED
@@ -1,2 +1,20 @@
|
|
1
|
+
# coding: utf-8
|
1
2
|
require "bundler/gem_tasks"
|
3
|
+
require "bundler/setup"
|
2
4
|
|
5
|
+
task :default => [:spec]
|
6
|
+
|
7
|
+
begin
|
8
|
+
require 'rspec/core/rake_task'
|
9
|
+
require 'rspec'
|
10
|
+
require 'rr'
|
11
|
+
RSpec::Core::RakeTask.new(:spec) do |t|
|
12
|
+
t.rspec_opts = ['-c', '-f progress', '-r ./spec/spec_helper.rb']
|
13
|
+
t.pattern = 'spec/**/*_spec.rb'
|
14
|
+
end
|
15
|
+
RSpec.configure do |config|
|
16
|
+
config.mock_with :rr
|
17
|
+
# config.mock_with RR::Adapters::Rspec
|
18
|
+
end
|
19
|
+
rescue LoadError => e
|
20
|
+
end
|
data/git-gems.gemspec
CHANGED
@@ -9,7 +9,7 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.authors = ["Hiroshi IKEGAMI"]
|
10
10
|
spec.email = ["hiroshi.ikegami@magicdrive.jp"]
|
11
11
|
spec.summary = %q{rubygem utililty: bundler and git wrapper}
|
12
|
-
spec.description = %q{}
|
12
|
+
spec.description = %q{rubygem utililty: bundler and git wrapper}
|
13
13
|
spec.homepage = "https://github.com/magicdrive/ruby-git-gems"
|
14
14
|
spec.license = "MIT"
|
15
15
|
|
@@ -20,4 +20,8 @@ Gem::Specification.new do |spec|
|
|
20
20
|
|
21
21
|
spec.add_runtime_dependency "thor", "~> 0.19.1"
|
22
22
|
spec.add_runtime_dependency "bundler", "~> 1.6"
|
23
|
+
spec.add_development_dependency "rspec", "~> 3.0"
|
24
|
+
spec.add_development_dependency "rr", "~> 1.1.2"
|
25
|
+
spec.add_development_dependency "pry"
|
26
|
+
spec.add_development_dependency "rake"
|
23
27
|
end
|
data/lib/git/gems/version.rb
CHANGED
@@ -0,0 +1,69 @@
|
|
1
|
+
describe Git::Gems::CLI do
|
2
|
+
context "success" do
|
3
|
+
|
4
|
+
before(:each) do
|
5
|
+
@instance = Git::Gems::CLI.new
|
6
|
+
end
|
7
|
+
|
8
|
+
describe "#install" do
|
9
|
+
it do
|
10
|
+
expect(capture(:stdout) {
|
11
|
+
@instance.invoke(:install, [], {})
|
12
|
+
}).to eq("bundle install --path=./.bundle --binstubs=./.bundle/bin \n")
|
13
|
+
end
|
14
|
+
|
15
|
+
it do
|
16
|
+
expect(capture(:stdout) {
|
17
|
+
@instance.invoke(:install, [["--test", 'fuga']], {:path => "./hoge", :binstubs => "./binhoge"})
|
18
|
+
}).to eq("bundle install --path=./hoge --binstubs=./binhoge --test fuga\n")
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
describe "#exec" do
|
23
|
+
it do
|
24
|
+
expect(capture(:stdout) {
|
25
|
+
@instance.invoke(:exec, ['test', ["--hoge", "bar"]], {})
|
26
|
+
}).to eq("bundle exec test --hoge bar\n")
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
describe "#init" do
|
31
|
+
it do
|
32
|
+
expect(capture(:stdout) {
|
33
|
+
@instance.invoke(:init, [], {})
|
34
|
+
}).to eq(<<-STRING
|
35
|
+
cp -a #{$project_path}/fixtures/Rakefile.template ./Rakefile
|
36
|
+
cp -a #{$project_path}/fixtures/Gemfile.template ./Gemfile
|
37
|
+
cp -a #{$project_path}/fixtures/README.md.template ./README.md
|
38
|
+
mkdir -p lib spec
|
39
|
+
touch lib/.keep spec/.keep
|
40
|
+
git init
|
41
|
+
STRING
|
42
|
+
)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
describe "#release" do
|
47
|
+
it do
|
48
|
+
expect(capture(:stdout) {
|
49
|
+
@instance.invoke(:release, [], {})
|
50
|
+
}).to match(/git tag -a 'release-[0-9]{12}'/)
|
51
|
+
end
|
52
|
+
it do
|
53
|
+
expect(capture(:stdout) {
|
54
|
+
@instance.invoke(:release, [], {:version => 'hoge'})
|
55
|
+
}).to eq("git tag -a 'release-hoge'\n")
|
56
|
+
end
|
57
|
+
it do
|
58
|
+
expect(capture(:stdout) {
|
59
|
+
@instance.invoke(:release, [], {:version => 'fuga', :push => true})
|
60
|
+
}).to eq(<<-STRING
|
61
|
+
git tag -a 'release-fuga'
|
62
|
+
git push origin --tags
|
63
|
+
STRING
|
64
|
+
)
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
end
|
69
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
# spec_helper file.
|
2
|
+
require File.expand_path('../lib/git/gems', File.dirname(__FILE__))
|
3
|
+
require 'stringio'
|
4
|
+
require 'pry'
|
5
|
+
|
6
|
+
def capture(stream)
|
7
|
+
begin
|
8
|
+
stream = stream.to_s
|
9
|
+
eval "$#{stream} = StringIO.new"
|
10
|
+
yield
|
11
|
+
result = eval("$#{stream}").string
|
12
|
+
ensure
|
13
|
+
eval("$#{stream} = #{stream.upcase}")
|
14
|
+
end
|
15
|
+
return result
|
16
|
+
end
|
17
|
+
|
18
|
+
|
19
|
+
class Git::Gems::CLI
|
20
|
+
private
|
21
|
+
def exec_cmd(command)
|
22
|
+
puts command
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
|
27
|
+
$project_path = "#{File.expand_path("../", File.dirname(__FILE__))}"
|
28
|
+
|
29
|
+
__END__
|
metadata
CHANGED
@@ -1,44 +1,113 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: git-gems
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Hiroshi IKEGAMI
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2014-
|
12
|
+
date: 2014-09-10 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: thor
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
16
18
|
requirements:
|
17
|
-
- -
|
19
|
+
- - ~>
|
18
20
|
- !ruby/object:Gem::Version
|
19
21
|
version: 0.19.1
|
20
22
|
type: :runtime
|
21
23
|
prerelease: false
|
22
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
23
26
|
requirements:
|
24
|
-
- -
|
27
|
+
- - ~>
|
25
28
|
- !ruby/object:Gem::Version
|
26
29
|
version: 0.19.1
|
27
30
|
- !ruby/object:Gem::Dependency
|
28
31
|
name: bundler
|
29
32
|
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
30
34
|
requirements:
|
31
|
-
- -
|
35
|
+
- - ~>
|
32
36
|
- !ruby/object:Gem::Version
|
33
37
|
version: '1.6'
|
34
38
|
type: :runtime
|
35
39
|
prerelease: false
|
36
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
37
42
|
requirements:
|
38
|
-
- -
|
43
|
+
- - ~>
|
39
44
|
- !ruby/object:Gem::Version
|
40
45
|
version: '1.6'
|
41
|
-
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: rspec
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ~>
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '3.0'
|
54
|
+
type: :development
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '3.0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: rr
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ~>
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: 1.1.2
|
70
|
+
type: :development
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ~>
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: 1.1.2
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: pry
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
82
|
+
requirements:
|
83
|
+
- - ! '>='
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: '0'
|
86
|
+
type: :development
|
87
|
+
prerelease: false
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '0'
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: rake
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - ! '>='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '0'
|
102
|
+
type: :development
|
103
|
+
prerelease: false
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
110
|
+
description: ! 'rubygem utililty: bundler and git wrapper'
|
42
111
|
email:
|
43
112
|
- hiroshi.ikegami@magicdrive.jp
|
44
113
|
executables:
|
@@ -46,7 +115,8 @@ executables:
|
|
46
115
|
extensions: []
|
47
116
|
extra_rdoc_files: []
|
48
117
|
files:
|
49
|
-
-
|
118
|
+
- .gitignore
|
119
|
+
- .travis.yml
|
50
120
|
- Gemfile
|
51
121
|
- LICENSE.txt
|
52
122
|
- README.md
|
@@ -59,29 +129,39 @@ files:
|
|
59
129
|
- lib/git/gems.rb
|
60
130
|
- lib/git/gems/cli.rb
|
61
131
|
- lib/git/gems/version.rb
|
132
|
+
- spec/lib/git/gems/cli_spec.rb
|
133
|
+
- spec/spec_helper.rb
|
62
134
|
homepage: https://github.com/magicdrive/ruby-git-gems
|
63
135
|
licenses:
|
64
136
|
- MIT
|
65
|
-
metadata: {}
|
66
137
|
post_install_message:
|
67
138
|
rdoc_options: []
|
68
139
|
require_paths:
|
69
140
|
- lib
|
70
141
|
required_ruby_version: !ruby/object:Gem::Requirement
|
142
|
+
none: false
|
71
143
|
requirements:
|
72
|
-
- -
|
144
|
+
- - ! '>='
|
73
145
|
- !ruby/object:Gem::Version
|
74
146
|
version: '0'
|
147
|
+
segments:
|
148
|
+
- 0
|
149
|
+
hash: -4172901293457813149
|
75
150
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
151
|
+
none: false
|
76
152
|
requirements:
|
77
|
-
- -
|
153
|
+
- - ! '>='
|
78
154
|
- !ruby/object:Gem::Version
|
79
155
|
version: '0'
|
156
|
+
segments:
|
157
|
+
- 0
|
158
|
+
hash: -4172901293457813149
|
80
159
|
requirements: []
|
81
160
|
rubyforge_project:
|
82
|
-
rubygems_version:
|
161
|
+
rubygems_version: 1.8.23.2
|
83
162
|
signing_key:
|
84
|
-
specification_version:
|
85
|
-
summary: 'rubygem utililty: bundler and git wrapper'
|
86
|
-
test_files:
|
87
|
-
|
163
|
+
specification_version: 3
|
164
|
+
summary: ! 'rubygem utililty: bundler and git wrapper'
|
165
|
+
test_files:
|
166
|
+
- spec/lib/git/gems/cli_spec.rb
|
167
|
+
- spec/spec_helper.rb
|
checksums.yaml
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
---
|
2
|
-
SHA1:
|
3
|
-
metadata.gz: b78f169778098dd843eba2f5f3527b3f7eac4b12
|
4
|
-
data.tar.gz: bd95c9845c9bd911ef548d6fbd253fad71edc2e4
|
5
|
-
SHA512:
|
6
|
-
metadata.gz: 116e5037b2c78b4b02c7c36950b84eb9c328f936605234046cde20477322c5aac7987be9716e83c0c7cbd864f11b84c71ef781f54e21b8be03d471141c66e842
|
7
|
-
data.tar.gz: 12fe8db8dad7612e729479d07c7c2edfce0eb8c1f56ae609b423eaef92e5d79e18aad860d9a41ed7293bd5046048a1c7dbfd80d2f8d8cc3bccfb877641c6e8e9
|