Sha256: 0966d768c3831be99180680acbb026f7cb32a3262e39a80a988a7e2ddd9ecb13

Contents?: true

Size: 1.25 KB

Versions: 1

Compression:

Stored size: 1.25 KB

Contents

require 'spec_helper'
require_relative 'shared_examples_for_to_remove_all_masks'

describe BrDocuments::IE::SP do
  describe '#formatted' do
    context 'when having 12 digits' do
      it 'returns a formatted ie' do
        ie = described_class.new('110042490114')
        expect(ie.formatted).to eq '110.042.490.114'
      end
    end

    context 'when having 13 digits' do
      it 'returns a formatted ie' do
        ie = described_class.new('P011004243002')
        expect(ie.formatted).to eq 'P-01100424.3/002'
      end
    end
  end

  describe '#valid?' do
    it 'is invalid with malformed number' do
      ['36.9107.395114', '527.08212.8110'].each do |number|
        ie = described_class.new(number)
        expect(ie).to_not be_valid
      end
    end

    it 'is invalid with invalid check number' do
      ['110042490113', '110.042.491.114', 'P-01100424.4/002'].each do |number|
        ie = described_class.new(number)
        expect(ie).to_not be_valid
      end
    end

    it 'is valid with valid number' do
      ['110042490114', '110.042.490.114', 'P-01100424.3/002'].each do |number|
        ie = described_class.new(number)
        expect(ie).to be_valid
      end
    end

    include_examples 'for to remove all masks', 'P-01100424.3/002'
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
br_documents-0.2.0 spec/ie/sp_spec.rb