nitpick 1.0.0

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.
Files changed (44) hide show
  1. data/LICENSE +22 -0
  2. data/README +56 -0
  3. data/VERSION.yml +4 -0
  4. data/bin/nitpick +92 -0
  5. data/lib/nitpick.rb +32 -0
  6. data/lib/nitpick/argument_nitpicker.rb +21 -0
  7. data/lib/nitpick/block_nitpicker.rb +21 -0
  8. data/lib/nitpick/branch_nitpicker.rb +17 -0
  9. data/lib/nitpick/local_variable_counter.rb +81 -0
  10. data/lib/nitpick/local_variable_nitpicker.rb +26 -0
  11. data/lib/nitpick/method_nitpicker.rb +14 -0
  12. data/lib/nitpick/nitpicker.rb +46 -0
  13. data/lib/nitpick/rescue_nitpicker.rb +15 -0
  14. data/lib/nitpick/sexp_extension.rb +7 -0
  15. data/lib/nitpick/warnings/assignment_as_condition.rb +22 -0
  16. data/lib/nitpick/warnings/empty_method.rb +19 -0
  17. data/lib/nitpick/warnings/identical_branch.rb +18 -0
  18. data/lib/nitpick/warnings/rescue_everything.rb +20 -0
  19. data/lib/nitpick/warnings/rescue_value.rb +22 -0
  20. data/lib/nitpick/warnings/shadowed_variable.rb +51 -0
  21. data/lib/nitpick/warnings/simple_warning.rb +28 -0
  22. data/lib/nitpick/warnings/unprotected_block.rb +24 -0
  23. data/lib/nitpick/warnings/unused_argument.rb +19 -0
  24. data/lib/nitpick/warnings/unused_variable.rb +19 -0
  25. data/lib/nitpick/warnings/useless_branch.rb +20 -0
  26. data/spec/argument_nitpicker_spec.rb +79 -0
  27. data/spec/assignment_as_condition_spec.rb +41 -0
  28. data/spec/block_nitpicker_spec.rb +31 -0
  29. data/spec/branch_nitpicker_spec.rb +24 -0
  30. data/spec/fixtures/block_badness.rb +23 -0
  31. data/spec/fixtures/branch_badness.rb +27 -0
  32. data/spec/fixtures/local_variable_badness.rb +113 -0
  33. data/spec/fixtures/method_badness.rb +10 -0
  34. data/spec/fixtures/rescue_badness.rb +15 -0
  35. data/spec/local_variable_nitpicker_spec.rb +90 -0
  36. data/spec/method_nitpicker_spec.rb +18 -0
  37. data/spec/nitpicker_spec.rb +20 -0
  38. data/spec/rescue_nitpicker_spec.rb +25 -0
  39. data/spec/rescue_value_spec.rb +27 -0
  40. data/spec/shadowed_variable_spec.rb +60 -0
  41. data/spec/simple_warning_spec.rb +22 -0
  42. data/spec/spec_helper.rb +10 -0
  43. data/spec/useless_branch_spec.rb +11 -0
  44. metadata +109 -0
