Попробуйте использовать Kernel # load с wrap
, установленным в true:
load (имя файла, wrap = false) → true
Загружает и выполняетпрограмма Ruby в файле с именем файла.Если имя файла не преобразуется в абсолютный путь, файл ищется в каталогах библиотеки, перечисленных в $ :.Если необязательный параметр wrap имеет значение true, загруженный сценарий будет выполняться в анонимном модуле, защищая глобальное пространство имен вызывающей программы.Ни при каких обстоятельствах любые локальные переменные в загруженном файле не будут передаваться в среду загрузки.
каждый раз, когда вы хотите выполнить тестирование компоновщика, load
отправьте его в новый анонимный модуль.тестирует класс связки в этом модуле, а затем переходит к следующему тесту.
Если ваш код ссылается на константу Bundler
, вам придется установить и сбросить эту константу.
Я сам не пробовал, но не понимаю, почему это не сработает.