How to get TimeWithZone within rails3 unit/test
-
08-10-2019 - |
Question
I'm trying to test a rails, application, and in one particular case, I need to create a TimeWithZone object inside my testcase. So I write sth like this:
started_at = ActiveSupport::TimeWithZone(started_at, Time.zone)
only to get an error:
NoMethodError: undefined method `TimeWithZone' for ActiveSupport:Module
I tried requiring 'active_support', 'active_support/time', ''active_support/time_with_zone'. each of those statements evaluates to false when I run tests (it works fine in irb)
Any idea on what I'm doing wrong?
Solution
Try creating a new
object:
started_at = ActiveSupport::TimeWithZone.new(started_at, Time.zone)
However, you should never need to create instances of this class directly.
If you have Time.zone set up correctly already, you can simply use the at
method on it:
started_at_with_zone = Time.zone.at(started_at)
Take a look at the Rails API documentation for details.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow