rgithook 3.0.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.
- data.tar.gz.sig +0 -0
- data/CHANGELOG +3 -0
- data/Manifest +42 -0
- data/README.rdoc +12 -0
- data/Rakefile +22 -0
- data/TODO.txt +4 -0
- data/bin/rgithook +13 -0
- data/lib/plugins/custom.rb +18 -0
- data/lib/plugins/db.rb +34 -0
- data/lib/plugins/email.rb +39 -0
- data/lib/plugins/html.rb +53 -0
- data/lib/plugins/html/commit.html.erb +26 -0
- data/lib/plugins/html/diff.html.erb +16 -0
- data/lib/plugins/rake.rb +14 -0
- data/lib/plugins/spec/rgithook_formatter.rb +74 -0
- data/lib/plugins/spec/spec_result.rb +5 -0
- data/lib/plugins/temp.rb +41 -0
- data/lib/plugins/test.rb +37 -0
- data/lib/plugins/twitter.rb +13 -0
- data/lib/rgithook.rb +36 -0
- data/lib/rgithook/command_line.rb +47 -0
- data/lib/rgithook/hook.rb +39 -0
- data/lib/rgithook/plugin.rb +105 -0
- data/lib/rgithook/rgithook.rb +229 -0
- data/lib/rgithook/runner.rb +178 -0
- data/lib/rgithook/templates/hook.rb +6 -0
- data/lib/rgithook/templates/rgithook.rb +18 -0
- data/lib/rgithook/test/unit.rb +70 -0
- data/rgithook.gemspec +42 -0
- data/test/fixtures/sample_plugin.rb +28 -0
- data/test/fixtures/sample_repo.zip +0 -0
- data/test/integration/test_install.rb +68 -0
- data/test/integration/test_pull_and_push.rb +20 -0
- data/test/plugins/test_email.rb +8 -0
- data/test/plugins/test_html.rb +6 -0
- data/test/plugins/test_spec.rb +6 -0
- data/test/plugins/test_test.rb +14 -0
- data/test/test_helper.rb +12 -0
- data/test/unit/test_command_line.rb +59 -0
- data/test/unit/test_hook.rb +31 -0
- data/test/unit/test_plugin.rb +36 -0
- data/test/unit/test_rgithook.rb +143 -0
- data/test/unit/test_runner.rb +95 -0
- metadata +174 -0
- metadata.gz.sig +2 -0
@@ -0,0 +1,14 @@
|
|
1
|
+
class EmailPluginTest < Test::Unit::TestCase
|
2
|
+
def test_test
|
3
|
+
with_sample_rgithook do
|
4
|
+
in_runner "test(repo.commits[0])"
|
5
|
+
assert @rgithook.repo.commits[0].properties.include? "spec"
|
6
|
+
assert @rgithook.repo.commits[0].properties.include? "cucumber"
|
7
|
+
assert @rgithook.repo.commits[0].properties.include? "spec"
|
8
|
+
assert @rgithook.repo.commits[0].properties.include? "status"
|
9
|
+
assert_equal @rgithook.repo.commits[0].properties["status"], 0
|
10
|
+
|
11
|
+
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
data/test/test_helper.rb
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
require File.dirname(__FILE__) + '/../lib/rgithook'
|
3
|
+
require 'rgithook/test/unit'
|
4
|
+
|
5
|
+
require 'tmpdir'
|
6
|
+
require 'tempfile'
|
7
|
+
require 'fileutils'
|
8
|
+
require 'mocha'
|
9
|
+
require 'ruby-debug'
|
10
|
+
require 'rgithook/test/unit'
|
11
|
+
require File.dirname(__FILE__) + '/fixtures/sample_plugin'
|
12
|
+
|
@@ -0,0 +1,59 @@
|
|
1
|
+
require File.dirname(__FILE__)+'/../test_helper'
|
2
|
+
|
3
|
+
module RGitHook
|
4
|
+
class CommandLineTest < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
@repo = mock()
|
7
|
+
@rgithook = mock()
|
8
|
+
::Grit::Repo.stubs(:new).returns(@repo)
|
9
|
+
Dir.stubs(:pwd).returns('pwd')
|
10
|
+
end
|
11
|
+
|
12
|
+
|
13
|
+
def test_install
|
14
|
+
RGitHook.expects(:new).with('pwd').returns(@rgithook)
|
15
|
+
@rgithook.expects(:install)
|
16
|
+
CommandLine.expects(:exit).with(0)
|
17
|
+
CommandLine.execute(['--install'])
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_edit
|
21
|
+
RGitHook.expects(:new).with('pwd').returns(@rgithook)
|
22
|
+
@rgithook.expects(:edit)
|
23
|
+
CommandLine.expects(:exit).with(0)
|
24
|
+
CommandLine.execute(['--edit'])
|
25
|
+
end
|
26
|
+
|
27
|
+
def test_fetch
|
28
|
+
RGitHook.expects(:new).with('pwd').returns(@rgithook)
|
29
|
+
@rgithook.expects(:fetch)
|
30
|
+
CommandLine.expects(:exit).with(0)
|
31
|
+
CommandLine.execute(['--fetch'])
|
32
|
+
end
|
33
|
+
|
34
|
+
# def test_install_in_bare_repo
|
35
|
+
# in_temp_bare_repo do |repo|
|
36
|
+
# assert system(rgithook_command_path("--install --path=#{repo.path}"))
|
37
|
+
# check_files(repo)
|
38
|
+
# end
|
39
|
+
# end
|
40
|
+
|
41
|
+
|
42
|
+
def hide
|
43
|
+
" 2>&1 > /dev/null"
|
44
|
+
end
|
45
|
+
|
46
|
+
def check_files(repo)
|
47
|
+
path = File.join(repo.path,'hooks')
|
48
|
+
file = File.join(path,'rgithook.rb')
|
49
|
+
assert File.exist?(file)
|
50
|
+
assert_equal 0600, (File.stat(file).mode & 0777)
|
51
|
+
|
52
|
+
HOOKS.each do |hook_name|
|
53
|
+
file = File.join(path,hook_name.tr('_','-'))
|
54
|
+
assert File.exist?(file)
|
55
|
+
assert_equal 0555, (File.stat(file).mode & 0777)
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require File.dirname(__FILE__)+'/../test_helper'
|
2
|
+
|
3
|
+
|
4
|
+
module RGitHook
|
5
|
+
class HookTest < Test::Unit::TestCase
|
6
|
+
|
7
|
+
def test_self_execute
|
8
|
+
$0 = 'potatos-super-hook'
|
9
|
+
Hook.expects(:puts).with('Executing potatos-super-hook hook')
|
10
|
+
Hook.expects(:potatos_super_hook)
|
11
|
+
Hook.execute
|
12
|
+
end
|
13
|
+
|
14
|
+
|
15
|
+
def test_post_receive
|
16
|
+
|
17
|
+
repo = mock('grit_repo')
|
18
|
+
repo.stubs(:path).returns('path')
|
19
|
+
RGitHook.stubs(:parse_path).with(:repo).returns(repo)
|
20
|
+
Hook.expects(:repo_path).at_least_once.returns('repo_path')
|
21
|
+
|
22
|
+
rgithook = mock()
|
23
|
+
RGitHook.expects(:new).with('repo_path').returns(rgithook)
|
24
|
+
STDIN.expects(:read).returns("aaaa bbbb ref1\ncccc dddd ref2\n")
|
25
|
+
|
26
|
+
rgithook.expects(:post_receive).with('aaaa','bbbb','ref1').returns( [['meth1','5'],[20,20]])
|
27
|
+
rgithook.expects(:post_receive).with('cccc','dddd','ref2').returns( [['6',7],[20,20]])
|
28
|
+
assert_equal Hook.post_receive, 7
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
require File.dirname(__FILE__)+'/../test_helper'
|
2
|
+
|
3
|
+
|
4
|
+
class TestPlugin < Test::Unit::TestCase
|
5
|
+
include RGitHook
|
6
|
+
|
7
|
+
# def setup
|
8
|
+
# options = {:SamplePlugin => {:test_option=>:load_value, :test_group=>{:test_option_group_option=>:load_value}}}
|
9
|
+
# File.stubs(:read).with(Plugin::CONF_FILE).returns(options.to_yaml)
|
10
|
+
# end
|
11
|
+
|
12
|
+
def test_runner_methods
|
13
|
+
repo = mock_repo
|
14
|
+
Plugin.load!
|
15
|
+
runner = Runner.new(repo)
|
16
|
+
assert_equal runner.test_method, 'test_result'
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_grit_commit_methods
|
20
|
+
Plugin.load!
|
21
|
+
assert ::Grit::Commit.instance_methods.include?("test_method"), 'Plugin::GritCoomit is not included in Grit::Commit'
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_options_to_hash
|
25
|
+
options = Plugin.options_to_hash[:SamplePlugin]
|
26
|
+
assert_equal options[:test_option], :default_value
|
27
|
+
assert_equal options[:test_group][:test_option_group_option], :default_value
|
28
|
+
end
|
29
|
+
|
30
|
+
def test_load!
|
31
|
+
assert_nothing_raised{
|
32
|
+
Plugin.load!
|
33
|
+
}
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
@@ -0,0 +1,143 @@
|
|
1
|
+
require File.dirname(__FILE__)+'/../test_helper'
|
2
|
+
|
3
|
+
module RGitHook
|
4
|
+
class RGitHookTest < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
@runner = mock('runner')
|
7
|
+
@runner.stubs(:load_options)
|
8
|
+
@runner.stubs(:binding)
|
9
|
+
@runner.stubs(:load)
|
10
|
+
@repo = mock('grit_repo')
|
11
|
+
@repo.stubs(:path).returns('path')
|
12
|
+
Runner.stubs(:new).returns(@runner)
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_run
|
16
|
+
@runner.expects(:run).with('code',nil,nil).returns(:done)
|
17
|
+
assert_equal :done, create_rgithook_instance.run('code')
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_class_install
|
21
|
+
repo = mock('grit_repo')
|
22
|
+
repo.stubs(:path).returns('path')
|
23
|
+
::Grit::Repo.stubs(:new).with(:repo).returns(repo)
|
24
|
+
|
25
|
+
FileUtils.stubs(:mkdir).with('path/hooks')
|
26
|
+
File.expects(:'exist?').with('path/hooks')
|
27
|
+
RGitHook.expects(:install_template).at_least(4)
|
28
|
+
RGitHook.expects(:parse_path).with(:repo).returns(repo)
|
29
|
+
RGitHook.install(:repo,false)
|
30
|
+
end
|
31
|
+
|
32
|
+
def test_install
|
33
|
+
RGitHook.expects(:install).with(@repo,true).once.returns(:return_value)
|
34
|
+
assert_equal create_rgithook_instance.install, :return_value
|
35
|
+
end
|
36
|
+
|
37
|
+
|
38
|
+
def test_class_call_editor
|
39
|
+
RGitHook.stubs(:parse_path).with(:repo).returns(mock_repo)
|
40
|
+
RGitHook.expects(:conf_file).returns(:file)
|
41
|
+
RGitHook.expects(:system).with('vi',:file )
|
42
|
+
RGitHook.call_editor(:repo)
|
43
|
+
end
|
44
|
+
|
45
|
+
def test_call_editor
|
46
|
+
rgithook = create_rgithook_instance
|
47
|
+
RGitHook.expects(:call_editor).with(@repo).once
|
48
|
+
rgithook.call_editor
|
49
|
+
end
|
50
|
+
|
51
|
+
HOOKS.each do |hook|
|
52
|
+
hook_tests = <<-EOT
|
53
|
+
def test_class_#{hook}
|
54
|
+
assert RGitHook.public_methods.include?('#{hook}'), '#{hook} must be exists in RGitHook'
|
55
|
+
end
|
56
|
+
|
57
|
+
def test_#{hook}
|
58
|
+
@rgithook = create_rgithook_instance
|
59
|
+
assert @rgithook.public_methods.include?('#{hook}'), '#{hook} must be exists in a RGitHook instance'
|
60
|
+
end
|
61
|
+
EOT
|
62
|
+
eval( hook_tests, binding, __FILE__, __LINE__-12)
|
63
|
+
end
|
64
|
+
|
65
|
+
def test_class_post_receive
|
66
|
+
rgithook = mock()
|
67
|
+
RGitHook.expects(:new).with(:dir).returns(rgithook)
|
68
|
+
rgithook.expects(:post_receive).with(:a,:b,:c)
|
69
|
+
RGitHook.post_receive(:dir,:a,:b,:c)
|
70
|
+
end
|
71
|
+
|
72
|
+
|
73
|
+
|
74
|
+
def test_post_receive
|
75
|
+
@rgithook = create_rgithook_instance
|
76
|
+
@runner.expects(:run_hooks).with(:post_receive,1,2,'3')
|
77
|
+
|
78
|
+
@rgithook.post_receive(1,2,'3')
|
79
|
+
end
|
80
|
+
|
81
|
+
def test_install_template
|
82
|
+
repo = mock('grit_repo')
|
83
|
+
repo.stubs(:path).returns('path')
|
84
|
+
RGitHook.stubs(:parse_path).with(:repo).returns(repo)
|
85
|
+
File.expects(:join).with(PATH,'rgithook','templates','from').returns(:from)
|
86
|
+
File.expects(:join).with('path','hooks','to').returns(:to)
|
87
|
+
FileUtils.expects(:install).with(:from,:to, :mode => 0666)
|
88
|
+
|
89
|
+
RGitHook.send(:install_template,:repo, 'from','to',0666)
|
90
|
+
end
|
91
|
+
|
92
|
+
def test_install_template_with_defaults
|
93
|
+
repo = mock('grit_repo')
|
94
|
+
repo.stubs(:path).returns('path')
|
95
|
+
RGitHook.stubs(:parse_path).with(:repo).returns(repo)
|
96
|
+
|
97
|
+
File.expects(:join).with(PATH,'rgithook','templates','from').returns(:from)
|
98
|
+
File.expects(:join).with('path','hooks','from').returns(:to)
|
99
|
+
|
100
|
+
FileUtils.expects(:install).with(:from,:to, :mode => 0600)
|
101
|
+
|
102
|
+
RGitHook.send(:install_template,:repo, 'from')
|
103
|
+
end
|
104
|
+
|
105
|
+
def test_new
|
106
|
+
Plugin.expects(:load!)
|
107
|
+
RGitHook.expects(:parse_path).with(@repo).returns(@repo)
|
108
|
+
Runner.expects(:new).with(@repo).returns(@runner)
|
109
|
+
@runner.expects(:load_options).with('plugin_conf_file')
|
110
|
+
@runner.expects(:load).with('hooks_file')
|
111
|
+
RGitHook.any_instance.expects(:plugin_conf_file).returns('plugin_conf_file')
|
112
|
+
RGitHook.any_instance.expects(:hooks_file).returns('hooks_file')
|
113
|
+
|
114
|
+
|
115
|
+
RGitHook.new(@repo)
|
116
|
+
end
|
117
|
+
|
118
|
+
def test_save_plugin_options
|
119
|
+
RGitHook.stubs(:parse_path).with(@repo).returns(@repo)
|
120
|
+
|
121
|
+
options = {:option => 1}
|
122
|
+
@repo.stubs(:path).returns('path')
|
123
|
+
@runner.expects(:options).returns(options)
|
124
|
+
file = mock('IO')
|
125
|
+
file.expects(:write).with(options.to_yaml)
|
126
|
+
File.expects(:open).with('path/hooks/rgithook.yaml','w').yields(file)
|
127
|
+
|
128
|
+
@rgithook = RGitHook.new(@repo)
|
129
|
+
@rgithook.save_plugin_options
|
130
|
+
end
|
131
|
+
|
132
|
+
def test_class_installed?
|
133
|
+
RGitHook.expects(:hooks_file).with(@repo).returns('path')
|
134
|
+
File.expects(:file?).with('path').returns(false)
|
135
|
+
assert !RGitHook.installed?(@repo)
|
136
|
+
end
|
137
|
+
|
138
|
+
def test_installed?
|
139
|
+
RGitHook.expects(:installed?).with(@repo).returns(true)
|
140
|
+
assert create_rgithook_instance.installed?
|
141
|
+
end
|
142
|
+
end
|
143
|
+
end
|
@@ -0,0 +1,95 @@
|
|
1
|
+
require File.dirname(__FILE__)+'/../test_helper'
|
2
|
+
|
3
|
+
module RGitHook
|
4
|
+
|
5
|
+
class RunnerTest < Test::Unit::TestCase
|
6
|
+
def setup
|
7
|
+
@repo = mock('grit_repo')
|
8
|
+
@repo.stubs(:'is_a?').with(::Grit::Repo).returns(true)
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_new
|
12
|
+
assert_raise ArgumentError do
|
13
|
+
Runner.new('.')
|
14
|
+
end
|
15
|
+
|
16
|
+
repo = mock('grit_repo')
|
17
|
+
repo.expects(:'is_a?').with(::Grit::Repo).returns(true)
|
18
|
+
assert_nothing_raised do
|
19
|
+
Runner.new repo
|
20
|
+
end
|
21
|
+
|
22
|
+
assert_instance_of Runner, Runner.new(@repo)
|
23
|
+
runner = Runner.new @repo
|
24
|
+
assert runner.options[:SamplePlugin][:test_option], :default_value
|
25
|
+
assert runner.options[:SamplePlugin][:test_group][:test_option_group_option], :default_value
|
26
|
+
end
|
27
|
+
|
28
|
+
def test_on
|
29
|
+
assert_raise(ArgumentError) { Runner.new(@repo).on(:false_hook ) {}; }
|
30
|
+
assert_nothing_raised { Runner.new(@repo).on(HOOKS.first.to_sym) {}; }
|
31
|
+
end
|
32
|
+
|
33
|
+
|
34
|
+
def test_hooks
|
35
|
+
hook = HOOKS.first.to_sym
|
36
|
+
runner = Runner.new @repo
|
37
|
+
|
38
|
+
mock = mock('test_class', :meth1 => 'meth1',:meth2 => 'meth2')
|
39
|
+
runner.expects(:fork).times(2).returns(20)
|
40
|
+
Plugin.expects(:load!)
|
41
|
+
|
42
|
+
runner.on(hook) {mock.meth1}
|
43
|
+
runner.on(hook) {mock.meth2}
|
44
|
+
|
45
|
+
runner.on(hook, :background => true) {mock.meth1}
|
46
|
+
runner.on(hook, :background => true) {mock.meth2}
|
47
|
+
|
48
|
+
assert_equal runner.run_hooks(hook), [['meth1','meth2'],[20,20]]
|
49
|
+
|
50
|
+
end
|
51
|
+
|
52
|
+
def test_foreground_hooks
|
53
|
+
hook = HOOKS.first.to_sym
|
54
|
+
runner = Runner.new @repo
|
55
|
+
|
56
|
+
mock = mock('test_class', :meth1 => 'meth1',:meth2 => 'meth2')
|
57
|
+
|
58
|
+
runner.on(hook) {mock.meth1}
|
59
|
+
runner.on(hook) {mock.meth2}
|
60
|
+
|
61
|
+
assert_equal runner.send(:run_foreground_hooks,hook), ['meth1','meth2']
|
62
|
+
end
|
63
|
+
|
64
|
+
def test_run
|
65
|
+
runner = Runner.new @repo
|
66
|
+
assert_raise SamplePluginException do
|
67
|
+
runner.run(<<-EOF
|
68
|
+
raised_method
|
69
|
+
EOF
|
70
|
+
)
|
71
|
+
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
|
76
|
+
def test_background_hooks
|
77
|
+
hook = HOOKS.first.to_sym
|
78
|
+
runner = Runner.new @repo
|
79
|
+
|
80
|
+
|
81
|
+
runner.expects(:fork).times(2).returns(20)
|
82
|
+
runner.on(hook, :background => true) {mock.meth1}
|
83
|
+
runner.on(hook, :background => true) {mock.meth2}
|
84
|
+
|
85
|
+
assert_equal runner.send(:run_background_hooks, hook), [20,20]
|
86
|
+
end
|
87
|
+
|
88
|
+
def test_options
|
89
|
+
runner = Runner.new @repo
|
90
|
+
|
91
|
+
assert runner.options[:SamplePlugin][:test_option], :default_value
|
92
|
+
assert runner.options[:SamplePlugin][:test_group][:test_option_group_option], :default_value
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
metadata
ADDED
@@ -0,0 +1,174 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rgithook
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 3.0.2
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- "Guillermo \xC3\x81lvarez"
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain:
|
11
|
+
- |
|
12
|
+
-----BEGIN CERTIFICATE-----
|
13
|
+
MIIDPjCCAiagAwIBAgIBADANBgkqhkiG9w0BAQUFADBFMRIwEAYDVQQDDAlndWls
|
14
|
+
bGVybW8xGjAYBgoJkiaJk/IsZAEZFgpjaWVudGlmaWNvMRMwEQYKCZImiZPyLGQB
|
15
|
+
GRYDbmV0MB4XDTA4MTIxMjIxMTY1OFoXDTA5MTIxMjIxMTY1OFowRTESMBAGA1UE
|
16
|
+
AwwJZ3VpbGxlcm1vMRowGAYKCZImiZPyLGQBGRYKY2llbnRpZmljbzETMBEGCgmS
|
17
|
+
JomT8ixkARkWA25ldDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM/X
|
18
|
+
0myvq1KoWadmBdL4hMVR/dvli005PkDVpNT+M/84QdRHaMJaNsJzw0yJUnzQrIQa
|
19
|
+
IGyXFMcVmeRdHjXYsYQhJhOzyucS+CbDixdUKNe5A6POrh8ksMbL4sicI/XGOdMj
|
20
|
+
vTLMJSaC7P1U+jOG1H4ScvwvKJGaJdBPce7wMTGiXfdvK+KNpouxo7k/m8FDKLZn
|
21
|
+
9NZwxFgv/TJJ19DfnSUEBPVCVh1Ns19I5/3TyA0prUWG3Qiz+zZcjDa/iA2KPSd3
|
22
|
+
mI5qIurXJhzuxFQ39boXn+A+AYnlUeKwJvauJQ22Hwg8Rs9RkMOXyZg+u58QLGjj
|
23
|
+
X65MJHHZbym3VOU647MCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
|
24
|
+
HQYDVR0OBBYEFBbg59BR9Q9Xzd1fbnziQ7zmuX2NMA0GCSqGSIb3DQEBBQUAA4IB
|
25
|
+
AQBultsO6K4JtFCPUSYGrxqoWdgIVYLNJcBQwQjQWxtDcxO0j0YI92X9QWjZ8UPq
|
26
|
+
SgNVot3+lxhoHiDwZIHqit2HGWd2iOTfuXIkeZkvOwiHgkzLEglk9PqPdC2W6ZEt
|
27
|
+
g/myAoR7n3mLW5qf4S1ialflrHmDtqdgpf7b6yrLkMsjuFpfH2Hy7AZJ0oH5xk1s
|
28
|
+
oo9rsJPjZ1Xwn216zJ69XPpMaWNUOoRc0S7mJAsbHFRN/Rjvdinz68HSW1/rp9yq
|
29
|
+
GlZB6jMbJ64P4IpeXdpaTFHlCAMRBLlAMnHd18KQm0l39iVVfhTxpkvt/X4+R8Bl
|
30
|
+
IfYzkN8c0X6VDPrCKbd4IbEe
|
31
|
+
-----END CERTIFICATE-----
|
32
|
+
|
33
|
+
date: 2009-02-02 00:00:00 +01:00
|
34
|
+
default_executable:
|
35
|
+
dependencies:
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: mojombo-grit
|
38
|
+
type: :runtime
|
39
|
+
version_requirement:
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
requirements:
|
42
|
+
- - ">="
|
43
|
+
- !ruby/object:Gem::Version
|
44
|
+
version: "0"
|
45
|
+
version:
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: mocha
|
48
|
+
type: :development
|
49
|
+
version_requirement:
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: "0"
|
55
|
+
version:
|
56
|
+
description: Ruby gem specify for git hooks.
|
57
|
+
email: guillermo@cientifico.net
|
58
|
+
executables:
|
59
|
+
- rgithook
|
60
|
+
extensions: []
|
61
|
+
|
62
|
+
extra_rdoc_files:
|
63
|
+
- bin/rgithook
|
64
|
+
- CHANGELOG
|
65
|
+
- lib/plugins/custom.rb
|
66
|
+
- lib/plugins/db.rb
|
67
|
+
- lib/plugins/email.rb
|
68
|
+
- lib/plugins/html/commit.html.erb
|
69
|
+
- lib/plugins/html/diff.html.erb
|
70
|
+
- lib/plugins/html.rb
|
71
|
+
- lib/plugins/rake.rb
|
72
|
+
- lib/plugins/spec/rgithook_formatter.rb
|
73
|
+
- lib/plugins/spec/spec_result.rb
|
74
|
+
- lib/plugins/temp.rb
|
75
|
+
- lib/plugins/test.rb
|
76
|
+
- lib/plugins/twitter.rb
|
77
|
+
- lib/rgithook/command_line.rb
|
78
|
+
- lib/rgithook/hook.rb
|
79
|
+
- lib/rgithook/plugin.rb
|
80
|
+
- lib/rgithook/rgithook.rb
|
81
|
+
- lib/rgithook/runner.rb
|
82
|
+
- lib/rgithook/templates/hook.rb
|
83
|
+
- lib/rgithook/templates/rgithook.rb
|
84
|
+
- lib/rgithook/test/unit.rb
|
85
|
+
- lib/rgithook.rb
|
86
|
+
- README.rdoc
|
87
|
+
- TODO.txt
|
88
|
+
files:
|
89
|
+
- bin/rgithook
|
90
|
+
- CHANGELOG
|
91
|
+
- lib/plugins/custom.rb
|
92
|
+
- lib/plugins/db.rb
|
93
|
+
- lib/plugins/email.rb
|
94
|
+
- lib/plugins/html/commit.html.erb
|
95
|
+
- lib/plugins/html/diff.html.erb
|
96
|
+
- lib/plugins/html.rb
|
97
|
+
- lib/plugins/rake.rb
|
98
|
+
- lib/plugins/spec/rgithook_formatter.rb
|
99
|
+
- lib/plugins/spec/spec_result.rb
|
100
|
+
- lib/plugins/temp.rb
|
101
|
+
- lib/plugins/test.rb
|
102
|
+
- lib/plugins/twitter.rb
|
103
|
+
- lib/rgithook/command_line.rb
|
104
|
+
- lib/rgithook/hook.rb
|
105
|
+
- lib/rgithook/plugin.rb
|
106
|
+
- lib/rgithook/rgithook.rb
|
107
|
+
- lib/rgithook/runner.rb
|
108
|
+
- lib/rgithook/templates/hook.rb
|
109
|
+
- lib/rgithook/templates/rgithook.rb
|
110
|
+
- lib/rgithook/test/unit.rb
|
111
|
+
- lib/rgithook.rb
|
112
|
+
- Manifest
|
113
|
+
- Rakefile
|
114
|
+
- README.rdoc
|
115
|
+
- rgithook.gemspec
|
116
|
+
- test/fixtures/sample_plugin.rb
|
117
|
+
- test/fixtures/sample_repo.zip
|
118
|
+
- test/integration/test_install.rb
|
119
|
+
- test/integration/test_pull_and_push.rb
|
120
|
+
- test/plugins/test_email.rb
|
121
|
+
- test/plugins/test_html.rb
|
122
|
+
- test/plugins/test_spec.rb
|
123
|
+
- test/plugins/test_test.rb
|
124
|
+
- test/test_helper.rb
|
125
|
+
- test/unit/test_command_line.rb
|
126
|
+
- test/unit/test_hook.rb
|
127
|
+
- test/unit/test_plugin.rb
|
128
|
+
- test/unit/test_rgithook.rb
|
129
|
+
- test/unit/test_runner.rb
|
130
|
+
- TODO.txt
|
131
|
+
has_rdoc: true
|
132
|
+
homepage: http://github.com/guillermo/rgithook2
|
133
|
+
post_install_message:
|
134
|
+
rdoc_options:
|
135
|
+
- --line-numbers
|
136
|
+
- --inline-source
|
137
|
+
- --title
|
138
|
+
- Rgithook
|
139
|
+
- --main
|
140
|
+
- README.rdoc
|
141
|
+
require_paths:
|
142
|
+
- lib
|
143
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
144
|
+
requirements:
|
145
|
+
- - ">="
|
146
|
+
- !ruby/object:Gem::Version
|
147
|
+
version: "0"
|
148
|
+
version:
|
149
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
150
|
+
requirements:
|
151
|
+
- - ">="
|
152
|
+
- !ruby/object:Gem::Version
|
153
|
+
version: "1.2"
|
154
|
+
version:
|
155
|
+
requirements: []
|
156
|
+
|
157
|
+
rubyforge_project: rgithook
|
158
|
+
rubygems_version: 1.3.1
|
159
|
+
signing_key:
|
160
|
+
specification_version: 2
|
161
|
+
summary: You can deploy updated code, restart the web server, run the tests, email the diff, etc... You can use a cron to pull or a githook to run when pushed to the repo.
|
162
|
+
test_files:
|
163
|
+
- test/integration/test_install.rb
|
164
|
+
- test/integration/test_pull_and_push.rb
|
165
|
+
- test/plugins/test_email.rb
|
166
|
+
- test/plugins/test_html.rb
|
167
|
+
- test/plugins/test_spec.rb
|
168
|
+
- test/plugins/test_test.rb
|
169
|
+
- test/test_helper.rb
|
170
|
+
- test/unit/test_command_line.rb
|
171
|
+
- test/unit/test_hook.rb
|
172
|
+
- test/unit/test_plugin.rb
|
173
|
+
- test/unit/test_rgithook.rb
|
174
|
+
- test/unit/test_runner.rb
|