У меня есть класс модели, который кэширует данные в Redis. При первом вызове метода модели он вычисляет значение JSON/Hash и сохраняет его в Redis. При определенных обстоятельствах я «сбрасываю» эти данные, и они пересчитываются при следующем вызове.
Вот фрагмент кода, аналогичный тому, который я использую для хранения данных в Redis.:
def cache_data
self.data_values = data_to_cache
REDIS.set(redis_key,ActiveSupport::JSON.encode(self.data_values))
REDIS.get(redis_key)
end
def data_to_cache
// generate a hash of values to return
end
Как выполнить модульное тестирование этого кода? Я использую RSpec и Capybara. Я также использую Cucumber и Capabara для интеграционного тестирования, если это помогает.