@@ -0,0 +1,22 @@
1
+ require File.dirname(__FILE__) + '/spec_helper'
2
+ require 'fixtures/branch_badness'
3
+
4
+ include Fixtures
5
+
6
+ describe Nitpick::Warnings::SimpleWarning do
7
+ it "should discover a matching warning" do
8
+ branch = mock("aUselessBranch")
9
+ branch.should_receive(:matches?).and_return(true)
10
+ Nitpick::Warnings::UselessBranch.stub!(:new).and_return(branch)
11
+
12
+ Nitpick::Warnings::UselessBranch.discover.should == branch
13
+ end
14
+
15
+ it "should not discover a non-matching warning" do
16
+ branch = mock("aUselessBranch")
17
+ branch.should_receive(:matches?).and_return(false)
18
+ Nitpick::Warnings::UselessBranch.stub!(:new).and_return(branch)
19
+
20
+ Nitpick::Warnings::UselessBranch.discover.should be_nil
21
+ end
22
+ end
@@ -0,0 +1,10 @@
1
+ require File.join(File.dirname(__FILE__), *%w[.. lib nitpick])
2
+ $:.unshift File.dirname(__FILE__)
3
+
4
+ require 'spec'
5
+
6
+ Spec::Runner.configure do |config|
7
+ def s(*args)
8
+ Sexp.new(*args)
9
+ end
10
+ end
@@ -0,0 +1,11 @@
1
+ require File.dirname(__FILE__) + '/spec_helper'
2
+ require 'fixtures/branch_badness'
3
+
4
+ include Fixtures
5
+
6
+ describe Nitpick::Warnings::UselessBranch do
7
+ it "should match against branches returning only true and false" do
8
+ warning = Nitpick::Warnings::UselessBranch.new(s(:cond), s(:true), s(:false))
9
+ warning.matches?.should be_true
10
+ end
11
+ end
metadata ADDED
@@ -0,0 +1,109 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: nitpick
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Kevin Clark
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-03-19 00:00:00 -07:00
13
+ default_executable: nitpick
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: trollop
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ description:
26
+ email: kevin.clark@gmail.com
27
+ executables:
28
+ - nitpick
29
+ extensions: []
30
+
31
+ extra_rdoc_files:
32
+ - README
33
+ - LICENSE
34
+ files:
35
+ - VERSION.yml
36
+ - bin/nitpick
37
+ - lib/nitpick
38
+ - lib/nitpick/argument_nitpicker.rb
39
+ - lib/nitpick/block_nitpicker.rb
40
+ - lib/nitpick/branch_nitpicker.rb
41
+ - lib/nitpick/local_variable_counter.rb
42
+ - lib/nitpick/local_variable_nitpicker.rb
43
+ - lib/nitpick/method_nitpicker.rb
44
+ - lib/nitpick/nitpicker.rb
45
+ - lib/nitpick/rescue_nitpicker.rb
46
+ - lib/nitpick/sexp_extension.rb
47
+ - lib/nitpick/warnings
48
+ - lib/nitpick/warnings/assignment_as_condition.rb
49
+ - lib/nitpick/warnings/empty_method.rb
50
+ - lib/nitpick/warnings/identical_branch.rb
51
+ - lib/nitpick/warnings/rescue_everything.rb
52
+ - lib/nitpick/warnings/rescue_value.rb
53
+ - lib/nitpick/warnings/shadowed_variable.rb
54
+ - lib/nitpick/warnings/simple_warning.rb
55
+ - lib/nitpick/warnings/unprotected_block.rb
56
+ - lib/nitpick/warnings/unused_argument.rb
57
+ - lib/nitpick/warnings/unused_variable.rb
58
+ - lib/nitpick/warnings/useless_branch.rb
59
+ - lib/nitpick.rb
60
+ - spec/argument_nitpicker_spec.rb
61
+ - spec/assignment_as_condition_spec.rb
62
+ - spec/block_nitpicker_spec.rb
63
+ - spec/branch_nitpicker_spec.rb
64
+ - spec/fixtures
65
+ - spec/fixtures/block_badness.rb
66
+ - spec/fixtures/branch_badness.rb
67
+ - spec/fixtures/local_variable_badness.rb
68
+ - spec/fixtures/method_badness.rb
69
+ - spec/fixtures/rescue_badness.rb
70
+ - spec/local_variable_nitpicker_spec.rb
71
+ - spec/method_nitpicker_spec.rb
72
+ - spec/nitpicker_spec.rb
73
+ - spec/rescue_nitpicker_spec.rb
74
+ - spec/rescue_value_spec.rb
75
+ - spec/shadowed_variable_spec.rb
76
+ - spec/simple_warning_spec.rb
77
+ - spec/spec_helper.rb
78
+ - spec/useless_branch_spec.rb
79
+ - README
80
+ - LICENSE
81
+ has_rdoc: true
82
+ homepage: http://github.com/kevinclark/nitpick
83
+ post_install_message:
84
+ rdoc_options:
85
+ - --inline-source
86
+ - --charset=UTF-8
87
+ require_paths:
88
+ - lib
89
+ required_ruby_version: !ruby/object:Gem::Requirement
90
+ requirements:
91
+ - - ">="
92
+ - !ruby/object:Gem::Version
93
+ version: "0"
94
+ version:
95
+ required_rubygems_version: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - ">="
98
+ - !ruby/object:Gem::Version
99
+ version: "0"
100
+ version:
101
+ requirements: []
102
+
103
+ rubyforge_project: nitpick
104
+ rubygems_version: 1.3.1
105
+ signing_key:
106
+ specification_version: 2
107
+ summary: A link-like static code analyzer for Ruby
108
+ test_files: []
109
+