2019-04-29 20:27:42 -04:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2013-06-27 17:23:06 -04:00
|
|
|
RSpec::Matchers.define :be_within_one_second_of do |expected_time|
|
|
|
|
match do |actual_time|
|
2021-02-17 04:52:49 -05:00
|
|
|
(actual_time - expected_time).abs < 1
|
2013-06-27 17:23:06 -04:00
|
|
|
end
|
2015-04-25 11:47:20 -04:00
|
|
|
failure_message do |actual_time|
|
2014-08-14 14:20:52 -04:00
|
|
|
"#{actual_time} is not within 1 second of #{expected_time}"
|
2013-06-27 17:23:06 -04:00
|
|
|
end
|
2015-01-05 11:04:23 -05:00
|
|
|
end
|
2019-03-28 02:28:01 -04:00
|
|
|
|
2021-02-17 04:52:49 -05:00
|
|
|
RSpec::Matchers.define :be_within_one_minute_of do |expected_time|
|
|
|
|
match do |actual_time|
|
|
|
|
(actual_time - expected_time).abs < 60
|
|
|
|
end
|
|
|
|
failure_message do |actual_time|
|
|
|
|
"#{actual_time} is not within 1 minute of #{expected_time}"
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2019-03-28 02:28:01 -04:00
|
|
|
RSpec::Matchers.define :eq_time do |expected_time|
|
|
|
|
match do |actual_time|
|
|
|
|
(actual_time - expected_time).abs < 0.001
|
|
|
|
end
|
|
|
|
failure_message do |actual_time|
|
|
|
|
"#{actual_time} is not within 1 millisecond of #{expected_time}"
|
|
|
|
end
|
2020-03-25 23:31:39 -04:00
|
|
|
failure_message_when_negated do |actual_time|
|
|
|
|
"#{actual_time} is within 1 millisecond of #{expected_time}"
|
|
|
|
end
|
2019-03-28 02:28:01 -04:00
|
|
|
end
|