CPF Faker¶ ↑
Pare de usar estes sites “garimpadores de grana do adwords” quando precisar de um CPF ou CPNJ!
Generates Brazilian CPF and CNPJ numbers for use in testing. Great to be used alongside Faker and won’t clutter your namespace.
As a bonus, you get command line executables for quick generation or use in Bash scripts.
Good and simple code with working specs. It is pure ruby since the algorithms are lame and simple and nobody in their right mind should ever care about performance for this.
Install¶ ↑
Use rubygems:
gem install cpf_faker
Or add it to your Gemfile if your project uses bundler (ex.: Rails apps)
group :development do # ... gem 'cpf_faker' end
Usage¶ ↑
Ruby code¶ ↑
require 'cpf_faker' # Generates CPFs Faker::CPF.numeric #=> "32586104447" Faker::CPF.pretty #=> "419.356.777-05" # Generates CNPJ Faker::CNPJ.numeric #=> "31669138588095" Faker::CNPJ.pretty #=> "69.068.788/8492-00" #some aliases so you won't guess wrong Faker::CPF.cpf #=> "859.684.732-40"
Command line¶ ↑
The command line executables are ridiculously simple and do nothing besides printing and coping number-only cpfs and cnpjs.
$ cpf 85968473240 CPF Copied to your clipboard! $ cnpj 69068788849200 CNPJ Copied to your clipboard!
Motivation¶ ↑
I got tired of using lame “Adword bait” sites to generate CPFs. And needed to generate several to populate a test database.
So I invested 30 minutes to make this into a simple gem others could use.
Credits¶ ↑
Syntax based on the Faker gem.
Generation of the verification digits shamelessly stolen from the validates_as_cpf Rails Plugin (credit to Gabriel Sobrinho).
br-cpf gem used for cross validation in the specs (credit to Bruno Coimbra).
Contributing to cpf_faker¶ ↑
-
Check out the latest master to make sure the feature hasn’t been implemented or the bug hasn’t been fixed yet
-
Check out the issue tracker to make sure someone already hasn’t requested it and/or contributed it
-
Fork the project
-
Start a feature/bugfix branch
-
Commit and push until you are happy with your contribution
-
Make sure to add tests for it. This is important so I don’t break it in a future version unintentionally.
-
Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.
Copyright¶ ↑
Copyright © 2010 Bernardo de Pádua. See LICENSE.txt for further details.