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