tree.rb 0.3.2 → 0.3.3

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.
data/lib/tree_rb.rb CHANGED
@@ -18,6 +18,9 @@ require 'ansi/code'
18
18
  #
19
19
 
20
20
  require "tree_rb/version"
21
+ require "tree_rb/extension_md5"
22
+ require "tree_rb/extension_numeric"
23
+
21
24
  require "tree_rb/abs_node"
22
25
  require 'tree_rb/leaf_node'
23
26
  require 'tree_rb/tree_node'
@@ -130,10 +130,6 @@ module TreeRb
130
130
  not_implemented
131
131
  end
132
132
 
133
- def to_s
134
- @content.to_s
135
- end
136
-
137
133
  protected
138
134
 
139
135
  def parent=(parent)
@@ -22,7 +22,7 @@ module TreeRb
22
22
  opts.separator ""
23
23
  opts.separator "options: "
24
24
 
25
- opts.on("-h", "--help", "Show this message") do
25
+ opts.on("--help", "Show this message") do
26
26
  puts opts
27
27
  return 0
28
28
  end
@@ -78,6 +78,25 @@ module TreeRb
78
78
  options[:show_size] = true
79
79
  end
80
80
 
81
+ msg =<<-EOS
82
+ Print the size of each file but in a more human readable way, e.g. appending a size letter for kilobytes (K),
83
+ megabytes (M), gigabytes (G), terrabytes (T), petabytes (P) and exabytes (E).
84
+ EOS
85
+
86
+ opts.on("-h", msg) do
87
+ options[:show_size_human] = true
88
+ end
89
+
90
+ options[:show_indentation] = true
91
+ opts.on("-i", "Makes tree not print the indentation lines, useful when used in conjunction with the -f option.") do
92
+ options[:show_indentation] = false
93
+ end
94
+
95
+ options[:show_md5] = false
96
+ opts.on("--md5", "show md5 of file") do
97
+ options[:show_md5] = true
98
+ end
99
+
81
100
  begin
82
101
  rest = opts.parse(argv)
83
102
  rescue OptionParser::InvalidOption => e
@@ -96,6 +115,9 @@ module TreeRb
96
115
  dirname = rest[0]
97
116
  end
98
117
 
118
+
119
+
120
+
99
121
  dirname = File.expand_path(dirname)
100
122
 
101
123
  dtw = DirTreeWalker.new(dirname)
@@ -108,16 +130,14 @@ module TreeRb
108
130
  case options[:algo]
109
131
 
110
132
  when 'build-dir'
111
- # TODO: capture CTRL^C
133
+ # TODO: capture CTRL^C to avoid show the stack trace
112
134
  # http://ruby-doc.org/core-1.9.3/Kernel.html#method-i-trap
113
135
  Signal.trap('INT') { put "User interrupted exit"; exit }
114
136
 
115
- visitor = BuildDirTreeVisitor.new
116
- visitor.show_size = options[:show_size]
117
-
137
+ visitor = BuildDirTreeVisitor.new(options)
118
138
  dtw.run(visitor)
119
139
 
120
- puts visitor.root.to_str('', options[:colorize])
140
+ puts visitor.root.to_str('', options)
121
141
  puts
122
142
  puts "#{visitor.nr_directories} directories, #{visitor.nr_files} files"
123
143
 
