spec/lib/result_iterator_spec.rb in flexirest-1.6.0 vs spec/lib/result_iterator_spec.rb in flexirest-1.6.1
- old
+ new
@@ -107,10 +107,33 @@
result << "z"
result.delete_if {|i| i == "z" }
expect(result.items).to eq(["a"])
end
+ it "can filter results by simple matching criteria" do
+ class Something < Flexirest::Base
+ end
+ results = Flexirest::ResultIterator.new
+ results << Something.new(type: "foo")
+ results << Something.new(type: "foo")
+ results << Something.new(type: "bar")
+
+ expect(results.where(type: "foo").count).to eq(2)
+ end
+
+ it "can filter results using regular expression matching criteria" do
+ class Something < Flexirest::Base
+ end
+
+ results = Flexirest::ResultIterator.new
+ results << Something.new(type: "fooo")
+ results << Something.new(type: "foo")
+ results << Something.new(type: "fo")
+ results << Something.new(type: "bar")
+
+ expect(results.where(type: /foo+/).count).to eq(2)
+ end
it "can parallelise calls to each item" do
result = Flexirest::ResultIterator.new
result << 3
result << 2