Sha256: c37e9d9b7741af1704ad021d95351b351e64d9e6fdd38a739a47477ee351393e

Contents?: true

Size: 1.04 KB

Versions: 3

Compression:

Stored size: 1.04 KB

Contents

require 'spec_helper'

describe Mongoid::Errors::MongoidError do

  let(:error) { described_class.new }
  let(:key) { :callbacks }
  let(:options) { {} }

  before do
    ["message", "summary", "resolution"].each do |name|
      ::I18n.should_receive(:translate).
        with("mongoid.errors.messages.#{key}.#{name}", { locale: :en }).
      and_return(name)
    end

    error.compose_message(key, options)
  end

  describe "#compose_message" do

    it "sets ivar problem" do
      error.instance_variable_get(:@problem).should be
    end

    it "sets ivar summary" do
      error.instance_variable_get(:@summary).should be
    end

    it "sets ivar resolution" do
      error.instance_variable_get(:@resolution).should be
    end
  end

  describe "#to_json" do

    it "has problem" do
      error.to_json.should include('"problem":"message"')
    end

    it "has summary" do
      error.to_json.should include('"summary":"summary"')
    end

    it "has resolution" do
      error.to_json.should include('"resolution":"resolution"')
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
mongoid-3.1.7 spec/mongoid/errors/mongoid_error_spec.rb
mongoid-3.1.6 spec/mongoid/errors/mongoid_error_spec.rb
mongoid-3.1.5 spec/mongoid/errors/mongoid_error_spec.rb