@@ -0,0 +1,29 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # calculate md5 of big files, snipped found on usenet
4
+ #
5
+
6
+ if RUBY_VERSION =~ /1\.8/
7
+ # std lib
8
+ require 'md5'
9
+ else
10
+ # std lib
11
+ require 'digest/md5'
12
+ include Digest
13
+ end
14
+
15
+ # Return an MD5 object
16
+ # example:
17
+ # MD5.file( filename ).hexdigest
18
+ #
19
+ class MD5
20
+ def self.file(file)
21
+ File.open(file, "rb") do |f|
22
+ res = self.new
23
+ while (data = f.read(4096))
24
+ res << data
25
+ end
26
+ res
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,27 @@
1
+ # -*- coding: utf-8 -*-
2
+ class Numeric
3
+ #
4
+ # returns a string separated by the thousands <separator>
5
+ # es.: 100000 -> 1.000.000
6
+ #
7
+ def with_separator(separator = ',', length = 3)
8
+ splitter = Regexp.compile "(\\d{#{length}})"
9
+ before, after = self.to_s.split('.')
10
+ before = before.reverse.gsub splitter, '\1' + separator
11
+ str = "#{ before.chomp(separator).reverse }"
12
+ str += ".#{ after }" if after
13
+ str
14
+ end
15
+
16
+ def to_human
17
+ if self == 0
18
+ return "0B"
19
+ end
20
+ units = %w{B KB MB GB TB}
21
+
22
+ e = (Math.log(self)/Math.log(1024)).floor
23
+ s = "%.3f" % (to_f / 1024**e)
24
+ s.sub(/\.?0*$/, units[e])
25
+ end
26
+
27
+ end
@@ -90,7 +90,7 @@ module TreeRb
90
90
  end
91
91
  leaf_node
92
92
  end
93
- end # end class << self
93
+ end # end class << self
94
94
 
95
95
  # leaves of this node
96
96
  attr_reader :leaves
@@ -249,56 +249,106 @@ module TreeRb
249
249
  # TODO: integrate with ansi color
250
250
  # TODO: see dircolors command
251
251
  # http://isthe.com/chongo/tech/comp/ansi_escapes.html
252
+
252
253
  # puts "\033[2J" # clear screen
253
- # puts "aaaa \033[7;31;40m ciao \033[0m"
254
254
  # ESC[K Clear to end of line
255
+ # puts "aaaa \033[7;31;40m ciao \033[0m"
256
+
257
+
258
+ #
259
+ # check console character encoding
260
+ # altre variabili LC_CTYPE
261
+ # LC_ALL
262
+ # comando locale
263
+ # puts "enconding: #{ENV['LANG']}"
264
+ #
265
+
266
+
267
+ # │ (ascii 179)
268
+ # ├ (ascii 195)
269
+ # └ (ascii 192)
270
+ # ─ (ascii 196)
271
+
255
272
 
256
- def to_str(prefix= "", tty_color = false)
257
- str = ""
273
+ BRANCH = '|-- '
274
+ LAST_BRANCH = '`-- '
275
+ CONT_1 = "| "
276
+ CONT_2 = " "
277
+
278
+ def to_str(prefix= "", options = { })
279
+ #TODO: find a more idiomatic mode to assign an array of options
280
+ tty_color = options[:colorize].nil? ? false : options[:colorize]
281
+ show_indentation = options[:show_indentation].nil? ? true : options[:show_indentation]
282
+ str = ""
258
283
 
259
284
  # print node itself
260
285
  if root?
261
- if tty_color
262
- str << ANSI.red{ to_s } << "\n"
263
- else
264
- str << to_s << "\n"
265
- end
286
+ str << node_content_to_str(content, options)
266
287
  else
267
- str << prefix
268
- if self.next
269
- str << '|-- '
270
- else
271
- str << '`-- '
288
+
289
+ if show_indentation
290
+ str << prefix
291
+ if self.next
292
+ str << BRANCH
293
+ else
294
+ str << LAST_BRANCH
295
+ end
272
296
  end
273
- if tty_color
274
- str << ANSI.red{ to_s } << "\n"
275
- else
276
- str << to_s << "\n"
297
+
298
+ str << node_content_to_str(content, options)
299
+ if show_indentation
300
+ prefix += self.next ? CONT_1 : CONT_2
277
301
  end
278
- prefix += self.next ? "| " : " "
279
302
  end
280
303
 
281
304
  # print leaves
282
305
  @leaves.each do |leaf|
