tailor 1.3.1 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -0
  3. data/Gemfile.lock +27 -25
  4. data/History.md +36 -0
  5. data/README.md +10 -4
  6. data/Rakefile +6 -6
  7. data/features/support/env.rb +2 -2
  8. data/features/support/legacy/bad_ternary_colon_spacing.rb +1 -1
  9. data/features/support/legacy/long_file_with_indentation.rb +2 -2
  10. data/features/support/world.rb +1 -1
  11. data/features/valid_ruby.feature +1 -1
  12. data/lib/tailor/cli/options.rb +19 -1
  13. data/lib/tailor/configuration.rb +2 -2
  14. data/lib/tailor/configuration/style.rb +6 -0
  15. data/lib/tailor/lexed_line.rb +2 -2
  16. data/lib/tailor/lexer/lexer_constants.rb +1 -0
  17. data/lib/tailor/lexer/token.rb +2 -2
  18. data/lib/tailor/logger.rb +2 -2
  19. data/lib/tailor/rake_task.rb +2 -2
  20. data/lib/tailor/ruler.rb +0 -1
  21. data/lib/tailor/rulers/allow_camel_case_methods_ruler.rb +0 -1
  22. data/lib/tailor/rulers/allow_conditional_parentheses.rb +65 -0
  23. data/lib/tailor/rulers/allow_unnecessary_double_quotes_ruler.rb +61 -0
  24. data/lib/tailor/rulers/allow_unnecessary_interpolation_ruler.rb +87 -0
  25. data/lib/tailor/rulers/indentation_spaces_ruler.rb +40 -50
  26. data/lib/tailor/rulers/indentation_spaces_ruler/argument_alignment.rb +63 -0
  27. data/lib/tailor/rulers/indentation_spaces_ruler/ast_xml.rb +89 -0
  28. data/lib/tailor/rulers/indentation_spaces_ruler/indentation_manager.rb +2 -14
  29. data/lib/tailor/rulers/indentation_spaces_ruler/line_continuations.rb +58 -0
  30. data/lib/tailor/rulers/max_code_lines_in_class_ruler.rb +3 -3
  31. data/lib/tailor/rulers/max_code_lines_in_method_ruler.rb +3 -3
  32. data/lib/tailor/rulers/spaces_after_comma_ruler.rb +3 -3
  33. data/lib/tailor/rulers/spaces_after_conditional_ruler.rb +3 -3
  34. data/lib/tailor/rulers/spaces_after_lbrace_ruler.rb +3 -3
  35. data/lib/tailor/rulers/spaces_after_lbracket_ruler.rb +3 -3
  36. data/lib/tailor/rulers/spaces_after_lparen_ruler.rb +3 -3
  37. data/lib/tailor/rulers/spaces_before_comma_ruler.rb +3 -3
  38. data/lib/tailor/rulers/spaces_before_rbrace_ruler.rb +2 -2
  39. data/lib/tailor/rulers/spaces_in_empty_braces_ruler.rb +2 -2
  40. data/lib/tailor/tailorrc.erb +28 -0
  41. data/lib/tailor/version.rb +1 -1
  42. data/spec/functional/conditional_parentheses_spec.rb +325 -0
  43. data/spec/functional/conditional_spacing_spec.rb +66 -42
  44. data/spec/functional/configuration_spec.rb +1 -1
  45. data/spec/functional/horizontal_spacing/braces_spec.rb +10 -9
  46. data/spec/functional/horizontal_spacing/hard_tabs_spec.rb +4 -4
  47. data/spec/functional/horizontal_spacing_spec.rb +5 -5
  48. data/spec/functional/indentation_spacing/argument_alignment_spec.rb +511 -0
  49. data/spec/functional/indentation_spacing/line_continuations_spec.rb +181 -0
  50. data/spec/functional/indentation_spacing_spec.rb +17 -0
  51. data/spec/functional/string_interpolation_spec.rb +117 -0
  52. data/spec/functional/string_quoting_spec.rb +97 -0
  53. data/spec/functional/vertical_spacing/class_length_spec.rb +1 -1
  54. data/spec/spec_helper.rb +8 -2
  55. data/spec/support/argument_alignment_cases.rb +93 -0
  56. data/spec/support/bad_indentation_cases.rb +20 -20
  57. data/spec/support/conditional_parentheses_cases.rb +60 -0
  58. data/spec/support/good_indentation_cases.rb +31 -31
  59. data/spec/support/horizontal_spacing_cases.rb +1 -1
  60. data/spec/support/line_indentation_cases.rb +71 -0
  61. data/spec/support/string_interpolation_cases.rb +45 -0
  62. data/spec/support/string_quoting_cases.rb +25 -0
  63. data/spec/unit/tailor/configuration/file_set_spec.rb +3 -3
  64. data/spec/unit/tailor/configuration/style_spec.rb +24 -21
  65. data/spec/unit/tailor/configuration_spec.rb +4 -1
  66. data/spec/unit/tailor/formatter_spec.rb +10 -10
  67. data/spec/unit/tailor/reporter_spec.rb +0 -1
  68. data/spec/unit/tailor/rulers/indentation_spaces_ruler/indentation_manager_spec.rb +0 -11
  69. data/spec/unit/tailor/rulers/indentation_spaces_ruler_spec.rb +1 -1
  70. data/spec/unit/tailor/version_spec.rb +1 -1
  71. data/tailor.gemspec +1 -0
  72. metadata +72 -33
  73. data/.infinity_test +0 -4
