code_lister 0.0.8 → 0.0.9

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: 7730af28692faa190358541a214fddd204ee3b02
4
- data.tar.gz: 11cdf45d4c2e7cbdef17fa58615e87c35d65530b
3
+ metadata.gz: 936444628fc21d7dd4d8b9e4210282c5cf8af848
4
+ data.tar.gz: 46675cb934ccf424498be589b995405be7a4b5c2
5
5
  SHA512:
6
- metadata.gz: ee0b6456754105423da9c3d3be83b2dfb4123404c718842c532ff9a243fbd82cf5930910fd0539864c30c4c35ee962c584ffe04c0d0340ad86725d870e1f9c07
7
- data.tar.gz: 712d3aaf85c96bea23d3656105e0e9f9839a08e4042411915a0b2ab7ab49dcb36981b4a8cebfa4e22c251824dbd8ba7b32c6a98de50eac9a1023070f3d98eb02
6
+ metadata.gz: c39417058af18792eb70cfd8084343a6bd7ae31697dad866d7fa7f14226f397f6a1e9dd06c9bd17970d35d421a8ca42c46a7e499858f04137f3e97b35912f8ee
7
+ data.tar.gz: 65da264d9b5a06848190890df95d9bb2925057e28aac3427d96bbcbef6651c84cbfe318d70047b4ca30bfbe9a8b68b3d0cfc0642631ecb7b2cc6a6cb61216d23
data/.rubocop.yml ADDED
@@ -0,0 +1,10 @@
1
+ # This is the configuration used to check the rubocop source code.
2
+ AllCops:
3
+ Include:
4
+ - '**/Rakefile'
5
+ - '**/Gemfile'
6
+ - lib/**/*
7
+ - bin/*
8
+ Exclude:
9
+ - .rubocop.yml
10
+ inherit_from: rubocop-todo.yml
data/CHANGELOGS.md ADDED
@@ -0,0 +1,40 @@
1
+ ### Changelogs
2
+
3
+ #### 0.0.9
4
+
5
+ - Consistencely replace the `base_dir` with `.` in the result:w
6
+ - Move changelogs section from README.md to CHANGELOGS.md
7
+ - Minor code refactoring
8
+ - Fix style with rubocop
9
+ - Add rubocop gem and simple rules
10
+
11
+ #### 0.0.8
12
+
13
+ - Update dependencies
14
+
15
+ #### 0.0.7
16
+
17
+ - Make use of the 'agile_utils' gem for better code re-use
18
+
19
+ #### 0.0.6
20
+
21
+ - Add `--non-exts` option that make it possible to include files without extension.
22
+
23
+ #### 0.0.5
24
+
25
+ - Refactoring the CLI options to make it easy for re-use in other library.
26
+
27
+ #### 0.0.4
28
+
29
+ - Add `ignore-case` option
30
+ - Use `-n' for `--include-words` and use `-i` for `--ignore-case`.
31
+ - Make the `--recursive` the default option
32
+ - Make the `--ignore-case` the default option
33
+
34
+ #### 0.0.3
35
+
36
+ - Update README.md to include better sample usage, and misc cleanup.
37
+
38
+ #### 0.0.2
39
+
40
+ - initial release
File without changes
data/README.md CHANGED
@@ -66,30 +66,32 @@ Example Usage:
66
66
  #
67
67
  # ./bin/code_lister find -b spec/fixtures/ -e rb java
68
68
 
69
- spec/fixtures/demo1.xxx.rb
70
- spec/fixtures/demo1.yyy.rb
71
- spec/fixtures/demo2.xxx.rb
72
- spec/fixtures/demo2.yyy.rb
73
- spec/fixtures/java/demo3.xxx.java
74
- spec/fixtures/java/demo3.yyy.java
75
- spec/fixtures/java/demo4.xxx.java
76
- spec/fixtures/java/demo4.yyy.java
69
+ ```
70
+ ./demo1.xxx.rb
71
+ ./demo1.yyy.rb
72
+ ./demo2.xxx.rb
73
+ ./demo2.yyy.rb
74
+ ./java/demo3.xxx.java
75
+ ./java/demo3.yyy.java
76
+ ./java/demo4.xxx.java
77
+ ./java/demo4.yyy.java
77
78
  ```
78
79
 
79
80
  - Find all java java and ruby files but include only the files that contain the word `xxx`
80
81
 
81
82
  ```ruby
82
83
  # ./bin/code_lister find -b spec/fixtures/ -e rb java -n xxx
83
- spec/fixtures/demo1.xxx.rb
84
- spec/fixtures/demo2.xxx.rb
85
- spec/fixtures/java/demo3.xxx.java
86
- spec/fixtures/java/demo4.xxx.java
84
+
85
+ ./demo1.xxx.rb
86
+ ./demo2.xxx.rb
87
+ ./java/demo3.xxx.java
88
+ ./java/demo4.xxx.java
87
89
  ```
88
90
  - Same as previous step, but filter out result that contain the word `demo3` or `demo4`
89
91
  ```ruby
90
92
  # ./bin/code_lister find -b spec/fixtures/ -e rb java -n xxx -x demo3 demo4
91
- spec/fixtures/demo1.xxx.rb
92
- spec/fixtures/demo2.xxx.rb
93
+ ./demo1.xxx.rb
94
+ ./demo2.xxx.rb
93
95
  ```
94
96
  #### Using as ruby library
95
97
 
@@ -138,39 +140,6 @@ puts list1
138
140
  list2 = CodeLister.filter(list1, inc_words: %w(final complete), exc_words: %w(demo test))
139
141
  ```
140
142
 
141
- ### Changelogs
142
-
143
- #### 0.0.8
144
-
145
- - Update dependencies
146
-
147
- #### 0.0.7
148
-
149
- - Make use of the 'agile_utils' gem for better code re-use
150
-
151
- #### 0.0.6
152
-
153
- - Add `--non-exts` option that make it possible to include files without extension.
154
-
155
- #### 0.0.5
156
-
157
- - Refactoring the CLI options to make it easy for re-use in other library.
158
-
159
- #### 0.0.4
160
-
161
- - Add `ignore-case` option
162
- - Use `-n' for `--include-words` and use `-i` for `--ignore-case`.
163
- - Make the `--recursive` the default option
164
- - Make the `--ignore-case` the default option
165
-
166
- #### 0.0.3
167
-
168
- - Update README.md to include better sample usage, and misc cleanup.
169
-
170
- #### 0.0.2
171
-
172
- - initial release
173
-
174
143
  ## Contributing
175
144
 
176
145
  1. Fork it ( http://github.com/<my-github-username>/code_lister/fork )
data/Rakefile CHANGED
@@ -1,10 +1,10 @@
1
- require "bundler/gem_tasks"
1
+ require 'bundler/gem_tasks'
2
2
  Bundler::GemHelper.install_tasks
3
3
 
4
4
  require 'rspec/core/rake_task'
5
5
  RSpec::Core::RakeTask.new(:spec)
6
6
 
7
- task :default => :spec
7
+ task default: :spec
8
8
 
9
9
  task :pry do
10
10
  require 'pry'
data/code_lister.gemspec CHANGED
@@ -12,7 +12,18 @@ Gem::Specification.new do |spec|
12
12
  spec.description = %q{List/filter files similar to 'find then grep' command in Linux/Unix based system}
13
13
  spec.homepage = 'https://github.com/agilecreativity/code_lister'
14
14
  spec.license = 'MIT'
15
- spec.files = `git ls-files -z`.split("\x0")
15
+ # spec.files = `git ls-files -z`.split("\x0")
16
+ # spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
17
+ # spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
+ spec.files = Dir.glob("{bin,lib}/**/*") + %w(Gemfile
19
+ Rakefile
20
+ code_lister.gemspec
21
+ README.md
22
+ CHANGELOGS.md
23
+ LICENSE
24
+ .rubocop.yml
25
+ .gitignore
26
+ rubocop-todo.yml)
16
27
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
17
28
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
29
  spec.require_paths = ['lib']