283
- str << prefix
284
- if !leaf.next.nil? or !@children.empty?
285
- str << '|-- '
286
- else
287
- str << '`-- '
288
- end
289
- if tty_color
290
- str << ANSI.green{ leaf.to_s } << "\n"
291
- else
292
- str << leaf.to_s << "\n"
306
+
307
+ if show_indentation
308
+ str << prefix
309
+ if !leaf.next.nil? or !@children.empty?
310
+ str << BRANCH
311
+ else
312
+ str << LAST_BRANCH
313
+ end
293
314
  end
315
+
316
+ str << leaf_content_to_str(leaf.content, options)
294
317
  end
295
318
 
296
319
  # print children
297
320
  @children.each do |child|
298
- str << child.to_str(prefix, tty_color)
321
+ str << child.to_str(prefix, options)
299
322
  end
300
323
  str
301
324
  end
302
325
 
303
- end
304
- end
326
+ def self.method_added(s)
327
+ if s == :to_str
328
+ puts "Warning: you should not override method 'to_str'"
329
+ else
330
+ super
331
+ end
332
+ end
333
+
334
+ private
335
+
336
+ def node_content_to_str(content, options)
337
+ if options[:tty_color]
338
+ "#{ANSI.red { content }}\n"
339
+ else
340
+ "#{content}\n"
341
+ end
342
+ end
343
+
344
+ def leaf_content_to_str(content, options)
345
+ if options[:tty_color]
346
+ "#{ANSI.green { content }}\n"
347
+ else
348
+ "#{content}\n"
349
+ end
350
+ end
351
+
352
+
353
+ end # end class
354
+ end # end module TreeRb
@@ -1,4 +1,4 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  module TreeRb
3
- VERSION="0.3.2"
3
+ VERSION="0.3.3"
4
4
  end
@@ -1,11 +1,51 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  module TreeRb
3
3
 
4
+ #
5
+ # contains informataion related to directory (TreeNode)
6
+ #
7
+ class ContentDir
8
+ def initialize( basename, options )
9
+ @basename = basename
10
+ @options = options
11
+ end
12
+ def to_str
13
+ @basename
14
+ end
15
+ end
16
+
17
+ #
18
+ # contains information related to file (LeafNode)
19
+ #
20
+ class ContentFile
21
+ def initialize( pathname, options )
22
+ stat = File.lstat(pathname)
23
+ # stat.symlink?
24
+
25
+ if options[:show_size]
26
+ str = "#{File.basename(pathname)} #{stat.size}"
27
+ elsif options[:show_size_human]
28
+ str = "#{File.basename(pathname)} #{stat.size.to_human}"
29
+ else
30
+ str = "#{File.basename(pathname)}"
31
+ end
32
+
33
+ if options[:show_md5]
34
+ str << " #{MD5.file( pathname ).hexdigest}"
35
+ end
36
+ @str = str
37
+
38
+ end
39
+ def to_str
40
+ @str
41
+ end
42
+ end
43
+
4
44
  #
5
45
  # Builds a TreeNode from a filesystem directory
6
46
  # It similar to CloneTreeNodeVisitor
7
47
  #
8
- class BuildDirTreeVisitor # < BasicTreeNodeVisitor
48
+ class BuildDirTreeVisitor
9
49
 
10
50
  attr_reader :root
11
51
 
@@ -19,23 +59,22 @@ module TreeRb
19
59
  # @see AbsNode#nr_leaves
20
60
  #
21
61
  attr_reader :nr_files
22
-
23
- attr_accessor :show_size
24
-
25
- def initialize
26
- super
62
+
63
+ def initialize(options = {})
27
64
  @root = nil
28
65
  @stack = []
29
66
  @nr_directories = 0
30
67
  @nr_files = 0
68
+ @options = options
31
69
  end
32
70
 
33
71
  def enter_node( pathname )
72
+ content = ContentDir.new(File.basename( pathname ), @options)
34
73
  if @stack.empty?
35
- tree_node = TreeNode.new( File.basename( pathname ) )
74
+ tree_node = TreeNode.new( content )
36
75
  @root = tree_node
37
76
  else
38
- tree_node = TreeNode.new( File.basename( pathname ), @stack.last )
77
+ tree_node = TreeNode.new( content, @stack.last )
39
78
  end