@@ -0,0 +1,45 @@
1
+ INTERPOLATION = {}
2
+
3
+ INTERPOLATION['one_variable_interpolated_only'] =
4
+ %q{puts "#{bing}"
5
+ }
6
+
7
+ INTERPOLATION['mixed_content_and_expression'] =
8
+ %q{puts "hello: #{bing}"
9
+ }
10
+
11
+ INTERPOLATION['no_string'] =
12
+ %q{puts bing
13
+ }
14
+
15
+ INTERPOLATION['two_variables'] =
16
+ %q{puts "#{bing}#{bar}"
17
+ }
18
+
19
+ INTERPOLATION['two_strings_with_unnecessary_interpolation'] =
20
+ %q{puts "#{foo}" + "#{bar}"
21
+ }
22
+
23
+ INTERPOLATION['multiline_string_with_unnecessary_interpolation'] =
24
+ %q{puts "#{foo +
25
+ bar -
26
+ baz}"
27
+ }
28
+
29
+ INTERPOLATION['multiline_word_list'] =
30
+ %q{%w{
31
+ foo
32
+ bar
33
+ baz
34
+ }}
35
+
36
+ INTERPOLATION['nested_interpolation'] =
37
+ %q[def friendly_time(time)
38
+ if hours < 24
39
+ "#{(hours > 0) ? "#{hours} hour" : '' }#{(hours > 1) ? 's' : ''}" +
40
+ " #{(mins > 0) ? "#{mins} minute" : '' }#{(mins > 1) ? 's' : ''}" +
41
+ " #{seconds} second#{(seconds > 1) ? "s" : ''} ago"
42
+ else
43
+ time.to_s
44
+ end
45
+ end]
@@ -0,0 +1,25 @@
1
+ QUOTING = {}
2
+
3
+ QUOTING['single_quotes_no_interpolation'] =
4
+ %q{foo = 'bar'
5
+ }
6
+
7
+ QUOTING['double_quotes_with_interpolation'] =
8
+ %q{foo = "bar#{baz}"
9
+ }
10
+
11
+ QUOTING['double_quotes_no_interpolation'] =
12
+ %q{foo = "bar"
13
+ }
14
+
15
+ QUOTING['double_quotes_no_interpolation_twice'] =
16
+ %q{foo = "bar" + "baz"
17
+ }
18
+
19
+ QUOTING['escape_sequence'] =
20
+ %q{foo = "bar\n"
21
+ }
22
+
23
+ QUOTING['nested_quotes'] =
24
+ %q{foo = "foo#{bar('baz')}"
25
+ }
@@ -13,7 +13,7 @@ describe Tailor::Configuration::FileSet do
13
13
  it 'builds an Array with that file\'s expanded path' do
14
14
  new_list = subject.instance_eval { build_file_list('./test.rb') }
15
15
  new_list.should be_an Array
16
- new_list.first.should match /.+\/test.rb$/
16
+ new_list.first.should match %r[/test.rb$]
17
17
  end
18
18
  end
19
19
 
@@ -31,7 +31,7 @@ describe Tailor::Configuration::FileSet do
31
31
 
32
32
  it 'returns the Array with expanded file paths' do
33
33
  subject.instance_eval { build_file_list(['test.rb']) }.
34
- first.should match /.+\/test.rb$/
34
+ first.should match %r[/test.rb$]
35
35
  end
36
36
  end
37
37
 
@@ -59,7 +59,7 @@ describe Tailor::Configuration::FileSet do
59
59
  subject.update_file_list('test2.rb')
60
60
  subject.instance_variable_get(:@file_list).size.should be 2
61
61
  subject.instance_variable_get(:@file_list).last.
62
- should match /.+\/test2.rb/
62
+ should match %r[/test2.rb]
63
63
  end
64
64
  end
65
65
  end
@@ -156,27 +156,30 @@ describe Tailor::Configuration::Style do
156
156
  describe '#to_hash' do
157
157
  let(:default_values) do
158
158
  {
159
- :allow_camel_case_methods => [false, { :level => :error }],
160
- :allow_hard_tabs => [false, { :level => :error }],
161
- :allow_screaming_snake_case_classes => [false, { :level => :error }],
162
- :allow_trailing_line_spaces => [false, { :level => :error }],
163
- :allow_invalid_ruby => [false, { :level => :warn }],
164
- :indentation_spaces => [2, { :level => :error }],
165
- :max_code_lines_in_class => [300, { :level => :error }],
166
- :max_code_lines_in_method => [30, { :level => :error }],
167
- :max_line_length => [80, { :level => :error }],
168
- :spaces_after_comma => [1, { :level => :error }],
169
- :spaces_after_conditional => [1, { :level=>:error }],
170
- :spaces_after_lbrace => [1, { :level => :error }],
171
- :spaces_after_lbracket => [0, { :level => :error }],
172
- :spaces_after_lparen => [0, { :level => :error }],
173
- :spaces_before_comma => [0, { :level => :error }],
174
- :spaces_before_lbrace => [1, { :level => :error }],
175
- :spaces_before_rbrace => [1, { :level => :error }],
176
- :spaces_before_rbracket => [0, { :level => :error }],
177
- :spaces_before_rparen => [0, { :level => :error }],
178
- :spaces_in_empty_braces => [0, { :level => :error }],
179
- :trailing_newlines => [1, { :level => :error }]
159
+ allow_camel_case_methods: [false, { level: :error }],
160
+ allow_conditional_parentheses: [false, { level: :warn }],
161
+ allow_hard_tabs: [false, { level: :error }],
162
+ allow_screaming_snake_case_classes: [false, { level: :error }],
163
+ allow_trailing_line_spaces: [false, { level: :error }],
164
+ allow_unnecessary_interpolation: [false, { level: :warn }],
165
+ allow_invalid_ruby: [false, { level: :warn }],
166
+ allow_unnecessary_double_quotes: [false, { level: :warn }],
167
+ indentation_spaces: [2, { level: :error }],
168
+ max_code_lines_in_class: [300, { level: :error }],
169
+ max_code_lines_in_method: [30, { level: :error }],
170
+ max_line_length: [80, { level: :error }],
171
+ spaces_after_comma: [1, { level: :error }],
172
+ spaces_after_conditional: [1, { level: :error }],
173
+ spaces_after_lbrace: [1, { level: :error }],
174
+ spaces_after_lbracket: [0, { level: :error }],
175
+ spaces_after_lparen: [0, { level: :error }],
176
+ spaces_before_comma: [0, { level: :error }],
177
+ spaces_before_lbrace: [1, { level: :error }],
178
+ spaces_before_rbrace: [1, { level: :error }],
179
+ spaces_before_rbracket: [0, { level: :error }],
180
+ spaces_before_rparen: [0, { level: :error }],
181
+ spaces_in_empty_braces: [0, { level: :error }],
182
+ trailing_newlines: [1, { level: :error }]
180
183
  }
181
184
  end
182
185
 
@@ -40,16 +40,19 @@ describe Tailor::Configuration do
40
40
  file_list: [],
