maximus 0.1.3 → 0.1.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.
- checksums.yaml +4 -4
- data/.gitignore +3 -0
- data/.rspec +2 -0
- data/.travis.yml +10 -0
- data/README.md +35 -14
- data/lib/maximus/cli.rb +1 -0
- data/lib/maximus/config.rb +148 -135
- data/lib/maximus/git_control.rb +96 -96
- data/lib/maximus/helper.rb +1 -0
- data/lib/maximus/lint.rb +119 -118
- data/lib/maximus/lints/brakeman.rb +14 -14
- data/lib/maximus/lints/railsbp.rb +13 -13
- data/lib/maximus/reporter/git-lines.sh +40 -11
- data/lib/maximus/statistic.rb +30 -25
- data/lib/maximus/statistics/phantomas.rb +11 -11
- data/lib/maximus/statistics/stylestats.rb +52 -55
- data/lib/maximus/statistics/wraith.rb +21 -25
- data/lib/maximus/version.rb +1 -1
- data/maximus.gemspec +4 -0
- data/roadmap.md +3 -6
- data/spec/maximus/config_spec.rb +44 -0
- data/spec/spec_helper.rb +4 -0
- metadata +51 -3
data/lib/maximus/version.rb
CHANGED
data/maximus.gemspec
CHANGED
@@ -27,5 +27,9 @@ Gem::Specification.new do |spec|
|
|
27
27
|
spec.add_runtime_dependency "wraith", "~> 2.1.0"
|
28
28
|
spec.add_runtime_dependency "activesupport"
|
29
29
|
spec.add_runtime_dependency "thor"
|
30
|
+
|
30
31
|
spec.add_development_dependency "bundler", "~> 1.6"
|
32
|
+
spec.add_development_dependency "nokogiri", "~> 1.6.0"
|
33
|
+
spec.add_development_dependency "yard", "~> 0.8"
|
34
|
+
spec.add_development_dependency "rspec", "~> 3.0"
|
31
35
|
end
|
data/roadmap.md
CHANGED
@@ -1,10 +1,8 @@
|
|
1
1
|
# Roadmap
|
2
2
|
|
3
|
-
* Check for custom lint or stat hooks in a lib/maximus folder
|
4
|
-
* Add custom lint path and script execution support to maximus.yml config file
|
3
|
+
* Check for custom lint or stat hooks in a lib/maximus folder. Add custom lint path and script execution support to maximus.yml config file
|
5
4
|
* Use PhantomJS 2.0 with webfont support
|
6
|
-
* Resolve/review
|
7
|
-
* Tests and specs
|
5
|
+
* Resolve/review @todos
|
8
6
|
* Convert ruby-git to rugged (MAYBE - rugged requires libgit2)
|
9
7
|
* Add SCSS specificity graph
|
10
8
|
* Add HAML lint (maybe)
|
@@ -12,5 +10,4 @@
|
|
12
10
|
* Add JSLint (maybe)
|
13
11
|
* Add W3 validator (maybe)
|
14
12
|
* Regex path names on phantomas and wraith to defend against injection and bad characters
|
15
|
-
*
|
16
|
-
* Test for < ruby 2.0 or require 2.0 < in gemspec
|
13
|
+
* Test for < ruby 2.0 or require 2.0 < in gemspec
|
@@ -0,0 +1,44 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Maximus::Config do
|
4
|
+
let(:config_path) { '.maximus.yml' }
|
5
|
+
|
6
|
+
subject(:config) do
|
7
|
+
File.write(config_path, config_body)
|
8
|
+
described_class.new(config_body.blank? ? {} : { config_file: config_path })
|
9
|
+
end
|
10
|
+
|
11
|
+
describe '#is_dev?', :isolated_environment do
|
12
|
+
context 'setting root value is_dev to true' do
|
13
|
+
let(:config_body) { 'is_dev: true' }
|
14
|
+
it 'is_dev should be true' do
|
15
|
+
expect(config.is_dev?).to be true
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
context 'is_dev is blank/not supplied' do
|
20
|
+
let(:config_body) { '' }
|
21
|
+
it 'is_dev should default to false' do
|
22
|
+
expect(config.is_dev?).to be false
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
describe '#initialize', :isolated_environment do
|
28
|
+
|
29
|
+
context 'setting a linter to be true' do
|
30
|
+
let(:config_body) { 'scsslint: true' }
|
31
|
+
it 'scsslint should exist' do
|
32
|
+
expect(config.settings.has_key?(:scsslint)).to be true
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
context 'not supplying a linter but relying on the default include all' do
|
37
|
+
let(:config_body) { '' }
|
38
|
+
it 'should include a linter' do
|
39
|
+
expect(config.settings.has_key?(:scsslint)).to be true
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
end
|
44
|
+
end
|
data/spec/spec_helper.rb
ADDED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: maximus
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tim Shedor
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-01-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: git
|
@@ -150,6 +150,48 @@ dependencies:
|
|
150
150
|
- - "~>"
|
151
151
|
- !ruby/object:Gem::Version
|
152
152
|
version: '1.6'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: nokogiri
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - "~>"
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: 1.6.0
|
160
|
+
type: :development
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - "~>"
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: 1.6.0
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: yard
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - "~>"
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: '0.8'
|
174
|
+
type: :development
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - "~>"
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: '0.8'
|
181
|
+
- !ruby/object:Gem::Dependency
|
182
|
+
name: rspec
|
183
|
+
requirement: !ruby/object:Gem::Requirement
|
184
|
+
requirements:
|
185
|
+
- - "~>"
|
186
|
+
- !ruby/object:Gem::Version
|
187
|
+
version: '3.0'
|
188
|
+
type: :development
|
189
|
+
prerelease: false
|
190
|
+
version_requirements: !ruby/object:Gem::Requirement
|
191
|
+
requirements:
|
192
|
+
- - "~>"
|
193
|
+
- !ruby/object:Gem::Version
|
194
|
+
version: '3.0'
|
153
195
|
description: The all-in-one linting solution
|
154
196
|
email:
|
155
197
|
- tshedor@gmail.com
|
@@ -159,6 +201,8 @@ extensions: []
|
|
159
201
|
extra_rdoc_files: []
|
160
202
|
files:
|
161
203
|
- ".gitignore"
|
204
|
+
- ".rspec"
|
205
|
+
- ".travis.yml"
|
162
206
|
- Gemfile
|
163
207
|
- LICENSE.txt
|
164
208
|
- README.md
|
@@ -191,6 +235,8 @@ files:
|
|
191
235
|
- lib/maximus/version.rb
|
192
236
|
- maximus.gemspec
|
193
237
|
- roadmap.md
|
238
|
+
- spec/maximus/config_spec.rb
|
239
|
+
- spec/spec_helper.rb
|
194
240
|
homepage: https://github.com/wearefine/maximus
|
195
241
|
licenses:
|
196
242
|
- MIT
|
@@ -215,5 +261,7 @@ rubygems_version: 2.2.2
|
|
215
261
|
signing_key:
|
216
262
|
specification_version: 4
|
217
263
|
summary: Make your code spic and <span>
|
218
|
-
test_files:
|
264
|
+
test_files:
|
265
|
+
- spec/maximus/config_spec.rb
|
266
|
+
- spec/spec_helper.rb
|
219
267
|
has_rdoc:
|