RSpec extensions collection

This is a collection of various RSpec extensions I would like to use for multiple projects. 
The primary purpose is for me to use them anywhere so it's not necessarily made for generic use.

Install

Put the following in Gemfile:
  gem "rspec_extensions_collection"
Then execute:
  bundle install

Set up

Note: 
  This gem is using FactoryGirl as Factory. So in the project using this gem, FactoryGirl must be set up. 
  So in Gemfile, either of the followings should be put:
    For non Ruby on Rails project:
      gem "factory_girl", ">=2.0.0.beta1"
    For Ruby on Rails project:
      gem "factory_girl_rails", ">=1.1.beta1"
  Then under spec directory, create a file factories.rb. See https://github.com/thoughtbot/factory_girl more detail.

1. Helpers

   Include a helper you want to use in Spec.
   Or include a helper in spec_helper.rb. e.g.
     config.include RSpecExtensionsCollection::Matchers::MongoidModelHelpers

2. Matchers

   Put the following in spec_helper.rb:
     config.include RSpecExtensionsCollection::Matchers

Usage

1. Helpers

2. Matchers

 2-1. SearchMatcher

   search_by(*args)

     args: List of field name symbols. 
           Last argument can be Hash of options. 
             :locale - Specifies the locale on which the filtering the search result is based on. "en" or "fr".

   The method to test: search(keyword)

   Example: BlogPost.should search_by(:title, :content, :locale => I18n.locale.to_s)

 2-2. SearchEmbeddedMatcher - For Mongoid embedded documents.

   search_embedded_by(association_name, *args)

     association_name: Name of the embedded document specified in the parent document.
     args:             List of field name symbols. 
                       Last argument can be Hash of options. 
                         :locale - Specifies the locale on which the filtering the search result is based on. "en" or "fr".

   The method to test: search_embedded_by(keyword)

   Example: BlogPost.should search_embedded_by(:comments, :content, :locale => I18n.locale.to_s)