Sha256: 5301672049ff3e624be05356c2d3acaa665dbfaea780daa0f4839d1c75b12e55

Contents?: true

Size: 1.17 KB

Versions: 12

Compression:

Stored size: 1.17 KB

Contents

# frozen_string_literal: true

require "test_helper"

class ValidatesCnpjFormatOfTest < Minitest::Test
  let(:model) do
    Class.new do
      def self.name
        "User"
      end

      include ActiveModel::Model
      validates_cnpj_format_of :document
      attr_accessor :document
    end
  end

  test "fails when gem is not available" do
    assert_raises do
      Class.new do
        expects(:require).with("cnpj").raises(LoadError)

        include ActiveModel::Model
        validates_cnpj_format_of :document
      end
    end
  end

  test "requires valid CNPJ" do
    record = model.new(document: "invalid")
    record.valid?

    refute record.errors[:document].empty?
  end

  test "accepts formatted CNPJ" do
    record = model.new(document: CNPJ.generate(true))
    record.valid?

    assert record.errors[:document].empty?
  end

  test "accepts stripped CNPJ" do
    record = model.new(document: CNPJ.generate)
    record.valid?

    assert record.errors[:document].empty?
  end

  test "sets translated error message" do
    I18n.locale = "pt-BR"

    record = model.new
    record.valid?

    assert_includes record.errors[:document], "não é um CNPJ válido"
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
validators-3.4.0 test/validators/validates_cnpj_format_of_test.rb
validators-3.3.0 test/validators/validates_cnpj_format_of_test.rb
validators-3.2.1 test/validators/validates_cnpj_format_of_test.rb
validators-3.2.0 test/validators/validates_cnpj_format_of_test.rb
validators-3.1.1 test/validators/validates_cnpj_format_of_test.rb
validators-3.1.0 test/validators/validates_cnpj_format_of_test.rb
validators-3.0.5 test/validators/validates_cnpj_format_of_test.rb
validators-3.0.4 test/validators/validates_cnpj_format_of_test.rb
validators-3.0.3 test/validators/validates_cnpj_format_of_test.rb
validators-3.0.2 test/validators/validates_cnpj_format_of_test.rb
validators-3.0.1 test/validators/validates_cnpj_format_of_test.rb
validators-3.0.0 test/validators/validates_cnpj_format_of_test.rb