discourse/spec/support/time_matcher.rb

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

32 lines
893 B
Ruby
Raw Normal View History

# frozen_string_literal: true
RSpec::Matchers.define :be_within_one_second_of do |expected_time|
match do |actual_time|
(actual_time - expected_time).abs < 1
end
2015-04-25 23:47:20 +08:00
failure_message do |actual_time|
"#{actual_time} is not within 1 second of #{expected_time}"
end
2015-01-06 00:04:23 +08:00
end
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
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
failure_message_when_negated do |actual_time|
"#{actual_time} is within 1 millisecond of #{expected_time}"
end
end