41
41
  style: {
42
42
  allow_camel_case_methods: [false, { level: :error }],
43
+ allow_conditional_parentheses: [false, { level: :warn }],
43
44
  allow_hard_tabs: [false, { level: :error }],
44
45
  allow_screaming_snake_case_classes: [false, { level: :error }],
45
46
  allow_trailing_line_spaces: [false, { level: :error }],
47
+ allow_unnecessary_interpolation: [false, { level: :warn }],
46
48
  allow_invalid_ruby: [false, { level: :warn }],
49
+ allow_unnecessary_double_quotes: [false, { level: :warn }],
47
50
  indentation_spaces: [2, { level: :error }],
48
51
  max_code_lines_in_class: [300, { level: :error }],
49
52
  max_code_lines_in_method: [30, { level: :error }],
50
53
  max_line_length: [80, { level: :error }],
51
54
  spaces_after_comma: [1, { level: :error }],
52
- spaces_after_conditional: [1, { :level=>:error }],
55
+ spaces_after_conditional: [1, { level: :error }],
53
56
  spaces_after_lbrace: [1, { level: :error }],
54
57
  spaces_after_lbracket: [0, { level: :error }],
55
58
  spaces_after_lparen: [0, { level: :error }],
@@ -10,11 +10,11 @@ describe Tailor::Formatter do
10
10
  {
11
11
  'some_file.rb' => [
12
12
  {
13
- :type => 'allow_invalid_ruby',
14
- :line => 0,
15
- :column => 0,
16
- :message => msg,
17
- :level => :warn
13
+ type: 'allow_invalid_ruby',
14
+ line: 0,
15
+ column: 0,
16
+ message: msg,
17
+ level: :warn
18
18
  }
19
19
  ]
20
20
  }
@@ -33,11 +33,11 @@ describe Tailor::Formatter do
33
33
 
34
34
  subject.problems_at_level(problems, :warn).should == [
35
35
  {
36
- :type => 'allow_invalid_ruby',
37
- :line => 0,
38
- :column => 0,
39
- :message => msg,
40
- :level => :warn
36
+ type: 'allow_invalid_ruby',
37
+ line: 0,
38
+ column: 0,
39
+ message: msg,
40
+ level: :warn
41
41
  }
42
42
  ]
43
43
  end
@@ -45,7 +45,6 @@ describe Tailor::Reporter do
45
45
 
46
46
  context 'without output file' do
47
47
  it 'calls #file_report on each @formatters' do
48
- label = :some_label
49
48
  formatter.should_receive(:summary_report).with(all_problems)
50
49
  File.should_not_receive(:open)
51
50
 
@@ -69,17 +69,6 @@ describe Tailor::Rulers::IndentationSpacesRuler::IndentationManager do
69
69
  end
70
70
  end
71
71
 
72
- describe '#set_up_line_transition' do
73
- context '@amount_to_change_this < 0' do
74
- before { subject.instance_variable_set(:@amount_to_change_this, -1) }
75
-
76
- it 'should call #decrease_this_line' do
77
- subject.should_receive(:decrease_this_line)
78
- subject.set_up_line_transition
79
- end
80
- end
81
- end
82
-
83
72
  describe '#transition_lines' do
84
73
  context '#started? is true' do
85
74
  before { subject.stub(:started?).and_return true }
@@ -44,7 +44,7 @@ describe Tailor::Rulers::IndentationSpacesRuler do
44
44
 
45
45
  describe '#embexpr_end_update' do
46
46
  before do
47
- lexed_line.should_receive(:only_on_embexpr_end?).and_return(false)
47
+ lexed_line.should_receive(:only_embexpr_end?).and_return(false)
48
48
  end
49
49
 
50
50
  it 'pops @embexpr_nesting' do
@@ -3,5 +3,5 @@ require 'tailor/version'
3
3
 
4
4
 
5
5
  describe Tailor::VERSION do
6
- it { should == '1.3.1' }
6
+ it { should == '1.4.0' }
7
7
  end
@@ -27,6 +27,7 @@ project, whatever style that may be.
27
27
  s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
28
28
 
29
29
  s.add_runtime_dependency 'log_switch', '>= 0.3.0'
30
+ s.add_runtime_dependency 'nokogiri', '>= 1.6.0'
30
31
  s.add_runtime_dependency 'term-ansicolor', '>= 1.0.5'
31
32
  s.add_runtime_dependency 'text-table', '>= 1.2.2'
32
33
 
metadata CHANGED
@@ -1,167 +1,181 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tailor
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.1
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steve Loveless
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-09-30 00:00:00.000000000 Z
11
+ date: 2014-01-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: log_switch
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: 0.3.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: 0.3.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: nokogiri
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 1.6.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 1.6.0
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: term-ansicolor
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
- - - '>='
45
+ - - ">="
32
46
  - !ruby/object:Gem::Version
33
47
  version: 1.0.5
34
48
  type: :runtime
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
- - - '>='
52
+ - - ">="
39
53
  - !ruby/object:Gem::Version
40
54
  version: 1.0.5
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: text-table
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
- - - '>='
59
+ - - ">="
46
60
  - !ruby/object:Gem::Version
47
61
  version: 1.2.2
48
62
  type: :runtime
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
- - - '>='
66
+ - - ">="
53
67
  - !ruby/object:Gem::Version
54
68
  version: 1.2.2
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: aruba
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
- - - '>='
73
+ - - ">="
60
74
  - !ruby/object:Gem::Version
61
75
  version: '0'
62
76
  type: :development
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
- - - '>='
80
+ - - ">="
67
81
  - !ruby/object:Gem::Version
68
82
  version: '0'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: bundler
71
85
  requirement: !ruby/object:Gem::Requirement
72
86
  requirements:
73
- - - '>='
87
+ - - ">="
74
88
  - !ruby/object:Gem::Version
75
89
  version: '0'
76
90
  type: :development
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
- - - '>='
94
+ - - ">="
81
95
  - !ruby/object:Gem::Version
82
96
  version: '0'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: cucumber
85
99
  requirement: !ruby/object:Gem::Requirement
86
100
  requirements:
87
- - - '>='
101
+ - - ">="
88
102
  - !ruby/object:Gem::Version
89
103
  version: 1.0.2
90
104
  type: :development
91
105
  prerelease: false
92
106
  version_requirements: !ruby/object:Gem::Requirement
93
107
  requirements:
94
- - - '>='
108
+ - - ">="
95
109
  - !ruby/object:Gem::Version
96
110
  version: 1.0.2
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: fakefs
99
113
  requirement: !ruby/object:Gem::Requirement
100
114
  requirements:
101
- - - '>='
115
+ - - ">="
102
116
  - !ruby/object:Gem::Version
103
117
  version: 0.4.2
104
118
  type: :development
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
- - - '>='
122
+ - - ">="
109
123
  - !ruby/object:Gem::Version
110
124
  version: 0.4.2
111
125
  - !ruby/object:Gem::Dependency
112
126
  name: rake
113
127
  requirement: !ruby/object:Gem::Requirement
114
128
  requirements:
115
- - - '>='
129
+ - - ">="
116
130
  - !ruby/object:Gem::Version
117
131
  version: '0'
118
132
  type: :development
119
133
  prerelease: false
120
134
  version_requirements: !ruby/object:Gem::Requirement
121
135
  requirements:
122
- - - '>='
136
+ - - ">="
123
137
  - !ruby/object:Gem::Version
124
138
  version: '0'
125
139
  - !ruby/object:Gem::Dependency
126
140
  name: rspec
127
141
  requirement: !ruby/object:Gem::Requirement
128
142
  requirements:
129
- - - '>='
143
+ - - ">="
130
144
  - !ruby/object:Gem::Version
131
145
  version: 2.5.0
132
146
  type: :development
133
147
  prerelease: false
134
148
  version_requirements: !ruby/object:Gem::Requirement
135
149
  requirements:
136
- - - '>='
150
+ - - ">="
137
151
  - !ruby/object:Gem::Version
138
152
  version: 2.5.0
139
153
  - !ruby/object:Gem::Dependency
140
154
  name: simplecov
141
155
  requirement: !ruby/object:Gem::Requirement
142
156
  requirements:
143
- - - '>='
157
+ - - ">="
144
158
  - !ruby/object:Gem::Version
145
159
  version: 0.4.0
146
160
  type: :development
147
161
  prerelease: false
148
162
  version_requirements: !ruby/object:Gem::Requirement
149
163
  requirements:
150
- - - '>='
164
+ - - ">="
151
165
  - !ruby/object:Gem::Version
152
166
  version: 0.4.0
153
167
  - !ruby/object:Gem::Dependency
154
168
  name: yard
155
169
  requirement: !ruby/object:Gem::Requirement
156
170
  requirements:
157
- - - '>='
171
+ - - ">="
158
172
  - !ruby/object:Gem::Version
159
173
  version: 0.7.0
160
174
  type: :development
161
175
  prerelease: false
162
176
  version_requirements: !ruby/object:Gem::Requirement
163
177
  requirements:
164
- - - '>='
178
+ - - ">="
165
179
  - !ruby/object:Gem::Version
166
180
  version: 0.7.0
167
181
  description: |
@@ -180,12 +194,11 @@ extra_rdoc_files:
180
194
  - History.md
181
195
  - README.md
182
196
  files:
183
- - .gemtest
184
- - .gitignore
185
- - .infinity_test
186
- - .rspec
187
- - .tailor
188
- - .travis.yml
197
+ - ".gemtest"
198
+ - ".gitignore"
199
+ - ".rspec"
200
+ - ".tailor"
201
+ - ".travis.yml"
189
202
  - Gemfile
190
203
  - Gemfile.lock
191
204
  - History.md
@@ -226,12 +239,18 @@ files:
226
239
  - lib/tailor/ruler.rb
227
240
  - lib/tailor/rulers.rb
228
241
  - lib/tailor/rulers/allow_camel_case_methods_ruler.rb
242
+ - lib/tailor/rulers/allow_conditional_parentheses.rb
229
243
  - lib/tailor/rulers/allow_hard_tabs_ruler.rb
230
244
  - lib/tailor/rulers/allow_invalid_ruby_ruler.rb
231
245
  - lib/tailor/rulers/allow_screaming_snake_case_classes_ruler.rb
232
246
  - lib/tailor/rulers/allow_trailing_line_spaces_ruler.rb
247
+ - lib/tailor/rulers/allow_unnecessary_double_quotes_ruler.rb
248
+ - lib/tailor/rulers/allow_unnecessary_interpolation_ruler.rb
233
249
  - lib/tailor/rulers/indentation_spaces_ruler.rb
250
+ - lib/tailor/rulers/indentation_spaces_ruler/argument_alignment.rb
251
+ - lib/tailor/rulers/indentation_spaces_ruler/ast_xml.rb
234
252
  - lib/tailor/rulers/indentation_spaces_ruler/indentation_manager.rb
253
+ - lib/tailor/rulers/indentation_spaces_ruler/line_continuations.rb
235
254
  - lib/tailor/rulers/max_code_lines_in_class_ruler.rb
236
255
  - lib/tailor/rulers/max_code_lines_in_method_ruler.rb
237
256
  - lib/tailor/rulers/max_line_length_ruler.rb
@@ -250,6 +269,7 @@ files:
250
269
  - lib/tailor/runtime_error.rb
251
270
  - lib/tailor/tailorrc.erb
252
271
  - lib/tailor/version.rb
272
+ - spec/functional/conditional_parentheses_spec.rb
253
273
  - spec/functional/conditional_spacing_spec.rb
254
274
  - spec/functional/configuration_spec.rb
255
275
  - spec/functional/horizontal_spacing/braces_spec.rb
@@ -261,23 +281,32 @@ files:
261
281
  - spec/functional/horizontal_spacing/parens_spec.rb
262
282
  - spec/functional/horizontal_spacing/trailing_whitespace_spec.rb
263
283
  - spec/functional/horizontal_spacing_spec.rb
284
+ - spec/functional/indentation_spacing/argument_alignment_spec.rb
264
285
  - spec/functional/indentation_spacing/bad_indentation_spec.rb
286
+ - spec/functional/indentation_spacing/line_continuations_spec.rb
265
287
  - spec/functional/indentation_spacing_spec.rb
266
288
  - spec/functional/naming/camel_case_methods_spec.rb
267
289
  - spec/functional/naming/screaming_snake_case_classes_spec.rb
268
290
  - spec/functional/naming_spec.rb
269
291
  - spec/functional/rake_task_spec.rb
292
+ - spec/functional/string_interpolation_spec.rb
293
+ - spec/functional/string_quoting_spec.rb
270
294
  - spec/functional/vertical_spacing/class_length_spec.rb
271
295
  - spec/functional/vertical_spacing/method_length_spec.rb
272
296
  - spec/functional/vertical_spacing_spec.rb
273
297
  - spec/spec_helper.rb
298
+ - spec/support/argument_alignment_cases.rb
274
299
  - spec/support/bad_indentation_cases.rb
300
+ - spec/support/conditional_parentheses_cases.rb
275
301
  - spec/support/conditional_spacing_cases.rb
276
302
  - spec/support/good_indentation_cases.rb
277
303
  - spec/support/horizontal_spacing_cases.rb
304
+ - spec/support/line_indentation_cases.rb
278
305
  - spec/support/naming_cases.rb
279
306
  - spec/support/rake_task_config_no_problems.rb
280
307
  - spec/support/rake_task_config_problems.rb
308
+ - spec/support/string_interpolation_cases.rb
309
+ - spec/support/string_quoting_cases.rb
281
310
  - spec/support/vertical_spacing_cases.rb
282
311
  - spec/unit/tailor/cli/options_spec.rb
283
312
  - spec/unit/tailor/cli_spec.rb
@@ -314,17 +343,17 @@ require_paths:
314
343
  - lib
315
344
  required_ruby_version: !ruby/object:Gem::Requirement
316
345
  requirements:
317
- - - '>='
346
+ - - ">="
318
347
  - !ruby/object:Gem::Version
319
348
  version: '0'
320
349
  required_rubygems_version: !ruby/object:Gem::Requirement
321
350
  requirements:
322
- - - '>='
351
+ - - ">="
323
352
  - !ruby/object:Gem::Version
324
353
  version: '0'
325
354
  requirements: []
326
355
  rubyforge_project:
327
- rubygems_version: 2.0.3
356
+ rubygems_version: 2.2.0
328
357
  signing_key:
329
358
  specification_version: 4
330
359
  summary: A Ruby style & complexity measurer
@@ -340,6 +369,7 @@ test_files:
340
369
  - features/support/legacy/long_file_with_indentation.rb
341
370
  - features/support/world.rb
342
371
  - features/valid_ruby.feature
372
+ - spec/functional/conditional_parentheses_spec.rb
343
373
  - spec/functional/conditional_spacing_spec.rb
344
374
  - spec/functional/configuration_spec.rb
345
375
  - spec/functional/horizontal_spacing/braces_spec.rb
@@ -351,23 +381,32 @@ test_files:
351
381
  - spec/functional/horizontal_spacing/parens_spec.rb
352
382
  - spec/functional/horizontal_spacing/trailing_whitespace_spec.rb
353
383
  - spec/functional/horizontal_spacing_spec.rb
384
+ - spec/functional/indentation_spacing/argument_alignment_spec.rb
354
385
  - spec/functional/indentation_spacing/bad_indentation_spec.rb
386
+ - spec/functional/indentation_spacing/line_continuations_spec.rb
355
387
  - spec/functional/indentation_spacing_spec.rb
356
388
  - spec/functional/naming/camel_case_methods_spec.rb
357
389
  - spec/functional/naming/screaming_snake_case_classes_spec.rb
358
390
  - spec/functional/naming_spec.rb
359
391
  - spec/functional/rake_task_spec.rb
392
+ - spec/functional/string_interpolation_spec.rb
393
+ - spec/functional/string_quoting_spec.rb
360
394
  - spec/functional/vertical_spacing/class_length_spec.rb
361
395
  - spec/functional/vertical_spacing/method_length_spec.rb
362
396
  - spec/functional/vertical_spacing_spec.rb
363
397
  - spec/spec_helper.rb
398
+ - spec/support/argument_alignment_cases.rb
364
399
  - spec/support/bad_indentation_cases.rb
400
+ - spec/support/conditional_parentheses_cases.rb
365
401
  - spec/support/conditional_spacing_cases.rb
366
402
  - spec/support/good_indentation_cases.rb
367
403
  - spec/support/horizontal_spacing_cases.rb
404
+ - spec/support/line_indentation_cases.rb
368
405
  - spec/support/naming_cases.rb
369
406
  - spec/support/rake_task_config_no_problems.rb
370
407
  - spec/support/rake_task_config_problems.rb
408
+ - spec/support/string_interpolation_cases.rb
409
+ - spec/support/string_quoting_cases.rb
371
410
  - spec/support/vertical_spacing_cases.rb
372
411
  - spec/unit/tailor/cli/options_spec.rb
373
412
  - spec/unit/tailor/cli_spec.rb