autoloaded 2.1.1 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +4 -8
  3. data/.rspec +1 -1
  4. data/.travis.yml +15 -0
  5. data/Gemfile +12 -9
  6. data/Gemfile_ci_mri_19 +7 -0
  7. data/Guardfile +21 -22
  8. data/History.md +10 -4
  9. data/README.md +47 -30
  10. data/Rakefile +4 -0
  11. data/autoloaded.gemspec +37 -36
  12. data/bin/console +10 -0
  13. data/bin/setup +8 -0
  14. data/lib/autoloaded/autoloader.rb +6 -0
  15. data/lib/autoloaded/deprecation.rb +0 -2
  16. data/lib/autoloaded/inflection.rb +0 -2
  17. data/lib/autoloaded/load_pathed_directory.rb +1 -3
  18. data/lib/autoloaded/specification.rb +2 -0
  19. data/lib/autoloaded/specifications.rb +0 -2
  20. data/lib/autoloaded/version.rb +1 -1
  21. data/lib/autoloaded/warning.rb +0 -2
  22. data/lib/tasks/lib_each.rake +15 -3
  23. data/lib/tasks/spec.rake +3 -6
  24. metadata +24 -74
  25. data/spec/autoloaded/autoloader_spec.rb +0 -469
  26. data/spec/autoloaded/inflection_spec.rb +0 -30
  27. data/spec/autoloaded/load_pathed_directory_spec.rb +0 -120
  28. data/spec/autoloaded/specification_spec.rb +0 -98
  29. data/spec/autoloaded/specifications_spec.rb +0 -191
  30. data/spec/autoloaded/version_spec.rb +0 -3
  31. data/spec/autoloaded/warning_spec.rb +0 -115
  32. data/spec/autoloaded_macro_sharedspec.rb +0 -24
  33. data/spec/autoloaded_spec.rb +0 -173
  34. data/spec/fixtures/autoloaded_with_conventional_filename.rb +0 -12
  35. data/spec/fixtures/autoloaded_with_conventional_filename/N-est-ed.rb +0 -1
  36. data/spec/fixtures/autoloaded_with_conventional_filename/nest_ed.rb +0 -1
  37. data/spec/fixtures/autoloaded_with_conventional_filename/nested.rb +0 -16
  38. data/spec/fixtures/autoloaded_with_conventional_filename/nested/doubly_nested.rb +0 -9
  39. data/spec/fixtures/autoloaded_with_conventional_filename/old_school_autoload.rb +0 -5
  40. data/spec/fixtures/autoloaded_with_unconventional_filename.rb +0 -12
  41. data/spec/fixtures/autoloaded_with_unconventional_filename/N-est-ed.rb +0 -7
  42. data/spec/fixtures/autoloaded_with_unconventional_filename/nest_ed.rb +0 -1
  43. data/spec/fixtures/autoloaded_with_unconventional_filename/old_school_autoload.rb +0 -5
  44. data/spec/fixtures/filenames/AFilename.rb +0 -0
  45. data/spec/fixtures/filenames/a-file-name.rb +0 -0
  46. data/spec/fixtures/filenames/a-filename.rb +0 -0
  47. data/spec/fixtures/filenames/a_file_name.rb +0 -0
  48. data/spec/fixtures/filenames/a_filename.rb +0 -0
  49. data/spec/fixtures/filenames/afile-name.rb +0 -0
  50. data/spec/fixtures/filenames/afile_name.rb +0 -0
  51. data/spec/fixtures/not_autoloaded.rb +0 -5
  52. data/spec/fixtures/not_autoloaded/nested.rb +0 -1
  53. data/spec/fixtures/not_autoloaded/old_school_autoload.rb +0 -5
  54. data/spec/matchers.rb +0 -85
  55. data/spec/spec_helper.rb +0 -91
  56. data/spec/support/util.rb +0 -42
  57. data/spec/support/without_side_effects.rb +0 -37
@@ -1,42 +0,0 @@
1
- module Util
2
-
3
- class << self
4
-
5
- def constantize(name)
6
- return nil unless name
7
-
8
- begin
9
- eval name.to_s
10
- rescue NameError
11
- nil
12
- end
13
- end
14
-
15
- def namespace_and_unqualified_constant_name(constant_name, options={})
16
- namespace_name, unqualified_constant_name = split_namespace_and_constant(constant_name)
17
- if namespace_name && (namespace = constantize(namespace_name)).nil?
18
- if options[:raise_if_namespace_invalid]
19
- raise "namespace of #{constant_name} is not defined"
20
- end
21
- end
22
- [namespace, unqualified_constant_name]
23
- end
24
-
25
- def namespace_delimiter
26
- '::'
27
- end
28
-
29
- private
30
-
31
- def split_namespace_and_constant(constant_name)
32
- if (last_delimiter_index = constant_name.to_s.rindex(namespace_delimiter))
33
- return [constant_name[0...last_delimiter_index],
34
- constant_name[(last_delimiter_index + namespace_delimiter.length)..-1]]
35
- end
36
-
37
- return [nil, constant_name]
38
- end
39
-
40
- end
41
-
42
- end
@@ -1,37 +0,0 @@
1
- def without_side_effects
2
- return nil unless block_given?
3
-
4
- out_reader, out_writer = IO.pipe.collect { |io| io.tap(&:binmode) }
5
- err_reader, err_writer = IO.pipe.collect { |io| io.tap(&:binmode) }
6
-
7
- pid = fork do
8
- out_reader.close
9
- err_reader.close
10
-
11
- begin
12
- out_writer.write Marshal.dump(yield)
13
- rescue Exception => e
14
- clean_backtrace = e.backtrace.reject do |frame|
15
- frame.include? __FILE__
16
- end
17
- e.set_backtrace clean_backtrace
18
- err_writer.write Marshal.dump(e)
19
- raise e
20
- end
21
-
22
- # The codeclimate-test-reporter RubyGem uses Kernel#at_exit to hook the end
23
- # of test/spec runs for sending coverage statistics to their web service. We
24
- # need to skip that hook in this process fork because this is not the end of
25
- # a test/spec run, only of a process fork.
26
- exit!(true) if ENV['CODECLIMATE_REPO_TOKEN']
27
- end
28
-
29
- Process.wait pid
30
-
31
- out_writer.close
32
- err_writer.close
33
-
34
- return Marshal.load(out_reader.read) if $?.success?
35
-
36
- raise Marshal.load(err_reader.read)
37
- end