40
79
  @nr_directories += 1
41
80
  @stack.push( tree_node )
@@ -49,16 +88,10 @@ module TreeRb
49
88
  end
50
89
 
51
90
  def visit_leaf( pathname )
52
- @nr_files += 1
91
+ content = ContentFile.new(pathname, @options)
53
92
  # connect the leaf_node created to the last tree_node on the stack
54
- stat = File.lstat(pathname)
55
- # stat.symlink?
56
- if show_size
57
- str = "#{File.basename(pathname)} #{stat.size}"
58
- else
59
- str = "#{File.basename(pathname)}"
60
- end
61
- LeafNode.new( str, @stack.last )
93
+ @nr_files += 1
94
+ LeafNode.new( content, @stack.last )
62
95
  end
63
96
 
64
97
  end
data/lib/tree_rb_cli.rb CHANGED
@@ -1,18 +1,22 @@
1
1
  # -*- coding: utf-8 -*-
2
+
2
3
  #
3
- # cli
4
+ # stdlib
4
5
  #
5
-
6
6
  require 'optparse'
7
- require 'treevisitor'
7
+
8
+ #
9
+ # gem
10
+ #
8
11
 
9
12
  begin
10
- require 'Win32/Console/ANSI' if RUBY_PLATFORM =~ /win32/
13
+ require 'Win32/Console/ANSI'
11
14
  rescue LoadError
12
15
  puts 'You must gem install win32console to use color on Windows'
13
16
  end
14
17
 
15
18
  #
16
- # gem
19
+ # tree_rb cli
17
20
  #
21
+ require 'tree_rb'
18
22
  require "tree_rb/cli/cli_tree"
data/lib/tree_visitor.rb CHANGED
@@ -1,2 +1,3 @@
1
1
  # -*- coding: utf-8 -*-
2
- require 'treevisitor'
2
+ warn "use require 'tree_rb' instead of require 'treevisitor'"
3
+ require 'treevisitor'
data/lib/treevisitor.rb CHANGED
@@ -1,2 +1,3 @@
1
1
  # -*- coding: utf-8 -*-
2
+ warn "use require 'tree_rb' instead of require 'treevisitor'"
2
3
  require 'tree_rb'
data/spec/spec_helper.rb CHANGED
@@ -5,8 +5,8 @@
5
5
  require "stringio"
6
6
 
7
7
  $:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
8
- require 'treevisitor'
9
- require 'treevisitor_cli'
8
+ require 'tree_rb'
9
+ require 'tree_rb_cli'
10
10
  include TreeRb
11
11
 
12
12
  FIXTURES = File.expand_path( File.join( File.dirname(__FILE__), "fixtures" ) )
@@ -5,7 +5,7 @@ describe CliTree do
5
5
 
6
6
  it "help message" do
7
7
  out = with_output_captured do
8
- args = %w{-h}
8
+ args = %w{--help}
9
9
  CliTree.new.parse_args(args)
10
10
  end
11
11
  out[:stdout].should match /Usage:/
@@ -7,26 +7,22 @@ describe "Tree Node Dsl Derived Class with n-arg constructor" do
7
7
  attr_reader :description
8
8
 
9
9
  def initialize(name, description, parent)
10
- super(name, parent)
11
- @description = description
10
+ content = "a: #{description}"
11
+ super(content, parent)
12
+ @description = description
12
13
  end
13
14
 
14
- def to_s
15
- "a: #{description}"
16
- end
17
15
  end
18
16
 
19
17
  class ArgsLeafNode < LeafNode
20
18
  attr_reader :description
21
19
 
22
20
  def initialize(name, description, parent)
23
- super(name, parent)
24
- @description = description
21
+ content = "a: #{description}"
22
+ super(content, parent)
23
+ @description = description
25
24
  end
26
25
 
27
- def to_s
28
- "a: #{description}"
29
- end
30
26
  end
31
27
 
32
28
  it "test_derivated_args" do