@@ -25,4 +36,5 @@ Gem::Specification.new do |spec|
25
36
  spec.add_development_dependency 'awesome_print', '~> 1.2'
26
37
  spec.add_development_dependency 'pry', '~> 0.9'
27
38
  spec.add_development_dependency 'fuubar', '~> 1.3'
39
+ spec.add_development_dependency 'rubocop', '~> 0.20.1'
28
40
  end
@@ -2,7 +2,7 @@ require 'thor'
2
2
  require 'agile_utils'
3
3
  module CodeLister
4
4
  class CLI < Thor
5
- desc "find", "List files by extensions, patterns, and simple criteria"
5
+ desc 'find', 'List files by extensions, patterns, and simple criteria'
6
6
  method_option *AgileUtils::Options::BASE_DIR
7
7
  method_option *AgileUtils::Options::EXTS
8
8
  method_option *AgileUtils::Options::NON_EXTS
@@ -22,7 +22,7 @@ module CodeLister
22
22
 
23
23
  # Note: we don't use help so that we can run :r !./bin/code_lister help find
24
24
  # to see the update help if we have to without commenting out
25
- desc "usage", "Display help screen"
25
+ desc 'usage', 'Display help screen'
26
26
  def usage
27
27
  puts <<-EOS
28
28
  Usage:
@@ -10,18 +10,22 @@ module CodeLister
10
10
  non_exts: []
11
11
  }.merge(args)
12
12
 
13
- base_dir = opts[:base_dir]
14
- raise CustomError, "The directory #{base_dir} is not valid or or not readable!" unless File.exists?(base_dir)
13
+ # always expand the path
14
+ base_dir = File.expand_path(opts[:base_dir])
15
+ # base_dir = opts[:base_dir]
16
+ fail CustomError, "The directory #{base_dir} is not valid or or not readable!" unless File.exist?(base_dir)
15
17
 
16
18
  wildcard = opts[:recursive] ? '**' : ''
17
19
  exts = opts[:exts]
18
20
  non_exts = opts[:non_exts]
19
21
 
20
- file_with_extension = Dir.glob(File.join(base_dir, wildcard, "*.{#{exts.join(",")}}"))
21
- file_with_no_extension = no_extension_files(base_dir, wildcard, non_exts)
22
-
22
+ files_with_extension = Dir.glob(File.join(base_dir, wildcard, "*.{#{exts.join(',')}}"))
23
+ files_without_extension = no_extension_files(base_dir, wildcard, non_exts)
24
+ # remove the 'base_dir' with .
25
+ files_with_extension.each { |f| f.gsub!(base_dir, '.') }
26
+ files_without_extension.each { |f| f.gsub!(base_dir, '.') }
23
27
  # combine the result
24
- (file_with_extension + file_with_no_extension).sort
28
+ (files_with_extension + files_without_extension).sort
25
29
  end
26
30
 
27
31
  # Filter out the list based on given list of words
@@ -56,14 +60,8 @@ module CodeLister
56
60
  ignore_case = args[:ignore_case]
57
61
 
58
62
  unless words.empty?
59
- file_list.select! do |f|
60
- words.any? do |w|
61
- if ignore_case
62
- /#{w}/i =~ File.basename(f)
63
- else
64
- /#{w}/ =~ File.basename(f)
65
- end
66
- end
63
+ file_list.select! do |file|
64
+ matched_any?(words, file, ignore_case)
67
65
  end
68
66
  end
69
67
 
@@ -73,20 +71,24 @@ module CodeLister
73
71
  def drop_any!(file_list, args = {})
74
72
  words = args[:exc_words]
75
73
  ignore_case = args[:ignore_case]
76
-
77
74
  unless words.empty?
78
- file_list.delete_if do |f|
79
- words.any? do |w|
80
- if ignore_case
81
- /#{w}/i =~ File.basename(f)
82
- else
83
- /#{w}/ =~ File.basename(f)
84
- end
85
- end
75
+ file_list.delete_if do |file|
76
+ matched_any?(words, file, ignore_case)
86
77
  end
