dvinciguerra/business-br

View on GitHub
README.md

Summary

Maintainability
Test Coverage
# Business::BR

[![Gem Version](https://badge.fury.io/rb/business-br.svg)](https://badge.fury.io/rb/business-br)
[![Build Status](https://travis-ci.org/dvinciguerra/business-br.svg?branch=master)](https://travis-ci.org/dvinciguerra/business-br)
[![Ruby](https://github.com/dvinciguerra/business-br/actions/workflows/ruby.yml/badge.svg)](https://github.com/dvinciguerra/business-br/actions/workflows/ruby.yml)
[![Code Climate](https://codeclimate.com/github/dvinciguerra/business-br/badges/gpa.svg)](https://codeclimate.com/github/dvinciguerra/business-br)

This gem is a namespace of brazilian documents, ids and currencies validations that provide you simple
way for make validations in your ruby application.


## Installation

Add this line to your application's Gemfile:

```ruby
gem 'business-br'
```

And then execute:

    $ bundle

Or install it yourself as:

    $ gem install business-br

## Usage


### For CEP

Using class CEP and validations methods:

```ruby
require 'business-br'

cep = '13330-000'
validator = Business::BR::CEP.new

# turns from '13330-000' into '13330000'
cep = validator.normalize(cep)


# turns from '13330000' into '13330-000'
cep = validator.format(cep)

# getting cep region
cep_region = validator.region(cep) # => ['SP']

# getting cep type
cep_type = validator.type(cep) # => 'LOGRADOURO'


# check if cep is valid
if validator.valid? '00000asd'
  puts 'This CEP is valid'
else 
  puts 'This CEP is not valid... please try again!'
end

# getting cep information
cep = Business::BR::CEP.new 
if infor = cep.search_by('12345678') # default provider is Postmon
  puts "CEP: #{infor}"
else
  puts "NOT FOUND"
end
```


### For CPF

Using class CPF and validations methods:

```ruby
require 'business-br'

cpf = '111.111.111-11'
validator = Business::BR::CPF.new

# turns from '111.111.111-11' into '11111111111'
cpf = validator.normalize(cpf)

# turns from '11111111111' into '111.111.111-11'
cpf = validator.format(cpf)


# check if cpf is valid
if validator.valid? '111.111.111-11'
  puts 'This CPF is valid'
else 
  puts 'This CPF is not valid... please try again!'
end
```


### For CNPJ

Using class CNPJ and validations methods:

```ruby
require 'business-br'

cnpj = '11.111.111/0001-11'
validator = Business::BR::CNPJ.new

# turns from '11.111.111/0001-11' into '11111111000111'
cnpj = validator.normalize(cnpj)

# turns from '11111111000111' into '11.111.111/0001-11'
cnpj = validator.format(cnpj)


# check if cnpj is valid
if validator.valid? '11.111.111/0001-11'
  puts 'This CNPJ is valid'
else 
  puts 'This CNPJ is not valid... please try again!'
end
```


## Development

After checking out the repon, run bundle install to resolve dependencies and then run `rake spec` to run the tests.

To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).

## Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/dvinciguerra/business-br.


## Authors

Daniel Vinciguerra <daniel.vinciguerra@bivee.com.br>