Имеется класс с парой переменных экземпляра и некоторыми методами.Некоторые переменные экземпляра доступны через attr_reader
и attr_accessor
.Таким образом, другие являются частными.
Некоторые из частных переменных экземпляра устанавливаются в одном из методов экземпляра и считываются / используются в другом методе.
Для тестирования я использую RSpec.Поскольку я все еще новичок в Ruby и хочу все сделать правильно, я определил, что мои тесты достаточно тонкие.Таким образом, у меня есть один describe
блок для каждого метода экземпляра, который сам разделен на подмножество context
s и it
s.Общие условия среды определяются с помощью before
.
Однако при тестировании одного из методов, который использует, но не устанавливает одну из закрытых переменных, мне нужно вызвать другой метод, который устанавливает эту переменную.,Для меня это выглядит довольно избыточно и не является модульным.
Есть ли способ принудительно установить частную переменную экземпляра для определенного значения.Аналогично « вырыванию » значения закрытой переменной экземпляра с Object::instance_eval(:var)
.