-
Notifications
You must be signed in to change notification settings - Fork 106
Description
Background
require searches in $LOAD_PATH. require will perform unnecessary searches if the user's environment includes many entries in $LOAD_PATH.
In contrast, require_relative avoids this unnecessary searches and does not depend on $LOAD_PATH because it uses a relative path.
Solution
Replacing require with require_relative only for loading test-unit's own internal files.
This change does not affect require used to load external libraries or gems, which should continue to use require.
There are many occurrences, so updating them all at once might be too large for a single PR to review effectively.
Which approach would be preferable?
- Make multiple small PRs (e.g., per directory/module)
- Make one large PR with all changes
The files where changes are needed are listed below:
$ git grep --files-with-matches -P 'require.+test/unit' -- :^doc/
bin/test-unit
lib/test-unit.rb
lib/test/unit.rb
lib/test/unit/assertions.rb
lib/test/unit/auto-runner-loader.rb
lib/test/unit/autorunner.rb
lib/test/unit/collector/descendant.rb
lib/test/unit/collector/dir.rb
lib/test/unit/collector/load.rb
lib/test/unit/collector/objectspace.rb
lib/test/unit/collector/xml.rb
lib/test/unit/color-scheme.rb
lib/test/unit/data.rb
lib/test/unit/error.rb
lib/test/unit/notification.rb
lib/test/unit/omission.rb
lib/test/unit/pending.rb
lib/test/unit/runner/console.rb
lib/test/unit/runner/emacs.rb
lib/test/unit/runner/xml.rb
lib/test/unit/test-suite-creator.rb
lib/test/unit/testcase.rb
lib/test/unit/testresult.rb
lib/test/unit/testsuite.rb
lib/test/unit/ui/console/testrunner.rb
lib/test/unit/ui/emacs/testrunner.rb
lib/test/unit/ui/testrunner.rb
lib/test/unit/ui/testrunnermediator.rb
lib/test/unit/ui/xml/testrunner.rb
lib/test/unit/util/observable.rb
sample/test_adder.rb
sample/test_subtracter.rb
sample/test_user.rb
test-unit.gemspec
test/collector/test-descendant.rb
test/collector/test-load.rb
test/collector/test_dir.rb
test/collector/test_objectspace.rb
test/run.rb
test/test-assertions.rb
test/test-attribute-matcher.rb
test/test-emacs-runner.rb
test/test-error.rb
test/test-failure.rb
test/test-fault-location-detector.rb
test/test-notification.rb
test/test-omission.rb
test/test-pending.rb
test/test-priority.rb
test/test-test-case.rb
test/test-test-result.rb
test/test-test-suite-creator.rb
test/test-test-suite.rb
test/ui/test_testrunmediator.rb
test/util/test-method-owner-finder.rb
test/util/test-output.rb
test/util/test_backtracefilter.rb
test/util/test_observable.rb
test/util/test_procwrapper.rbMetadata
Metadata
Assignees
Labels
No labels