| |   |
| 14 | 14 | end |
| 15 | 15 | end |
| 16 | 16 | |
| 17 | | InfinityString = Class.new(String) do |
| 17 | InfiniteString = Class.new(String) do |
| 18 | 18 | def infinite? |
| 19 | 19 | true |
| 20 | 20 | end |
| 21 | 21 | end.new.freeze |
| 22 | 22 | |
| 23 | | InfinityTime = Class.new(Time) do |
| 23 | InfiniteTime = Class.new(Time) do |
| 24 | 24 | def infinite? |
| 25 | 25 | true |
| 26 | 26 | end |
| 27 | 27 | end.new.freeze |
| 28 | 28 | |
| 29 | # Syntactic sugar: sweet aliases for daily use. |
| 29 | 30 | # For use like (SmallestString.."a") in View#find() |
| 30 | 31 | # |
| 31 | | LargestString = SmallestString = InfinityString |
| 32 | | LargestTime = SmallestTime = InfinityTime |
| 32 | LargestString = SmallestString = StringInfinity = InfiniteString |
| 33 | LargestTime = SmallestTime = TimeInfinity = InfiniteTime |
| toggle raw diff |
--- a/lib/strokedb/core_ext/infinity.rb
+++ b/lib/strokedb/core_ext/infinity.rb
@@ -14,19 +14,20 @@ class Numeric
end
end
-InfinityString = Class.new(String) do
+InfiniteString = Class.new(String) do
def infinite?
true
end
end.new.freeze
-InfinityTime = Class.new(Time) do
+InfiniteTime = Class.new(Time) do
def infinite?
true
end
end.new.freeze
+# Syntactic sugar: sweet aliases for daily use.
# For use like (SmallestString.."a") in View#find()
#
-LargestString = SmallestString = InfinityString
-LargestTime = SmallestTime = InfinityTime
+LargestString = SmallestString = StringInfinity = InfiniteString
+LargestTime = SmallestTime = TimeInfinity = InfiniteTime |
| |   |
| 18 | 18 | it "should return true for infinite 'values'" do |
| 19 | 19 | Infinity.should be_infinite |
| 20 | 20 | (-Infinity).should be_infinite |
| 21 | | (InfinityString).should be_infinite |
| 22 | | (InfinityTime).should be_infinite |
| 21 | (InfiniteString).should be_infinite |
| 22 | (InfiniteTime).should be_infinite |
| 23 | 23 | end |
| 24 | 24 | end |
| 25 | 25 | |
| 26 | | describe InfinityString do |
| 26 | describe InfiniteString do |
| 27 | 27 | it "should be used in Range" do |
| 28 | | (InfinityString.."a").should be_a_kind_of(Range) |
| 29 | | ("a"..InfinityString).should be_a_kind_of(Range) |
| 30 | | (InfinityString..InfinityString).should be_a_kind_of(Range) |
| 28 | (InfiniteString.."a").should be_a_kind_of(Range) |
| 29 | ("a"..InfiniteString).should be_a_kind_of(Range) |
| 30 | (InfiniteString..InfiniteString).should be_a_kind_of(Range) |
| 31 | 31 | end |
| 32 | 32 | end |
| 33 | 33 | |
| 34 | | describe InfinityTime do |
| 34 | describe InfiniteTime do |
| 35 | 35 | it "should be used in Range" do |
| 36 | | (InfinityTime..Time.now).should be_a_kind_of(Range) |
| 37 | | (Time.now..InfinityTime).should be_a_kind_of(Range) |
| 38 | | (InfinityTime..InfinityTime).should be_a_kind_of(Range) |
| 36 | (InfiniteTime..Time.now).should be_a_kind_of(Range) |
| 37 | (Time.now..InfiniteTime).should be_a_kind_of(Range) |
| 38 | (InfiniteTime..InfiniteTime).should be_a_kind_of(Range) |
| 39 | 39 | end |
| 40 | 40 | end |
| toggle raw diff |
--- a/spec/lib/strokedb/core_ext/infinity_spec.rb
+++ b/spec/lib/strokedb/core_ext/infinity_spec.rb
@@ -18,23 +18,23 @@ describe "Object#infinity?" do
it "should return true for infinite 'values'" do
Infinity.should be_infinite
(-Infinity).should be_infinite
- (InfinityString).should be_infinite
- (InfinityTime).should be_infinite
+ (InfiniteString).should be_infinite
+ (InfiniteTime).should be_infinite
end
end
-describe InfinityString do
+describe InfiniteString do
it "should be used in Range" do
- (InfinityString.."a").should be_a_kind_of(Range)
- ("a"..InfinityString).should be_a_kind_of(Range)
- (InfinityString..InfinityString).should be_a_kind_of(Range)
+ (InfiniteString.."a").should be_a_kind_of(Range)
+ ("a"..InfiniteString).should be_a_kind_of(Range)
+ (InfiniteString..InfiniteString).should be_a_kind_of(Range)
end
end
-describe InfinityTime do
+describe InfiniteTime do
it "should be used in Range" do
- (InfinityTime..Time.now).should be_a_kind_of(Range)
- (Time.now..InfinityTime).should be_a_kind_of(Range)
- (InfinityTime..InfinityTime).should be_a_kind_of(Range)
+ (InfiniteTime..Time.now).should be_a_kind_of(Range)
+ (Time.now..InfiniteTime).should be_a_kind_of(Range)
+ (InfiniteTime..InfiniteTime).should be_a_kind_of(Range)
end
end |