Sha256: 35a197019a7faf43f3442062940c5e4e7c16f06e21d08ae5838b926bd2cba447

Contents?: true

Size: 1.19 KB

Versions: 38

Compression:

Stored size: 1.19 KB

Contents

require 'spec_helper'

describe Metasploit::Model::Invalid do
  subject(:invalid) do
    described_class.new(model)
  end

  let(:model) do
    model_class.new
  end

  let(:model_class) do
    Class.new do
      include ActiveModel::Validations
    end
  end

  it { should be_a Metasploit::Model::Error }

  it 'should use ActiveModel::Errors#full_messages' do
    model.errors.should_receive(:full_messages).and_call_original

    described_class.new(model)
  end

  it 'should translate errors using metasploit.model.invalid' do
    I18n.should_receive(:translate).with(
        'metasploit.model.errors.messages.model_invalid',
        hash_including(
            :errors => anything
        )
    ).and_call_original

    described_class.new(model)
  end

  it 'should set translated errors as message' do
    message = "translated message"
    I18n.stub(:translate).with('metasploit.model.errors.messages.model_invalid', anything).and_return(message)
    instance = described_class.new(model)

    instance.message.should == message
  end

  context '#model' do
    subject(:error_model) do
      invalid.model
    end

    it 'should be the passed in model' do
      error_model.should == model
    end
  end
end

Version data entries

38 entries across 38 versions & 1 rubygems

Version Path
metasploit-model-1.0.0.pre.rails.pre.4.0 spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.30.0 spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.30.0-java spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.29.2 spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.29.2-java spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.29.0 spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.29.0-java spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.28.0 spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.28.0-java spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.28.0.pre.engine.pre.requires spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.27.4 spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.27.4-java spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.27.3 spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.27.3-java spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.27.2 spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.27.2-java spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.27.1 spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.27.1-java spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.27.0 spec/lib/metasploit/model/invalid_spec.rb
metasploit-model-0.27.0-java spec/lib/metasploit/model/invalid_spec.rb