@@ -4,14 +4,14 @@ require File.join(File.dirname(__FILE__), "..", "spec_helper")
4
4
  describe "Tree Node Dsl Derived Class with no-arg constructor " do
5
5
 
6
6
  class DTreeNode < TreeNode
7
- def to_s
8
- "dt: #{content}"
7
+ def content
8
+ "dt: #{super}"
9
9
  end
10
10
  end
11
11
 
12
12
  class DLeafNode < LeafNode
13
- def to_s
14
- "dl: #{content}"
13
+ def content
14
+ "dl: #{super}"
15
15
  end
16
16
  end
17
17
 
@@ -26,7 +26,7 @@ describe "Tree Node Dsl Derived Class with no-arg constructor " do
26
26
  end
27
27
  end
28
28
 
29
- # puts tree.to_str
29
+ puts tree.to_str
30
30
  out =<<EOS
31
31
  dt: root
32
32
  |-- dl: l1
data/tree.rb.gemspec CHANGED
@@ -26,10 +26,18 @@ An example of DSL to build tree:
26
26
  </pre>
27
27
  EOF
28
28
 
29
- gem.authors = ["Tokiro"]
29
+ gem.authors = %w{ Tokiro }
30
30
  gem.email = "tokiro.oyama@gmail.com"
31
31
  gem.homepage = "http://github.com/tokiro/tree.rb"
32
- gem.require_paths = ["lib"]
32
+
33
+ gem.post_install_message = %q{
34
+
35
+ Thank you to have installed tree.rb, any feedback is appreciated.
36
+
37
+ }
38
+
39
+
40
+ gem.require_paths = %w{ lib }
33
41
 
34
42
  #
35
43
  # dependencies
@@ -38,6 +46,10 @@ An example of DSL to build tree:
38
46
  gem.add_runtime_dependency(%q<json>, [">= 0"])
39
47
  gem.add_runtime_dependency(%q<ansi>, [">= 0"])
40
48
 
49
+ # win32 depends on win32console.gem but this must be installed from ext/mkrf_conf.rb
50
+ # gem.add_runtime_dependency(%q<win32console>, [">= 0"])
51
+ #
52
+
41
53
  gem.add_development_dependency(%q<rake>, [">= 0"])
42
54
  gem.add_development_dependency(%q<yard>, [">= 0"])
43
55
  gem.add_development_dependency(%q<bundler>, [">= 0"])
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tree.rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.3.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-08-16 00:00:00.000000000 Z
12
+ date: 2012-08-18 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: json
@@ -124,63 +124,66 @@ files:
124
124
  - Rakefile
125
125
  - tree.rb.gemspec
126
126
  - .gemtest
127
- - lib/treevisitor.rb
127
+ - lib/treevisitor_cli.rb
128
128
  - lib/tree_visitor.rb
129
- - lib/tree_rb_cli.rb
129
+ - lib/tree_rb/cli/cli_tree.rb
130
130
  - lib/tree_rb/util/dir_processor.rb
131
- - lib/tree_rb/abs_node.rb
132
- - lib/tree_rb/version.rb
133
131
  - lib/tree_rb/directory_walker.rb
134
- - lib/tree_rb/tree_node.rb
135
- - lib/tree_rb/basic_tree_node_visitor.rb
136
- - lib/tree_rb/tree_node_visitor.rb
137
- - lib/tree_rb/cli/cli_tree.rb
138
- - lib/tree_rb/visitors/block_tree_node_visitor.rb
139
- - lib/tree_rb/visitors/flat_print_tree_node_visitors.rb
140
- - lib/tree_rb/visitors/clone_tree_node_visitor.rb
132
+ - lib/tree_rb/visitors/print_dir_tree_visitor.rb
141
133
  - lib/tree_rb/visitors/build_dir_tree_visitor.rb
142
- - lib/tree_rb/visitors/directory_to_hash_visitor.rb
143
134
  - lib/tree_rb/visitors/depth_tree_node_visitor.rb
