git_test 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/bin/git_test +129 -0
- metadata +223 -0
data/bin/git_test
ADDED
@@ -0,0 +1,129 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
require 'rubygems'
|
3
|
+
require 'gli'
|
4
|
+
require 'lib/git_test_version'
|
5
|
+
require 'lib/git_test'
|
6
|
+
|
7
|
+
include GLI
|
8
|
+
|
9
|
+
# :::::::: ::::::::::: ::::::::::: ::::::::::: :::::::::: :::::::: :::::::::::
|
10
|
+
# :+: :+: :+: :+: :+: :+: :+: :+: :+:
|
11
|
+
# +:+ +:+ +:+ +:+ +:+ +:+ +:+
|
12
|
+
# :#: +#+ +#+ +#+ +#++:++# +#++:++#++ +#+
|
13
|
+
# +#+ +#+# +#+ +#+ +#+ +#+ +#+ +#+
|
14
|
+
# #+# #+# #+# #+# #+# #+# #+# #+# #+#
|
15
|
+
# ######## ########### ### ### ########## ######## ###
|
16
|
+
|
17
|
+
|
18
|
+
program_desc %Q{ git_test runs your tests and stores them in git. Use git_test to track
|
19
|
+
tests over multiple branches, runs, and teammates. Run git_test when you pull and push
|
20
|
+
and you'll always know the state of your project!}
|
21
|
+
|
22
|
+
version GitTest::VERSION
|
23
|
+
|
24
|
+
desc 'test command used to run tests'
|
25
|
+
default_value 'rspec spec/ -f h -c'
|
26
|
+
arg_name 'command'
|
27
|
+
flag [:cmd]
|
28
|
+
|
29
|
+
|
30
|
+
desc "shows previous reports. Use args 'all', 'last', or provide a report name"
|
31
|
+
long_desc %Q{
|
32
|
+
- `all` lists reports
|
33
|
+
- `last` shows the last report
|
34
|
+
- `2011-10-21T23:22:09Z_schneems_passed.html` shows that report
|
35
|
+
}
|
36
|
+
command :show do |c|
|
37
|
+
c.action do |global_options,options,args|
|
38
|
+
global_options.merge! options
|
39
|
+
runner = GitTest::Runner.new(global_options)
|
40
|
+
if args.include?('all')
|
41
|
+
reports = runner.ls_report_dir
|
42
|
+
runner.notify.raw(reports)
|
43
|
+
else
|
44
|
+
path = args.first unless args.include?('last')
|
45
|
+
runner.show_report(path)
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
|
51
|
+
|
52
|
+
desc "pulls from origin then runs tests"
|
53
|
+
command :pull do |c|
|
54
|
+
c.action do |global_options,options,args|
|
55
|
+
begin
|
56
|
+
global_options.merge! options
|
57
|
+
runner = GitTest::Runner.new(global_options)
|
58
|
+
runner.pull!
|
59
|
+
runner.test!
|
60
|
+
runner.write_report!
|
61
|
+
runner.notify.write("to view test report run `git_test show last`", :green)
|
62
|
+
ensure
|
63
|
+
runner.clean_test_dir!
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
desc "runs your tests and saves them in git"
|
69
|
+
command :run do |c|
|
70
|
+
c.action do |global_options,options,args|
|
71
|
+
begin
|
72
|
+
global_options.merge! options
|
73
|
+
runner = GitTest::Runner.new(global_options)
|
74
|
+
runner.test!
|
75
|
+
runner.write_report!
|
76
|
+
runner.notify.write("to view test report run `git_test show last`", :green)
|
77
|
+
ensure
|
78
|
+
runner.clean_test_dir!
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
desc "runs your tests, saves them in git then pushes to origin"
|
84
|
+
command :push do |c|
|
85
|
+
c.desc 'if true will push code to repo after running tests instead of before'
|
86
|
+
c.default_value true
|
87
|
+
c.arg_name 'push_after_test'
|
88
|
+
c.switch [:pat,:push_after_test]
|
89
|
+
|
90
|
+
c.action do |global_options,options,args|
|
91
|
+
begin
|
92
|
+
global_options.merge! options
|
93
|
+
runner = GitTest::Runner.new(global_options)
|
94
|
+
runner.pull!
|
95
|
+
runner.push! unless options[:push_after_test]
|
96
|
+
runner.test!
|
97
|
+
runner.write_report!
|
98
|
+
runner.push!
|
99
|
+
runner.notify.write("to view test report run `git_test show last`", :green)
|
100
|
+
ensure
|
101
|
+
runner.clean_test_dir!
|
102
|
+
end
|
103
|
+
end
|
104
|
+
end
|
105
|
+
|
106
|
+
pre do |global,command,options,args|
|
107
|
+
# Pre logic here
|
108
|
+
# Return true to proceed; false to abourt and not call the
|
109
|
+
# chosen command
|
110
|
+
# Use skips_pre before a command to skip this block
|
111
|
+
# on that command only
|
112
|
+
true
|
113
|
+
end
|
114
|
+
|
115
|
+
post do |global,command,options,args|
|
116
|
+
# Post logic here
|
117
|
+
# Use skips_post before a command to skip this
|
118
|
+
# block on that command only
|
119
|
+
end
|
120
|
+
|
121
|
+
on_error do |exception|
|
122
|
+
puts exception
|
123
|
+
puts exception.backtrace
|
124
|
+
# Error logic here
|
125
|
+
# return false to skip default error handling
|
126
|
+
true
|
127
|
+
end
|
128
|
+
|
129
|
+
exit GLI.run(ARGV)
|
metadata
ADDED
@@ -0,0 +1,223 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: git_test
|
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
|
+
- Richard Schneeman
|
14
|
+
autorequire:
|
15
|
+
bindir: bin
|
16
|
+
cert_chain: []
|
17
|
+
|
18
|
+
date: 2011-10-22 00:00:00 Z
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
21
|
+
name: rake
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
24
|
+
none: false
|
25
|
+
requirements:
|
26
|
+
- - ">="
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
hash: 3
|
29
|
+
segments:
|
30
|
+
- 0
|
31
|
+
version: "0"
|
32
|
+
type: :development
|
33
|
+
version_requirements: *id001
|
34
|
+
- !ruby/object:Gem::Dependency
|
35
|
+
name: rspec
|
36
|
+
prerelease: false
|
37
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
38
|
+
none: false
|
39
|
+
requirements:
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
hash: 3
|
43
|
+
segments:
|
44
|
+
- 0
|
45
|
+
version: "0"
|
46
|
+
type: :development
|
47
|
+
version_requirements: *id002
|
48
|
+
- !ruby/object:Gem::Dependency
|
49
|
+
name: guard
|
50
|
+
prerelease: false
|
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
|
+
type: :development
|
61
|
+
version_requirements: *id003
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: guard-rspec
|
64
|
+
prerelease: false
|
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
|
+
type: :development
|
75
|
+
version_requirements: *id004
|
76
|
+
- !ruby/object:Gem::Dependency
|
77
|
+
name: rb-fsevent
|
78
|
+
prerelease: false
|
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
|
+
type: :development
|
89
|
+
version_requirements: *id005
|
90
|
+
- !ruby/object:Gem::Dependency
|
91
|
+
name: fakefs
|
92
|
+
prerelease: false
|
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
|
+
type: :development
|
103
|
+
version_requirements: *id006
|
104
|
+
- !ruby/object:Gem::Dependency
|
105
|
+
name: gli
|
106
|
+
prerelease: false
|
107
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
108
|
+
none: false
|
109
|
+
requirements:
|
110
|
+
- - ">="
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
hash: 3
|
113
|
+
segments:
|
114
|
+
- 0
|
115
|
+
version: "0"
|
116
|
+
type: :development
|
117
|
+
version_requirements: *id007
|
118
|
+
- !ruby/object:Gem::Dependency
|
119
|
+
name: git
|
120
|
+
prerelease: false
|
121
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
122
|
+
none: false
|
123
|
+
requirements:
|
124
|
+
- - ">="
|
125
|
+
- !ruby/object:Gem::Version
|
126
|
+
hash: 3
|
127
|
+
segments:
|
128
|
+
- 0
|
129
|
+
version: "0"
|
130
|
+
type: :runtime
|
131
|
+
version_requirements: *id008
|
132
|
+
- !ruby/object:Gem::Dependency
|
133
|
+
name: gli
|
134
|
+
prerelease: false
|
135
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
136
|
+
none: false
|
137
|
+
requirements:
|
138
|
+
- - ">="
|
139
|
+
- !ruby/object:Gem::Version
|
140
|
+
hash: 3
|
141
|
+
segments:
|
142
|
+
- 0
|
143
|
+
version: "0"
|
144
|
+
type: :runtime
|
145
|
+
version_requirements: *id009
|
146
|
+
- !ruby/object:Gem::Dependency
|
147
|
+
name: colorize
|
148
|
+
prerelease: false
|
149
|
+
requirement: &id010 !ruby/object:Gem::Requirement
|
150
|
+
none: false
|
151
|
+
requirements:
|
152
|
+
- - ">="
|
153
|
+
- !ruby/object:Gem::Version
|
154
|
+
hash: 3
|
155
|
+
segments:
|
156
|
+
- 0
|
157
|
+
version: "0"
|
158
|
+
type: :runtime
|
159
|
+
version_requirements: *id010
|
160
|
+
- !ruby/object:Gem::Dependency
|
161
|
+
name: growl
|
162
|
+
prerelease: false
|
163
|
+
requirement: &id011 !ruby/object:Gem::Requirement
|
164
|
+
none: false
|
165
|
+
requirements:
|
166
|
+
- - ">="
|
167
|
+
- !ruby/object:Gem::Version
|
168
|
+
hash: 3
|
169
|
+
segments:
|
170
|
+
- 0
|
171
|
+
version: "0"
|
172
|
+
type: :runtime
|
173
|
+
version_requirements: *id011
|
174
|
+
description:
|
175
|
+
email: richard.schneeman@gmail.com
|
176
|
+
executables:
|
177
|
+
- git_test
|
178
|
+
extensions: []
|
179
|
+
|
180
|
+
extra_rdoc_files: []
|
181
|
+
|
182
|
+
files:
|
183
|
+
- bin/git_test
|
184
|
+
homepage: https://github.com/schneems/git_test
|
185
|
+
licenses: []
|
186
|
+
|
187
|
+
post_install_message:
|
188
|
+
rdoc_options:
|
189
|
+
- --title
|
190
|
+
- git_test
|
191
|
+
- --main
|
192
|
+
- README.rdoc
|
193
|
+
- -ri
|
194
|
+
require_paths:
|
195
|
+
- lib
|
196
|
+
- lib
|
197
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
198
|
+
none: false
|
199
|
+
requirements:
|
200
|
+
- - ">="
|
201
|
+
- !ruby/object:Gem::Version
|
202
|
+
hash: 3
|
203
|
+
segments:
|
204
|
+
- 0
|
205
|
+
version: "0"
|
206
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
207
|
+
none: false
|
208
|
+
requirements:
|
209
|
+
- - ">="
|
210
|
+
- !ruby/object:Gem::Version
|
211
|
+
hash: 3
|
212
|
+
segments:
|
213
|
+
- 0
|
214
|
+
version: "0"
|
215
|
+
requirements: []
|
216
|
+
|
217
|
+
rubyforge_project:
|
218
|
+
rubygems_version: 1.8.10
|
219
|
+
signing_key:
|
220
|
+
specification_version: 3
|
221
|
+
summary: git_test runs your tests and stores them in git. Use git_test to track tests over multiple branches, runs, and teammates. Run git_test when you pull and push and you'll always know the state of your project!
|
222
|
+
test_files: []
|
223
|
+
|