87
78
  end
88
-
89
79
  file_list
90
80
  end
81
+
82
+ def matched_any?(words, file, ignore_case)
83
+ words.any? { |word| matched?(ignore_case, word, file) }
84
+ end
85
+
86
+ def matched?(ignore_case, word, file)
87
+ if ignore_case
88
+ /#{word}/i =~ File.basename(file)
89
+ else
90
+ /#{word}/ =~ File.basename(file)
91
+ end
92
+ end
91
93
  end
92
94
  end
@@ -1,3 +1,3 @@
1
1
  module CodeLister
2
- VERSION = '0.0.8'
2
+ VERSION = '0.0.9'
3
3
  end
data/rubocop-todo.yml ADDED
@@ -0,0 +1,67 @@
1
+ # This configuration was generated by `rubocop --auto-gen-config`
2
+ # on 2014-05-09 23:31:10 +1000 using RuboCop version 0.21.0.
3
+ # The point is for the user to remove these configuration records
4
+ # one by one as the offenses are removed from the code base.
5
+ # Note that changes in the inspected code, or installation of new
6
+ # versions of RuboCop, may require this file to be generated again.
7
+
8
+ # Offense count: 8
9
+ AmbiguousOperator:
10
+ Enabled: false
11
+
12
+ # Offense count: 1
13
+ # Cop supports --auto-correct.
14
+ Blocks:
15
+ Enabled: true
16
+
17
+ # Offense count: 1
18
+ # Cop supports --auto-correct.
19
+ DeprecatedClassMethods:
20
+ Enabled: true
21
+
22
+ # Offense count: 5
23
+ Documentation:
24
+ Enabled: false
25
+
26
+ # Offense count: 1
27
+ # Cop supports --auto-correct.
28
+ # Configuration parameters: EnforcedStyle, SupportedStyles.
29
+ HashSyntax:
30
+ Enabled: true
31
+
32
+ # Offense count: 1
33
+ # Cop supports --auto-correct.
34
+ LeadingCommentSpace:
35
+ Enabled: true
36
+
37
+ # Offense count: 22
38
+ LineLength:
39
+ Max: 124
40
+
41
+ # Offense count: 2
42
+ # Configuration parameters: CountComments.
43
+ MethodLength:
44
+ Max: 20
45
+
46
+ # Offense count: 1
47
+ # Cop supports --auto-correct.
48
+ # Configuration parameters: EnforcedStyle, SupportedStyles.
49
+ SignalException:
50
+ Enabled: true
51
+
52
+ # Offense count: 1
53
+ # Cop supports --auto-correct.
54
+ # Configuration parameters: EnforcedStyle, SupportedStyles.
55
+ SpaceBeforeBlockBraces:
56
+ Enabled: true
57
+
58
+ # Offense count: 1
59
+ # Cop supports --auto-correct.
60
+ # Configuration parameters: EnforcedStyle, SupportedStyles, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters.
61
+ SpaceInsideBlockBraces:
62
+ Enabled: true
63
+
64
+ # Offense count: 1
65
+ # Cop supports --auto-correct.
66
+ SpaceInsideBrackets:
67
+ Enabled: true
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: code_lister
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Burin Choomnuan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-29 00:00:00.000000000 Z
11
+ date: 2014-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -136,6 +136,20 @@ dependencies:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
138
  version: '1.3'
139
+ - !ruby/object:Gem::Dependency
140
+ name: rubocop
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: 0.20.1
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: 0.20.1
139
153
  description: List/filter files similar to 'find then grep' command in Linux/Unix based
140
154
  system
141
155
  email:
@@ -146,11 +160,10 @@ extensions: []
146
160
  extra_rdoc_files: []
147
161
  files:
148
162
  - ".gitignore"
149
- - ".rspec"
150
- - ".ruby-version"
163
+ - ".rubocop.yml"
164
+ - CHANGELOGS.md
151
165
  - Gemfile
