From bb75d68fe2262199a16973c09a8b2749542c7590 Mon Sep 17 00:00:00 2001 From: Ryuta Kamizono Date: Sat, 12 Jan 2019 07:44:27 +0900 Subject: More exercise test cases for `not_between` And support endless ranges for `not_between` like as `between`. Follow up #34906. --- activerecord/lib/arel/predications.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'activerecord/lib/arel') diff --git a/activerecord/lib/arel/predications.rb b/activerecord/lib/arel/predications.rb index 0c03e93138..2a62c53aa3 100644 --- a/activerecord/lib/arel/predications.rb +++ b/activerecord/lib/arel/predications.rb @@ -82,14 +82,14 @@ Passing a range to `#in` is deprecated. Call `#between`, instead. def not_between(other) if infinity?(other.begin) - if infinity?(other.end) + if other.end.nil? || infinity?(other.end) self.in([]) elsif other.exclude_end? gteq(other.end) else gt(other.end) end - elsif infinity?(other.end) + elsif other.end.nil? || infinity?(other.end) lt(other.begin) else left = lt(other.begin) -- cgit v1.2.3