ruby-beautify 0.97.0 → 0.97.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 45c73195863804f127d9481a07ec33676821e4d1
4
- data.tar.gz: c1eaef1e3e7b2736d6f9a6272cd428636d0ef28a
3
+ metadata.gz: 845edab077c5c5bf51a6e33fa1cce9d9337c70b4
4
+ data.tar.gz: 334487716f67201c629c3ce0ee46dafd21a8943b
5
5
  SHA512:
6
- metadata.gz: 9370b94027a54f3b6911f818e8847b0c49c957cadfe2b6c73b049f493a24ab90dd1de91a61f48da952acc1001216fbcf8aa2721ef467c6478dfea8273d7713c7
7
- data.tar.gz: 98f2d051bebff05ae8dce225ce5e44f3a2cef4dacf89dab2327ae094bae6cea7417062e0a476e91eb3d707a845a5aa527dc9e9d555251ce9e21c29045015bb4d
6
+ metadata.gz: 9cd313b20304d0b0247015da7cfb8842a2a2bacf34ace4c2cca3256eb406b0022bb6be65c3cf95b4675989616a3e4b7e14ae8d790aed837c354959c91cf3c2c1
7
+ data.tar.gz: 4bf21cb165f737d4d97c4778bac5fb942b9cd4f519e34f691932b58b05f00aa941fd80b61ab1ec05c935026e0f79f5bff754a21462972b6601f1ebd02c4a039a
data/README.md CHANGED
@@ -1,9 +1,4 @@
1
- # Ruby Beautify
2
- **Master** [![Code Climate](https://codeclimate.com/badge.png)](https://codeclimate.com/github/erniebrodeur/ruby-beautify) [![Build Status](https://travis-ci.org/erniebrodeur/ruby-beautify.png?branch=master)](https://travis-ci.org/erniebrodeur/ruby-beautify) [![Dependency Status](https://gemnasium.com/erniebrodeur/ruby-beautify.png)](https://gemnasium.com/erniebrodeur/ruby-beautify)
3
-
4
- **Development** [![Build Status](https://travis-ci.org/erniebrodeur/ruby-beautify.png?branch=dev)](https://travis-ci.org/erniebrodeur/ruby-beautify)
5
-
6
- [![Gitter](https://badges.gitter.im/Join Chat.svg)](https://gitter.im/erniebrodeur/ruby-beautify?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
1
+ # Ruby Beautify [![Build Status](https://travis-ci.org/erniebrodeur/ruby-beautify.png?branch=master)](https://travis-ci.org/erniebrodeur/ruby-beautify) [![Gitter](https://badges.gitter.im/Join Chat.svg)](https://gitter.im/erniebrodeur/ruby-beautify?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
7
2
 
8
3
  This gem provides a cli binary named 'ruby-beautify' that will pretty up ruby code.
9
4
 
@@ -51,6 +46,19 @@ You can over write files in place, this is useful for doing an entire directory
51
46
 
52
47
  `ruby-beautify --overwrite **/*.rb`
53
48
 
49
+ ## Configuration file
50
+
51
+ It can use a configuration file like some of the other ruby projects out there. The config file consists of each argument on a new line. Something like this:
52
+
53
+ ```
54
+ --spaces
55
+ --ident_count=2
56
+ ```
57
+
58
+ Note, you'll have to add the equal sign between value and argument (tricky bit, that).
59
+
60
+ Placing this into a `.ruby-beautify` anywhere in your tree (like git) will work. This allows you to put it at the root of a project and have it change the defaults anywhere in the project.
61
+
54
62
  ## Bugs
55
63
 
56
64
  Please feel free to open issues, I am actively working on this project again, thanks entirely to the ripper gem.
@@ -60,6 +68,7 @@ The gaps are getting smaller. I think we have most of the basic ruby use cases
60
68
  ## Todo
61
69
 
62
70
  * Add vim style comment hinting.
71
+ * add specs/pipe testing (epic).
63
72
  * remove the link to rbeautify (by 1.0).
64
73
 
65
74
  Longer term I'd like to do some more to assignment, line wrapping, and spacing in/around keywords.
data/WHATSNEW.md CHANGED
@@ -1,3 +1,7 @@
1
+ ## 0.97.1
2
+ * Now with more config file flavor! (check the [README.md]).
3
+ * All tests green.
4
+
1
5
  ## 0.97.0
2
6
  * Split up the spec into usage scenarios, easier to contribut too.
3
7
  * Lots of refactoring.
data/bin/rbeautify CHANGED
@@ -3,6 +3,7 @@ require 'optparse'
3
3
  require 'ruby-beautify'
4
4
 
5
5
  include RubyBeautify
6
+ my_argv = config_argv
6
7
 
7
8
  Options = OptionParser.new do |opts|
8
9
  opts.on("-V", "--version", "Print version") { |version| puts RBeautify::VERSION;exit 0}
@@ -12,7 +13,7 @@ Options = OptionParser.new do |opts|
12
13
  opts.on("--overwrite", "Overwrite files as you go (won't touch files that faile a syntax check).") { @overwrite = true }
13
14
  opts.banner = "Usage: print ruby into a pretty format, or break trying."
14
15
  end
15
- Options.parse!
16
+ Options.parse!(my_argv)
16
17
 
17
18
  @indent_token = "\t" unless @indent_token
18
19
  @indent_count = 1 unless @indent_count
@@ -28,12 +29,11 @@ def print_or_die(content)
28
29
  end
29
30
  end
30
31
 
31
- # no argument, assume we want to open STDIN.
32
- if ARGV.empty?
32
+ if my_argv.empty?
33
33
  content = $stdin.read
34
34
  print_or_die content
35
35
  else
36
- ARGV.each do |file|
36
+ my_argv.each do |file|
37
37
  if File.exist? file
38
38
  fh = open(file)
39
39
  content = fh.read
data/bin/ruby-beautify CHANGED
@@ -3,6 +3,7 @@ require 'optparse'
3
3
  require 'ruby-beautify'
4
4
 
5
5
  include RubyBeautify
6
+ my_argv = config_argv
6
7
 
7
8
  Options = OptionParser.new do |opts|
8
9
  opts.on("-V", "--version", "Print version") { |version| puts RBeautify::VERSION;exit 0}
@@ -12,7 +13,7 @@ Options = OptionParser.new do |opts|
12
13
  opts.on("--overwrite", "Overwrite files as you go (won't touch files that faile a syntax check).") { @overwrite = true }
13
14
  opts.banner = "Usage: print ruby into a pretty format, or break trying."
14
15
  end
15
- Options.parse!
16
+ Options.parse!(my_argv)
16
17
 
17
18
  @indent_token = "\t" unless @indent_token
18
19
  @indent_count = 1 unless @indent_count
@@ -28,12 +29,11 @@ def print_or_die(content)
28
29
  end
29
30
  end
30
31
 
31
- # no argument, assume we want to open STDIN.
32
- if ARGV.empty?
32
+ if my_argv.empty?
33
33
  content = $stdin.read
34
34
  print_or_die content
35
35
  else
36
- ARGV.each do |file|
36
+ my_argv.each do |file|
37
37
  if File.exist? file
38
38
  fh = open(file)
39
39
  content = fh.read
data/lib/ruby-beautify.rb CHANGED
@@ -156,4 +156,22 @@ module RubyBeautify
156
156
  output_string += "#{indent}#{string.lstrip}"
157
157
  end
158
158
  end
159
+
160
+ # try to find a config and return a modified argv, walks all the way to root
161
+ # looking for '.ruby-beautify' and then returns an argv with our new options.
162
+ def config_argv
163
+ target_dirs = Dir.pwd.split("/")
164
+
165
+ # sloppy walk method, not well tested but shouldn't get in the way.
166
+ while (target_dirs.any?)
167
+ target = "#{target_dirs.join("/")}/.ruby-beautify"
168
+ break if File.exist?(target)
169
+ target_dirs.pop
170
+ target = nil
171
+ end
172
+
173
+ return ARGV unless target
174
+ lines = open(target).readlines
175
+ return ARGV + lines.map {|l| l.chomp}
176
+ end
159
177
  end
@@ -1,3 +1,3 @@
1
1
  module RubyBeautify
2
- VERSION = "0.97.0"
2
+ VERSION = "0.97.1"
3
3
  end
@@ -11,6 +11,13 @@ describe "Ruby Beautify" do
11
11
  @overwrite_file = "spec/binary_scenarios/overwrite.rb"
12
12
  @overwrite_target_file = "tmp/copied.rb"
13
13
  @overwrite_pretty_file = "spec/binary_scenarios/overwrite_pretty.rb"
14
+ # Our space test.
15
+ @space_before = 'spec/binary_scenarios/spaces_before.rb'
16
+ @space_after = 'spec/binary_scenarios/spaces_after.rb'
17
+ @space_after_sum = Digest::MD5.hexdigest File.read @space_after
18
+ # our count test.
19
+ @count_before = 'spec/binary_scenarios/count_before.rb'
20
+ @count_after = 'spec/binary_scenarios/count_after.rb'
14
21
  end
15
22
 
16
23
  it "will work" do
@@ -36,6 +43,23 @@ describe "Ruby Beautify" do
36
43
  FileUtils.rm @overwrite_target_file
37
44
  end
38
45
 
39
- it "will honor --tabs vs --spaces"
40
- it "will honor the count prefix"
46
+ it "will honor --spaces" do
47
+ beautified_sum = Digest::MD5.hexdigest `bundle exec #{BEAUTIFY_BIN} --spaces #{@space_before}`
48
+ expect(beautified_sum).to eq(@space_after_sum)
49
+ end
50
+
51
+ it "will honor the ident_count prefix" do
52
+ beautified_sum = Digest::MD5.hexdigest `bundle exec #{BEAUTIFY_BIN} --indent_count=3 #{@count_before}`
53
+ count_after_sum = Digest::MD5.hexdigest File.read @count_after
54
+ expect(beautified_sum).to eq(count_after_sum)
55
+ end
56
+
57
+ it "will use a .ruby-beautify config file" do
58
+ FileUtils.cp "spec/ruby-beautify.dotfile", "tmp/.ruby-beautify"
59
+ Dir.chdir "tmp"
60
+ beautified_sum = Digest::MD5.hexdigest `bundle exec #{BEAUTIFY_BIN} ../#{@space_before}`
61
+ Dir.chdir ".."
62
+ FileUtils.rm "tmp/.ruby-beautify"
63
+ expect(beautified_sum).to eq(@space_after_sum)
64
+ end
41
65
  end
@@ -0,0 +1,3 @@
1
+ def count
2
+ puts "this"
3
+ end
@@ -0,0 +1,3 @@
1
+ def count
2
+ puts "this"
3
+ end
@@ -0,0 +1,3 @@
1
+ def spaces
2
+ puts "are an option"
3
+ end
@@ -0,0 +1,3 @@
1
+ def spaces
2
+ puts "are an option"
3
+ end
@@ -0,0 +1 @@
1
+ --spaces
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-beautify
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.97.0
4
+ version: 0.97.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ernie Brodeur
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-18 00:00:00.000000000 Z
11
+ date: 2015-01-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -76,10 +76,15 @@ files:
76
76
  - lib/ruby-beautify/version.rb
77
77
  - ruby-beautify.gemspec
78
78
  - spec/bin/ruby-beautify_spec.rb
79
+ - spec/binary_scenarios/count_after.rb
80
+ - spec/binary_scenarios/count_before.rb
79
81
  - spec/binary_scenarios/doubled_example.rb
80
82
  - spec/binary_scenarios/overwrite.rb
81
83
  - spec/binary_scenarios/overwrite_pretty.rb
82
84
  - spec/binary_scenarios/small_example.rb
85
+ - spec/binary_scenarios/spaces_after.rb
86
+ - spec/binary_scenarios/spaces_before.rb
87
+ - spec/ruby-beautify.dotfile
83
88
  - spec/spec_helper.rb
84
89
  - spec/usage_scenarios/README.md
85
90
  - spec/usage_scenarios/case.rb
@@ -122,10 +127,15 @@ specification_version: 4
122
127
  summary: a cli tool (and module) to beautify ruby code.
123
128
  test_files:
124
129
  - spec/bin/ruby-beautify_spec.rb
130
+ - spec/binary_scenarios/count_after.rb
131
+ - spec/binary_scenarios/count_before.rb
125
132
  - spec/binary_scenarios/doubled_example.rb
126
133
  - spec/binary_scenarios/overwrite.rb
127
134
  - spec/binary_scenarios/overwrite_pretty.rb
128
135
  - spec/binary_scenarios/small_example.rb
136
+ - spec/binary_scenarios/spaces_after.rb
137
+ - spec/binary_scenarios/spaces_before.rb
138
+ - spec/ruby-beautify.dotfile
129
139
  - spec/spec_helper.rb
130
140
  - spec/usage_scenarios/README.md
131
141
  - spec/usage_scenarios/case.rb