152
- - Guardfile
153
- - LICENSE.txt
166
+ - LICENSE
154
167
  - README.md
155
168
  - Rakefile
156
169
  - bin/code_lister
@@ -161,19 +174,7 @@ files:
161
174
  - lib/code_lister/logger.rb
162
175
  - lib/code_lister/main.rb
163
176
  - lib/code_lister/version.rb
164
- - spec/code_lister/code_lister_spec.rb
165
- - spec/code_lister/main_spec.rb
166
- - spec/fixtures/demo1.xxx.rb
167
- - spec/fixtures/demo1.yyy.rb
168
- - spec/fixtures/demo2.xxx.rb
169
- - spec/fixtures/demo2.yyy.rb
170
- - spec/fixtures/java/demo3.xxx.java
171
- - spec/fixtures/java/demo3.yyy.java
172
- - spec/fixtures/java/demo4.xxx.java
173
- - spec/fixtures/java/demo4.yyy.java
174
- - spec/fixtures/noexts1_zzz
175
- - spec/fixtures/noexts2_zzz
176
- - spec/spec_helper.rb
177
+ - rubocop-todo.yml
177
178
  homepage: https://github.com/agilecreativity/code_lister
178
179
  licenses:
179
180
  - MIT
@@ -198,18 +199,5 @@ rubygems_version: 2.2.2
198
199
  signing_key:
199
200
  specification_version: 4
200
201
  summary: List/filter files like 'find then grep' command in Linux/Unix based system
201
- test_files:
202
- - spec/code_lister/code_lister_spec.rb
203
- - spec/code_lister/main_spec.rb
204
- - spec/fixtures/demo1.xxx.rb
205
- - spec/fixtures/demo1.yyy.rb
206
- - spec/fixtures/demo2.xxx.rb
207
- - spec/fixtures/demo2.yyy.rb
208
- - spec/fixtures/java/demo3.xxx.java
209
- - spec/fixtures/java/demo3.yyy.java
210
- - spec/fixtures/java/demo4.xxx.java
211
- - spec/fixtures/java/demo4.yyy.java
212
- - spec/fixtures/noexts1_zzz
213
- - spec/fixtures/noexts2_zzz
214
- - spec/spec_helper.rb
202
+ test_files: []
215
203
  has_rdoc:
data/.rspec DELETED
@@ -1,3 +0,0 @@
1
- --color
2
- --format progress
3
- #--format Fuubar
data/.ruby-version DELETED
@@ -1 +0,0 @@
1
- 2.1.1
data/Guardfile DELETED
@@ -1,8 +0,0 @@
1
- # A sample Guardfile
2
- # More info at https://github.com/guard/guard#readme
3
- guard :rspec do
4
- watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
5
- watch(%r{^spec/.+_spec\.rb$})
6
- watch(%r{^spec/support/(.+)\.rb$}) { "spec" }
7
- watch('spec/spec_helper.rb') { "spec" }
8
- end
@@ -1,55 +0,0 @@
1
- require_relative '../spec_helper'
2
- describe CodeLister do
3
- let(:file_list) {
4
- CodeLister.files(base_dir: 'spec/fixtures', exts: %w(xxx.rb), recursive: true)
5
- }
6
-
7
- context "#files" do
8
- it 'works with invalid input' do
9
- expect{ CodeLister.files('bad-args')}.to raise_error
10
- end
11
-
12
- it 'works with valid input' do
13
- expect(CodeLister.files(base_dir: 'spec/fixtures', exts: %w(xxx.rb))).to eq ['spec/fixtures/demo1.xxx.rb',
14
- 'spec/fixtures/demo2.xxx.rb']
15
- end
16
-
17
- it 'returns empty result if no match found' do
18
- expect(CodeLister.files(base_dir: 'spec/fixtures', exts: %w(invalid-extension))).to eq []
19
- end
20
- end
21
-
22
- context "#filter" do
23
- it "works with empty filter inputs" do
24
- expect(CodeLister.filter(file_list, inc_words: [], exc_words: [])).to eq file_list
25
- end
26
-
27
- it "works with unique match" do
28
- expect(CodeLister.filter(file_list, inc_words: %w(demo1))).to eq ["spec/fixtures/demo1.xxx.rb"]
29
- end
30
-
31
- it "works with multiples matches" do
32
- expect(CodeLister.filter(file_list, inc_words: %w(demo))).to eq ["spec/fixtures/demo1.xxx.rb",
33
- "spec/fixtures/demo2.xxx.rb"]
34
-
35
- expect(CodeLister.filter(file_list, inc_words: %w(xxx))).to eq ["spec/fixtures/demo1.xxx.rb",
36
- "spec/fixtures/demo2.xxx.rb"]
37
- end
38
-
39
- it "filters out the words that we don't want" do
40
- expect(CodeLister.filter(file_list, exc_words: %w(demo1))).to eq ["spec/fixtures/demo2.xxx.rb"]
41
- expect(CodeLister.filter(file_list, exc_words: %w(xxx))).to eq []
42
- end
43
-
44
- context 'with ignore_case' do
45
- it 'ignores case by default' do
46
- expect(CodeLister.filter(file_list, exc_words: %w(DeMo1))).to eq CodeLister.filter(file_list, exc_words: %w(demo1))
47
- expect(CodeLister.filter(file_list, exc_words: %w(DeMo1))).to eq ["spec/fixtures/demo2.xxx.rb"]
48
- end
49
- it 'does not ignore case if specified' do
50
- expect(CodeLister.filter(file_list, exc_words: %w(DeMo1), ignore_case: false)).to eq ["spec/fixtures/demo1.xxx.rb",
51
- "spec/fixtures/demo2.xxx.rb" ]
52
- end
53
- end
54
- end
55
- end
@@ -1,12 +0,0 @@
1
- require_relative '../spec_helper'
2
- describe CodeLister do
3
- context '#files' do
4
- it 'works with non_exts option' do
5
- list = CodeLister::Main.run base_dir: 'spec/fixtures/',
6
- recursive: true,
7
- non_exts: %w(noexts1_zzz noexts2_zzz)
8
- expect(list).to eq ['spec/fixtures/noexts1_zzz',
9
- 'spec/fixtures/noexts2_zzz']
10
- end
11
- end
12
- end
@@ -1 +0,0 @@
1
- # file: spec/fixtures/demo1.xxx.rb
@@ -1 +0,0 @@
1
- # file: spec/fixtures/demo1.yyy.rb
@@ -1 +0,0 @@
1
- # file: spec/fixtures/demo2.xxx.rb
@@ -1 +0,0 @@
1
- # file: spec/fixtures/demo2.yyy.rb
@@ -1 +0,0 @@
1
- // file: test/fixtures/java/demo3.xxx.java
@@ -1 +0,0 @@
1
- // file: test/fixtures/java/demo3.yyy.java
@@ -1 +0,0 @@
1
- // file: test/fixtures/java/demo4.xxx.java
@@ -1 +0,0 @@
1
- // file: test/fixtures/java/demo4.yyy.java
@@ -1 +0,0 @@
1
- # file: spec/fixtures/noexts1_zzz
@@ -1 +0,0 @@
1
- # file: spec/fixtures/noexts2_zzz
data/spec/spec_helper.rb DELETED
@@ -1,20 +0,0 @@
1
- # This file was generated by the `rspec --init` command. Conventionally, all
2
- # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
3
- # Require this file using `require "spec_helper"` to ensure that it is only
4
- # loaded once.
5
- #
6
- # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
7
- RSpec.configure do |config|
8
- config.treat_symbols_as_metadata_keys_with_true_values = true
9
- config.run_all_when_everything_filtered = true
10
- config.filter_run :focus
11
-
12
- # Run specs in random order to surface order dependencies. If you find an
13
- # order dependency and want to debug it, you can fix the order by providing
14
- # the seed, which is printed after each run.
15
- # --seed 1234
16
- config.order = 'random'
17
- end
18
-
19
- require_relative '../lib/code_lister'
20
- include CodeLister