Sha256: 9631117a16aa7374f1fb3c17f3980c8d15bc5e83b2bd0fa2293a2fbe5364e7d6

Contents?: true

Size: 999 Bytes

Versions: 1

Compression:

Stored size: 999 Bytes

Contents

require 'spec_helper'

describe CnpjValidator do
  before(:each) do
    @validator = CnpjValidator.new(attributes: 'cnpj')
    @mock = double('model')
    allow(@mock).to receive(:errors).and_return([])
    allow(@mock.errors).to receive(:messages).and_return({})
    allow(@mock.errors).to receive(:add) do |attribute, error|
      @mock.errors.messages[attribute] = [error]
    end
  end

  subject { @validator }

  context 'when Cnpj is valid' do
    it "doesn't add errors in model" do
      subject.validate_each(@mock, 'cnpj', '85961757000102')
      expect(@mock.errors.messages).to be_empty
    end
  end

  context 'when Cnpj is blank' do
    it "doesn't add errors in model" do
      subject.validate_each(@mock, 'cnpj', '')
      expect(@mock.errors.messages).to be_empty
    end
  end

  context 'when Cnpj is invalid' do
    it 'adds errors in model' do
      subject.validate_each(@mock, 'cnpj', '85961757000103')
      expect(@mock.errors.messages).to_not be_empty
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
br_documents-0.2.0 spec/cnpj_validator_spec.rb