144
- - lib/tree_rb/visitors/callback_tree_node_visitor2.rb
145
135
  - lib/tree_rb/visitors/print_tree_node_visitor.rb
146
- - lib/tree_rb/visitors/print_dir_tree_visitor.rb
136
+ - lib/tree_rb/visitors/callback_tree_node_visitor2.rb
137
+ - lib/tree_rb/visitors/directory_to_hash_visitor.rb
138
+ - lib/tree_rb/visitors/flat_print_tree_node_visitors.rb
139
+ - lib/tree_rb/visitors/block_tree_node_visitor.rb
140
+ - lib/tree_rb/visitors/clone_tree_node_visitor.rb
141
+ - lib/tree_rb/abs_node.rb
142
+ - lib/tree_rb/extension_numeric.rb
147
143
  - lib/tree_rb/leaf_node.rb
144
+ - lib/tree_rb/tree_node_visitor.rb
145
+ - lib/tree_rb/tree_node.rb
146
+ - lib/tree_rb/basic_tree_node_visitor.rb
147
+ - lib/tree_rb/version.rb
148
+ - lib/tree_rb/extension_md5.rb
149
+ - lib/treevisitor.rb
148
150
  - lib/tree_rb.rb
149
- - lib/treevisitor_cli.rb
151
+ - lib/tree_rb_cli.rb
150
152
  - tasks/rspec.rake
151
153
  - tasks/yard.rake
154
+ - examples/directory_walker/print_files.rb
152
155
  - examples/directory_walker/directory_without_subdirectory.rb
153
156
  - examples/directory_walker/find_files.rb
154
- - examples/directory_walker/print_files.rb
155
- - examples/protovis/treevisitor.js
157
+ - examples/protovis/treevisitor.png
156
158
  - examples/protovis/protovis-r3.2.js
157
159
  - examples/protovis/index.html
158
- - examples/protovis/treevisitor.png
160
+ - examples/protovis/treevisitor.js
159
161
  - examples/protovis/directory_to_json_visitor.rb
160
- - spec/tree_rb/tree_node_paths_spec.rb
161
- - spec/tree_rb/util/dir_processor_spec.rb
162
- - spec/tree_rb/tree_node_spec.rb
163
- - spec/tree_rb/directory_walker_spec.rb
164
- - spec/tree_rb/tree_dsl_spec.rb
165
- - spec/tree_rb/tree_dsl_with_derived_class1_spec.rb
162
+ - spec/spec_helper.rb
166
163
  - spec/tree_rb/cli/cli_tree_spec.rb
164
+ - spec/tree_rb/util/dir_processor_spec.rb
167
165
  - spec/tree_rb/visitors/depth_tree_node_visitor_spec.rb
168
- - spec/tree_rb/visitors/tree_node_visitors_spec.rb
169
- - spec/tree_rb/visitors/block_tree_node_visitor_spec.rb
170
166
  - spec/tree_rb/visitors/callback_tree_node_visitor2_spec.rb
167
+ - spec/tree_rb/visitors/block_tree_node_visitor_spec.rb
168
+ - spec/tree_rb/visitors/tree_node_visitors_spec.rb
171
169
  - spec/tree_rb/tree_dsl_with_derived_class_spec.rb
170
+ - spec/tree_rb/directory_walker_spec.rb
171
+ - spec/tree_rb/tree_dsl_spec.rb
172
+ - spec/tree_rb/tree_node_paths_spec.rb
173
+ - spec/tree_rb/tree_dsl_with_derived_class1_spec.rb
172
174
  - spec/tree_rb/tree_node_visitor_delegate_spec.rb
175
+ - spec/tree_rb/tree_node_spec.rb
173
176
  - spec/tree_rb/tree_node_visitor_dsl_spec.rb
174
- - spec/spec_helper.rb
175
- - spec/fixtures/test_dir_1/dir.2/file.2.1
176
- - spec/fixtures/test_dir_1/dir.1/file.1.1
177
177
  - spec/fixtures/test_dir_1/dir.1/dir.1.2/file.1.2.1
