require 'spec_helper'
class TestDocument
include Mongoid::Document
field :published, type: Boolean
scope :published, -> { where(published: true) }
end
describe Mongoid::Document do
describe "find_ordered" do
it "returns items sorted by id" do
item1 = TestDocument.create!
item2 = TestDocument.create!
TestDocument.find_ordered([item1.id, item2.id]).should eq [item1, item2]
TestDocument.find_ordered([item2.id, item1.id]).should eq [item2, item1]
end
it "returns items by criteria sorted by id" do
item1 = TestDocument.create!(published: true)
item2 = TestDocument.create!(published: false)
item3 = TestDocument.create!(published: true)
TestDocument.find_ordered([item1.id, item2.id, item3.id], TestDocument.published).should eq [item1, item3]
TestDocument.find_ordered([item3.id, item2.id, item1.id], TestDocument.published).should eq [item3, item1]
end
end
end