Module: Codeguard

Defined in:
lib/codeguard.rb,
lib/codeguard/cli.rb,
lib/codeguard/diff.rb,
lib/codeguard/setup.rb,
lib/codeguard/install.rb,
lib/codeguard/js_hint.rb,
lib/codeguard/rubocop.rb,
lib/codeguard/version.rb,
lib/codeguard/scss_lint.rb,
lib/codeguard/coffeelint.rb,
lib/codeguard/pre_commit.rb,
lib/codeguard/git_message.rb

Defined Under Namespace

Modules: CLI, Coffeelint, GitMessage, JSHint, PreCommit, Rubocop, SCSSLint Classes: Diff, Install, Setup

Constant Summary collapse

LINTERS =
[Coffeelint, GitMessage, JSHint, PreCommit, Rubocop, SCSSLint]
LOCAL_LINTERS =

Lints that require setup in every local environment

[GitMessage, PreCommit]
VERSION =
'0.2.0'

Class Method Summary collapse

Class Method Details

.config_pathObject



45
46
47
# File 'lib/codeguard.rb', line 45

def config_path
  gem_root.join('config')
end

.diffObject



31
32
33
34
35
36
37
38
39
# File 'lib/codeguard.rb', line 31

def diff
  lints = LINTERS.map do |lint|
    diff = Diff.perform(lint)
    [diff.diff, diff.message]
  end
  transposed = lints.transpose
  puts transposed.first.compact
  puts transposed.last.compact
end

.gem_rootObject



49
50
51
# File 'lib/codeguard.rb', line 49

def gem_root
  Pathname.new($LOAD_PATH.first).join('../')
end

.helpObject



41
42
43
# File 'lib/codeguard.rb', line 41

def help
  puts IO.read(gem_root.join('HELP.md'))
end

.installObject



19
20
21
22
23
# File 'lib/codeguard.rb', line 19

def install
  LINTERS.each do |lint|
    Install.perform(lint)
  end
end

.setupObject



25
26
27
28
29
# File 'lib/codeguard.rb', line 25

def setup
  LOCAL_LINTERS.each do |lint|
    Setup.perform(lint)
  end
end