178
+ - spec/fixtures/test_dir_1/dir.1/file.1.1
179
+ - spec/fixtures/test_dir_1/dir.2/file.2.1
178
180
  - spec/fixtures/test_dir_2/[Dsube]/sub/.gitkeep
179
181
  - spec/fixtures/test_dir_1/.dir_with_dot/dummy.txt
180
182
  - bin/tree.rb
181
183
  homepage: http://github.com/tokiro/tree.rb
182
184
  licenses: []
183
- post_install_message:
185
+ post_install_message: ! "\n\n Thank you to have installed tree.rb, any feedback is
186
+ appreciated.\n\n"
184
187
  rdoc_options: []
185
188
  require_paths:
186
189
  - lib
@@ -190,18 +193,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
190
193
  - - ! '>='
191
194
  - !ruby/object:Gem::Version
192
195
  version: '0'
193
- segments:
194
- - 0
195
- hash: 3293516785273926334
196
196
  required_rubygems_version: !ruby/object:Gem::Requirement
197
197
  none: false
198
198
  requirements:
199
199
  - - ! '>='
200
200
  - !ruby/object:Gem::Version
201
201
  version: '0'
202
- segments:
203
- - 0
204
- hash: 3293516785273926334
205
202
  requirements: []
206
203
  rubyforge_project:
207
204
  rubygems_version: 1.8.24
@@ -210,24 +207,24 @@ specification_version: 3
210
207
  summary: tree.rb is a 'clone' of tree unix command. The gem implements a library to
211
208
  mange tree structures.
212
209
  test_files:
213
- - spec/tree_rb/tree_node_paths_spec.rb
214
- - spec/tree_rb/util/dir_processor_spec.rb
215
- - spec/tree_rb/tree_node_spec.rb
216
- - spec/tree_rb/directory_walker_spec.rb
217
- - spec/tree_rb/tree_dsl_spec.rb
218
- - spec/tree_rb/tree_dsl_with_derived_class1_spec.rb
210
+ - spec/spec_helper.rb
219
211
  - spec/tree_rb/cli/cli_tree_spec.rb
212
+ - spec/tree_rb/util/dir_processor_spec.rb
220
213
  - spec/tree_rb/visitors/depth_tree_node_visitor_spec.rb
221
- - spec/tree_rb/visitors/tree_node_visitors_spec.rb
222
- - spec/tree_rb/visitors/block_tree_node_visitor_spec.rb
223
214
  - spec/tree_rb/visitors/callback_tree_node_visitor2_spec.rb
215
+ - spec/tree_rb/visitors/block_tree_node_visitor_spec.rb
216
+ - spec/tree_rb/visitors/tree_node_visitors_spec.rb
224
217
  - spec/tree_rb/tree_dsl_with_derived_class_spec.rb
218
+ - spec/tree_rb/directory_walker_spec.rb
219
+ - spec/tree_rb/tree_dsl_spec.rb
220
+ - spec/tree_rb/tree_node_paths_spec.rb
221
+ - spec/tree_rb/tree_dsl_with_derived_class1_spec.rb
225
222
  - spec/tree_rb/tree_node_visitor_delegate_spec.rb
223
+ - spec/tree_rb/tree_node_spec.rb
226
224
  - spec/tree_rb/tree_node_visitor_dsl_spec.rb
227
- - spec/spec_helper.rb
228
- - spec/fixtures/test_dir_1/dir.2/file.2.1
229
- - spec/fixtures/test_dir_1/dir.1/file.1.1
230
225
  - spec/fixtures/test_dir_1/dir.1/dir.1.2/file.1.2.1
226
+ - spec/fixtures/test_dir_1/dir.1/file.1.1
227
+ - spec/fixtures/test_dir_1/dir.2/file.2.1
231
228
  - spec/fixtures/test_dir_2/[Dsube]/sub/.gitkeep
232
229
  - spec/fixtures/test_dir_1/.dir_with_dot/dummy.txt
233
230
  has_rdoc: