gitreport 0.0.1
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/.document +5 -0
- data/Gemfile +15 -0
- data/Gemfile.lock +49 -0
- data/LICENSE.txt +20 -0
- data/README.rdoc +19 -0
- data/Rakefile +53 -0
- data/VERSION +1 -0
- data/bin/gitreport +56 -0
- data/gitreport.gemspec +102 -0
- data/lib/batch_sender.rb +86 -0
- data/lib/commit.rb +86 -0
- data/lib/configuration.rb +68 -0
- data/lib/current_branch.rb +24 -0
- data/lib/git_configuration.rb +14 -0
- data/lib/gitreport.rb +30 -0
- data/lib/history.rb +44 -0
- data/lib/hook.rb +122 -0
- data/lib/log.rb +26 -0
- data/lib/project.rb +70 -0
- data/lib/sender.rb +63 -0
- data/lib/storage.rb +27 -0
- data/lib/supplier.rb +53 -0
- data/lib/trollop.rb +783 -0
- data/spec/gitreport_spec.rb +1 -0
- data/spec/models/batch_sender_spec.rb +37 -0
- data/spec/models/commit_spec.rb +87 -0
- data/spec/models/configuration_spec.rb +69 -0
- data/spec/models/current_branch_spec.rb +22 -0
- data/spec/models/git_configuration_spec.rb +26 -0
- data/spec/models/history_spec.rb +50 -0
- data/spec/models/hook_spec.rb +64 -0
- data/spec/models/log_spec.rb +47 -0
- data/spec/models/project_spec.rb +93 -0
- data/spec/models/sender_spec.rb +75 -0
- data/spec/models/storage_spec.rb +53 -0
- data/spec/models/supplier_spec.rb +20 -0
- data/spec/spec_helper.rb +14 -0
- data/spec/support/fake_repository.rb +83 -0
- metadata +234 -0
@@ -0,0 +1,83 @@
|
|
1
|
+
class FakeRepository
|
2
|
+
|
3
|
+
attr_reader :path
|
4
|
+
attr_writer :project_dir
|
5
|
+
|
6
|
+
def initialize
|
7
|
+
@path = create_fake_repository
|
8
|
+
end
|
9
|
+
|
10
|
+
def create_fake_repository
|
11
|
+
@project_dir = Dir.new(File.dirname(Tempfile.new('fake').path)).path + "/project"
|
12
|
+
FileUtils.rm_rf Dir.glob(@project_dir)
|
13
|
+
FileUtils.rmdir @project_dir if File.exists?(@project_dir)
|
14
|
+
Dir.mkdir(@project_dir) unless File.exists?(@project_dir)
|
15
|
+
|
16
|
+
# create a project
|
17
|
+
# puts "Creating git repo at: #{@project_dir}"
|
18
|
+
project = Git.init(@project_dir)
|
19
|
+
|
20
|
+
# default config for user
|
21
|
+
project.config('user.name', 'Duffy Duck')
|
22
|
+
project.config('user.email', 'duffy@acme.com')
|
23
|
+
|
24
|
+
# add and commit first file
|
25
|
+
File.open("#{@project_dir}/file1", 'w+') do |file|
|
26
|
+
file.write "file content 1"
|
27
|
+
end
|
28
|
+
|
29
|
+
project.add('file1')
|
30
|
+
project.commit('initial commit with file1')
|
31
|
+
|
32
|
+
# add and commit second file
|
33
|
+
File.open("#{@project_dir}/file2", 'w+') do |file|
|
34
|
+
file.write "file content 2"
|
35
|
+
end
|
36
|
+
|
37
|
+
project.add('file2')
|
38
|
+
project.commit('commit with file2')
|
39
|
+
|
40
|
+
# simulate third commit from other user
|
41
|
+
project.config('user.name', 'Bugs Bunny')
|
42
|
+
project.config('user.email', 'bugs@acme.com')
|
43
|
+
|
44
|
+
File.open("#{@project_dir}/file3", 'w+') do |file|
|
45
|
+
file.write "file content 2"
|
46
|
+
end
|
47
|
+
|
48
|
+
project.add('file3')
|
49
|
+
project.commit('commit with file3 from foreigner')
|
50
|
+
|
51
|
+
# change back to user
|
52
|
+
project.config('user.name', 'Duffy Duck')
|
53
|
+
project.config('user.email', 'duffy@acme.com')
|
54
|
+
|
55
|
+
return @project_dir
|
56
|
+
end
|
57
|
+
|
58
|
+
def create_project_config_file
|
59
|
+
File.open("#{@project_dir}/.gitreport", 'w+') do |file|
|
60
|
+
file.write "---\n"
|
61
|
+
file.write "auth_token: 12345ab\n"
|
62
|
+
file.write "host: some.host.anywhere\n"
|
63
|
+
file.write "port: 42\n"
|
64
|
+
file.write "proxy_host: some.proxy.host\n"
|
65
|
+
file.write "proxy_port: 23\n"
|
66
|
+
file.write "api_version: 2\n"
|
67
|
+
file.write "timeout: 66\n"
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
def create_user_config_file
|
72
|
+
File.open("#{@project_dir}/.gitreport_user", 'w+') do |file|
|
73
|
+
file.write "---\n"
|
74
|
+
file.write "auth_token: xyz987565\n"
|
75
|
+
file.write "host: user.host.anywhere\n"
|
76
|
+
file.write "port: 43\n"
|
77
|
+
file.write "proxy_host: user.proxy.host\n"
|
78
|
+
file.write "proxy_port: 24\n"
|
79
|
+
file.write "api_version: 3\n"
|
80
|
+
file.write "timeout: 77\n"
|
81
|
+
end
|
82
|
+
end
|
83
|
+
end
|
metadata
ADDED
@@ -0,0 +1,234 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: gitreport
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 29
|
5
|
+
prerelease:
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 0
|
9
|
+
- 1
|
10
|
+
version: 0.0.1
|
11
|
+
platform: ruby
|
12
|
+
authors:
|
13
|
+
- Jan Roesner
|
14
|
+
autorequire:
|
15
|
+
bindir: bin
|
16
|
+
cert_chain: []
|
17
|
+
|
18
|
+
date: 2011-10-02 00:00:00 Z
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
21
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
22
|
+
none: false
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
hash: 3
|
27
|
+
segments:
|
28
|
+
- 0
|
29
|
+
version: "0"
|
30
|
+
version_requirements: *id001
|
31
|
+
name: json
|
32
|
+
prerelease: false
|
33
|
+
type: :runtime
|
34
|
+
- !ruby/object:Gem::Dependency
|
35
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
36
|
+
none: false
|
37
|
+
requirements:
|
38
|
+
- - ~>
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
hash: 21
|
41
|
+
segments:
|
42
|
+
- 1
|
43
|
+
- 2
|
44
|
+
- 5
|
45
|
+
version: 1.2.5
|
46
|
+
version_requirements: *id002
|
47
|
+
name: git
|
48
|
+
prerelease: false
|
49
|
+
type: :runtime
|
50
|
+
- !ruby/object:Gem::Dependency
|
51
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
52
|
+
none: false
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
hash: 3
|
57
|
+
segments:
|
58
|
+
- 0
|
59
|
+
version: "0"
|
60
|
+
version_requirements: *id003
|
61
|
+
name: ruby-debug
|
62
|
+
prerelease: false
|
63
|
+
type: :development
|
64
|
+
- !ruby/object:Gem::Dependency
|
65
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
66
|
+
none: false
|
67
|
+
requirements:
|
68
|
+
- - ">="
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
hash: 3
|
71
|
+
segments:
|
72
|
+
- 0
|
73
|
+
version: "0"
|
74
|
+
version_requirements: *id004
|
75
|
+
name: rspec
|
76
|
+
prerelease: false
|
77
|
+
type: :development
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
80
|
+
none: false
|
81
|
+
requirements:
|
82
|
+
- - ">="
|
83
|
+
- !ruby/object:Gem::Version
|
84
|
+
hash: 3
|
85
|
+
segments:
|
86
|
+
- 0
|
87
|
+
version: "0"
|
88
|
+
version_requirements: *id005
|
89
|
+
name: webmock
|
90
|
+
prerelease: false
|
91
|
+
type: :development
|
92
|
+
- !ruby/object:Gem::Dependency
|
93
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
94
|
+
none: false
|
95
|
+
requirements:
|
96
|
+
- - ">="
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
hash: 3
|
99
|
+
segments:
|
100
|
+
- 0
|
101
|
+
version: "0"
|
102
|
+
version_requirements: *id006
|
103
|
+
name: shoulda
|
104
|
+
prerelease: false
|
105
|
+
type: :development
|
106
|
+
- !ruby/object:Gem::Dependency
|
107
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
108
|
+
none: false
|
109
|
+
requirements:
|
110
|
+
- - ~>
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
hash: 23
|
113
|
+
segments:
|
114
|
+
- 1
|
115
|
+
- 0
|
116
|
+
- 0
|
117
|
+
version: 1.0.0
|
118
|
+
version_requirements: *id007
|
119
|
+
name: bundler
|
120
|
+
prerelease: false
|
121
|
+
type: :development
|
122
|
+
- !ruby/object:Gem::Dependency
|
123
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
124
|
+
none: false
|
125
|
+
requirements:
|
126
|
+
- - ~>
|
127
|
+
- !ruby/object:Gem::Version
|
128
|
+
hash: 7
|
129
|
+
segments:
|
130
|
+
- 1
|
131
|
+
- 6
|
132
|
+
- 4
|
133
|
+
version: 1.6.4
|
134
|
+
version_requirements: *id008
|
135
|
+
name: jeweler
|
136
|
+
prerelease: false
|
137
|
+
type: :development
|
138
|
+
- !ruby/object:Gem::Dependency
|
139
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
140
|
+
none: false
|
141
|
+
requirements:
|
142
|
+
- - ">="
|
143
|
+
- !ruby/object:Gem::Version
|
144
|
+
hash: 3
|
145
|
+
segments:
|
146
|
+
- 0
|
147
|
+
version: "0"
|
148
|
+
version_requirements: *id009
|
149
|
+
name: rcov
|
150
|
+
prerelease: false
|
151
|
+
type: :development
|
152
|
+
description: gitreport keeps track of your projects. It collects info about commited and pushed data, submits it to our servers and provides a gorgous frontend to examine, discover and extract the data that you need to generate the payment recipes for your customers. No longer searching or `what did I commit when and where`...
|
153
|
+
email: jan@roesner.it
|
154
|
+
executables:
|
155
|
+
- gitreport
|
156
|
+
extensions: []
|
157
|
+
|
158
|
+
extra_rdoc_files:
|
159
|
+
- LICENSE.txt
|
160
|
+
- README.rdoc
|
161
|
+
files:
|
162
|
+
- .document
|
163
|
+
- Gemfile
|
164
|
+
- Gemfile.lock
|
165
|
+
- LICENSE.txt
|
166
|
+
- README.rdoc
|
167
|
+
- Rakefile
|
168
|
+
- VERSION
|
169
|
+
- bin/gitreport
|
170
|
+
- gitreport.gemspec
|
171
|
+
- lib/batch_sender.rb
|
172
|
+
- lib/commit.rb
|
173
|
+
- lib/configuration.rb
|
174
|
+
- lib/current_branch.rb
|
175
|
+
- lib/git_configuration.rb
|
176
|
+
- lib/gitreport.rb
|
177
|
+
- lib/history.rb
|
178
|
+
- lib/hook.rb
|
179
|
+
- lib/log.rb
|
180
|
+
- lib/project.rb
|
181
|
+
- lib/sender.rb
|
182
|
+
- lib/storage.rb
|
183
|
+
- lib/supplier.rb
|
184
|
+
- lib/trollop.rb
|
185
|
+
- spec/gitreport_spec.rb
|
186
|
+
- spec/models/batch_sender_spec.rb
|
187
|
+
- spec/models/commit_spec.rb
|
188
|
+
- spec/models/configuration_spec.rb
|
189
|
+
- spec/models/current_branch_spec.rb
|
190
|
+
- spec/models/git_configuration_spec.rb
|
191
|
+
- spec/models/history_spec.rb
|
192
|
+
- spec/models/hook_spec.rb
|
193
|
+
- spec/models/log_spec.rb
|
194
|
+
- spec/models/project_spec.rb
|
195
|
+
- spec/models/sender_spec.rb
|
196
|
+
- spec/models/storage_spec.rb
|
197
|
+
- spec/models/supplier_spec.rb
|
198
|
+
- spec/spec_helper.rb
|
199
|
+
- spec/support/fake_repository.rb
|
200
|
+
homepage: http://github.com/janroesner/gitreport
|
201
|
+
licenses:
|
202
|
+
- MIT
|
203
|
+
post_install_message:
|
204
|
+
rdoc_options: []
|
205
|
+
|
206
|
+
require_paths:
|
207
|
+
- lib
|
208
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
209
|
+
none: false
|
210
|
+
requirements:
|
211
|
+
- - ">="
|
212
|
+
- !ruby/object:Gem::Version
|
213
|
+
hash: 3
|
214
|
+
segments:
|
215
|
+
- 0
|
216
|
+
version: "0"
|
217
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
218
|
+
none: false
|
219
|
+
requirements:
|
220
|
+
- - ">="
|
221
|
+
- !ruby/object:Gem::Version
|
222
|
+
hash: 3
|
223
|
+
segments:
|
224
|
+
- 0
|
225
|
+
version: "0"
|
226
|
+
requirements: []
|
227
|
+
|
228
|
+
rubyforge_project:
|
229
|
+
rubygems_version: 1.8.10
|
230
|
+
signing_key:
|
231
|
+
specification_version: 3
|
232
|
+
summary: gitreport tracks commit and push info of your git projects
|
233
|
+
test_files: []
|
234
|
+
|