Sha256: 0d6be65264bee27de3dc5e64fa33ccb25a4834ec1d74e400c5a36d90f017e7f6

Contents?: true

Size: 1.19 KB

Versions: 9

Compression:

Stored size: 1.19 KB

Contents

require "spec_helper"
require_relative "shared_examples_for_to_remove_all_masks"

RSpec.describe BrDocuments::IE::MG do
  describe "#formatted" do
    it "returns a formatted ie" do
      ie = described_class.new("1234567890123")
      expect(ie.formatted).to eq "123.456.789/0123"
    end
  end

  describe "#valid?" do
    it "is invalid with malformed number" do
      ["36.311.266.571-75", "4.168.836.973-423", "560.139.778.87-BA"].each do |number|
        ie = described_class.new(number)
        expect(ie).to_not be_valid
      end
    end

    it "is invalid with length different to 13" do
      ["123456789", "1234567890123"].each do |number|
        ie = described_class.new(number)
        expect(ie).to_not be_valid
      end
    end

    it "is invalid with invalid check number" do
      ["4193434759812", "9427301981832"].each do |number|
        ie = described_class.new(number)
        expect(ie).to_not be_valid
      end
    end

    it "is valid with valid number" do
      ["4193434759899", "9427301981820"].each do |number|
        ie = described_class.new(number)
        expect(ie).to be_valid
      end
    end

    include_examples "for to remove all masks", "942.730.198.18-20"
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
br_documents-0.1.3 spec/ie/mg_spec.rb
br_documents-0.1.2 spec/ie/mg_spec.rb
br_documents-0.1.1 spec/ie/mg_spec.rb
br_documents-0.1.0 spec/ie/mg_spec.rb
br_documents-0.0.15 spec/ie/mg_spec.rb
br_documents-0.0.14 spec/ie/mg_spec.rb
br_documents-0.0.13 spec/ie/mg_spec.rb
br_documents-0.0.12 spec/ie/mg_spec.rb
br_documents-0.0.11 spec/ie/mg_spec.rb