Rspec, который фактически тестирует метод с переменной экземпляра - PullRequest
0 голосов
/ 24 апреля 2019

У меня есть метод обслуживания как

class Service
  def maximum_match
    max = @hash.values.max
    Hash[@hash.select { |_k, v| v == max }]
  end
end

Мой тест похож на

context 'Finding tags count' do    
    it 'counts tags and returns maximum match' do      
      service = Service.new     
      expect(service.maximum_match).to eq some_result
    end
  end

Как я могу передать любые значения @hash для запуска моего теста?

Ошибка NoMethodError:undefined method 'values' for nil:NilClass

1 Ответ

2 голосов
/ 24 апреля 2019

ниндзя, вы можете использовать service.instance_variable_set(@hash, your_value) прямо над expect строкой

источник

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...