titulo_eleitor_utils 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: ddbf8b673976820d00779c3bfcad007f32d28d9f
4
+ data.tar.gz: 7a407ed477ecaa9ea24768e28be9e43855fa9e6d
5
+ SHA512:
6
+ metadata.gz: db54d07eee3e9fa194e59fb92a532c1e019bf9217ba3aaef3191b3b4eca891131c52a56268aeed1b6c0eb714df9f0131f4552523a7a223ba48860feb150652a0
7
+ data.tar.gz: d599fd3dc1063a6266a31e524785963911f0ceb9690d9100842ec27a9ca75e3d4872eb8b2568beb3f978f1ff4bc1981903d15b99584b1cb4a7f41204d4023ffb
data/.gitignore ADDED
@@ -0,0 +1,17 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --format nested
data/.travis.yml ADDED
@@ -0,0 +1,6 @@
1
+ rvm:
2
+ - 1.9.2
3
+ - 1.9.3
4
+ - 2.0.0
5
+ - 2.1.0
6
+ script: "bundle exec rspec spec"
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in titulo_eleitor_utils.gemspec
4
+ gemspec
data/LICENSE.txt ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2014 Jackson Pires
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,98 @@
1
+ # TituloEleitorUtils
2
+
3
+ TituloEleitorUtils é uma suíte de funcionalidades para Título de Eleitor.
4
+ O TituloEleitorUtils é capaz de gerar números de Título de Eleitor para testes no formado tradicional ou apenas numérico, verifica a qual UF o Título de Eleitor pertence, testa se determinado número de Título de Eleitor é válido, gera dígitos verificadores para determinado número candidato a Título de Eleitor, dentre outras coisas.
5
+
6
+ *PS: Devido à inconsistência entre as formatações/máscaras usadas em todo território nacional, optamos por usar uma formatação/máscara próxima à que Justiça Eleitoral usa nos comprovantes de votação. Nossa formatação/máscara será ####.####.####, visto que o título eleitoral é formado por 12 dígitos.*
7
+
8
+ ## Instalação
9
+
10
+ Adicione essa linha na Gemfile da sua aplicação:
11
+
12
+ gem 'titulo_eleitor_utils'
13
+
14
+ E então execute:
15
+
16
+ $ bundle
17
+
18
+ Ou instale você mesmo, conforme abaixo:
19
+
20
+ $ gem install titulo_eleitor_utils
21
+
22
+ ## Uso
23
+
24
+ O TituloEleitorUtils é muito fácil de usar, por exempo:
25
+
26
+ # Para gerar um número de Título de Eleitor:
27
+ TituloEleitorUtils.titulo_eleitor => # "023434561340"
28
+
29
+ # Para gerar um Título de Eleitor formatado:
30
+ TituloEleitorUtils.titulo_eleitor_formatted => # "0234.3456.1340"
31
+
32
+ # Para verificar se um Título de Eleitor é válido:
33
+ TituloEleitorUtils.valid_titulo_eleitor?("023434561340") => # true
34
+ TituloEleitorUtils.valid_titulo_eleitor?(023434561340) => # true
35
+ TituloEleitorUtils.valid_titulo_eleitor?("0234.3456.1340") => # true
36
+
37
+ # Outra forma de verificar se um Título de Eleitor é válido:
38
+ "023434561340".valid_titulo_eleitor? => # true
39
+ "0234.3456.1340".valid_titulo_eleitor? => # true
40
+
41
+ # Para verificar se uma máscara de Título de Eleitor é válida:
42
+ "0234.3456.1340".valid_titulo_eleitor_mask? => # true
43
+ "0234.3456..1340".valid_titulo_eleitor_mask? => # false
44
+
45
+ # Para formatar um número válido de Título de Eleitor:
46
+ "023434561340".to_titulo_eleitor_format => # "0234.3456.1340"
47
+
48
+ # Para gerar um número de Título de Eleitor a partir de um número candidato de 10 dígitos:
49
+ "612873950001".generate_titulo_eleitor => # "023434561340"
50
+
51
+ # Para gerar um número de Título de Eleitor formatado a partir de um número candidato de 10 dígitos:
52
+ "612873950001".generate_titulo_eleitor_formatted => # "0234.3456.1340"
53
+
54
+ # Para saber a qual unidade federativa o Título de Eleitor pertence:
55
+ TituloEleitor.titulo_eleitor_province("759026311727") => # "TO"
56
+ "759026311727".titulo_eleitor_province => # "TO"
57
+
58
+ Também é possível usar métodos em português:
59
+
60
+ # Para gerar um número de Título de Eleitor:
61
+ TituloEleitorUtils.titulo_eleitor => # "023434561340"
62
+
63
+ # Para gerar um Título de Eleitor formatado:
64
+ TituloEleitorUtils.titulo_eleitor_formatado => # "0234.3456.1340"
65
+
66
+ # Para verificar se um Título de Eleitor é válido:
67
+ TituloEleitorUtils.titulo_eleitor_valido?("023434561340") => # true
68
+ TituloEleitorUtils.titulo_eleitor_valido?(023434561340) => # true
69
+ TituloEleitorUtils.titulo_eleitor_valido?("0234.3456.1340") => # true
70
+
71
+ # Outra forma de verificar se um Título de Eleitor é válido:
72
+ "023434561340".titulo_eleitor_valido? => # true
73
+ "0234.3456.1340".titulo_eleitor_valido? => # true
74
+
75
+ # Para verificar se uma máscara de Título de Eleitor é válida:
76
+ "0234.3456.1340".mascara_de_titulo_eleitor_valida? => # true
77
+ "0234.3456..1340".mascara_de_titulo_eleitor_valida? => # false
78
+
79
+ # Para formatar um número válido de Título de Eleitor:
80
+ "023434561340".para_formato_titulo_eleitor => # "0234.3456.1340"
81
+
82
+ # Para gerar um número de Título de Eleitor a partir de um número candidato de 10 dígitos:
83
+ "612873950001".gerar_titulo_eleitor => # "023434561340"
84
+
85
+ # Para gerar um número de Título de Eleitor formatado a partir de um número candidato de 10 dígitos:
86
+ "612873950001".gerar_titulo_eleitor_formatado => # "0234.3456.1340"
87
+
88
+ # Para saber a qual unidade federativa o Título de Eleitor pertence:
89
+ TituloEleitorUtils.uf_do_titulo_eleitor("759026311727") => # "TO"
90
+ "759026311727".uf_do_titulo_eleitor => # "TO"
91
+
92
+ ## Contribuindo
93
+
94
+ 1. Faça um Fork
95
+ 2. Crie um branch para a nova funcionalidade (`git checkout -b minha-nova-funcionalidade`)
96
+ 3. Faça o commit de suas alterações (`git commit -am 'Adicionada nova funcionalidade'`)
97
+ 4. Faça um push da sua nova funconalidade (`git push origin minha-nova-funcionalidade`)
98
+ 5. Submeta uma nova Pull Request
data/Rakefile ADDED
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
@@ -0,0 +1,103 @@
1
+ class String
2
+
3
+ # Verifica se uma máscara de Título de Eleitor é válida:
4
+ #
5
+ # "7590.2631.1727".valid_titulo_eleitor_mask? => # true
6
+ def valid_titulo_eleitor_mask?
7
+ without_mask = !!(self =~ /^[0-9]{12}+$/)
8
+ with_mask = !!(self =~ /^[0-9]{4}\.[0-9]{4}\.[0-9]{4}+$/)
9
+ with_mask || without_mask
10
+ end
11
+
12
+ # Verifica se um Título de Eleitor é válido:
13
+ #
14
+ # "759026311727".valid_titulo_eleitor? => # true
15
+ # "7590.2631.1727".valid_titulo_eleitor? => # true
16
+ def valid_titulo_eleitor?
17
+ valid_state = TituloEleitorUtils::TituloEleitor.valid_state?(self)
18
+
19
+ if valid_titulo_eleitor_mask? && valid_state
20
+ original_titulo_eleitor = self.gsub(/\.?/,"",)
21
+ tested_titulo_eleitor = original_titulo_eleitor[0..9]
22
+
23
+ tested_titulo_eleitor << (
24
+ TituloEleitorUtils::TituloEleitor.new(
25
+ original_titulo_eleitor[0..9]
26
+ ).first_digit.to_s
27
+ )
28
+
29
+ tested_titulo_eleitor << (
30
+ TituloEleitorUtils::TituloEleitor.new(
31
+ tested_titulo_eleitor[0..11]
32
+ ).second_digit.to_s
33
+ )
34
+
35
+ tested_titulo_eleitor == original_titulo_eleitor ? true : false
36
+ end
37
+ end
38
+
39
+ # Para formatar um número válido de Título de Eleitor:
40
+ #
41
+ # "759026311727".to_titulo_eleitor_format => # "7590.2631.1727"
42
+ def to_titulo_eleitor_format
43
+ if self.valid_titulo_eleitor?
44
+ "#{self[0..3]}.#{self[4..7]}.#{self[8..11]}"
45
+ end
46
+ end
47
+
48
+ # Gera um número de Título de Eleitor a partir de um número candidato:
49
+ #
50
+ # "7590263117".generate_titulo_eleitor => # "759026311727"
51
+ def generate_titulo_eleitor
52
+ if !!(self =~ /^[0-9]{10}+$/)
53
+ final_titulo_eleitor = self
54
+
55
+ final_titulo_eleitor << (
56
+ TituloEleitorUtils::TituloEleitor.new(
57
+ final_titulo_eleitor[0..9]
58
+ ).first_digit.to_s
59
+ )
60
+
61
+ final_titulo_eleitor << (
62
+ TituloEleitorUtils::TituloEleitor.new(
63
+ final_titulo_eleitor[0..10]
64
+ ).second_digit.to_s
65
+ )
66
+
67
+ final_titulo_eleitor
68
+ end
69
+ end
70
+
71
+ # Para gerar um número de Título de Eleitor formatado a partir de um número candidato:
72
+ #
73
+ # "759026311727".generate_titulo_eleitor_formatted => # "7590.2631.1727"
74
+ def generate_titulo_eleitor_formatted
75
+ generate_titulo_eleitor.to_titulo_eleitor_format
76
+ end
77
+
78
+ # Para saber a qual unidade federativa o Título de Eleitor pertence:
79
+ #
80
+ # "759026311727".titulo_eleitor_province => # "TO"
81
+ def titulo_eleitor_province
82
+ TituloEleitorUtils.titulo_eleitor_province(self)
83
+ end
84
+
85
+ # Apelido 'mascara_de_titulo_eleitor_valida' para o método valid_titulo_eleitor_mask
86
+ alias_method :mascara_de_titulo_eleitor_valida?, :valid_titulo_eleitor_mask?
87
+
88
+ # Apelido 'titulo_eleitor_valido?' para o método valid_titulo_eleitor?
89
+ alias_method :titulo_eleitor_valido?, :valid_titulo_eleitor?
90
+
91
+ # Apelido 'para_formato_titulo_eleitor' para o método to_titulo_eleitor_format
92
+ alias_method :para_formato_titulo_eleitor, :to_titulo_eleitor_format
93
+
94
+ # Apelido 'gerar_titulo_eleitor' para o método generate_titulo_eleitor
95
+ alias_method :gerar_titulo_eleitor, :generate_titulo_eleitor
96
+
97
+ # Apelido 'gerar_titulo_eleitor_formatado' para o método generate_titulo_eleitor_formatted
98
+ alias_method :gerar_titulo_eleitor_formatado, :generate_titulo_eleitor_formatted
99
+
100
+ # Apelido 'uf_do_titulo_eleitor' para o método titulo_eleitor_province
101
+ alias_method :uf_do_titulo_eleitor, :titulo_eleitor_province
102
+
103
+ end
@@ -0,0 +1,71 @@
1
+ module TituloEleitorUtils
2
+ class TituloEleitor
3
+
4
+ # Acessor de leitura para os números
5
+ attr_reader :numbers
6
+
7
+ # Inicializador da classe
8
+ def initialize(numbers)
9
+ if numbers.is_a? String
10
+ numbers = numbers.split('')
11
+ elsif numbers.is_a? Fixnum
12
+ numbers = numbers.to_s.split('')
13
+ end
14
+
15
+ @numbers = numbers
16
+ end
17
+
18
+ # Gera o Título de Eleitor propriamente dito
19
+ def generate_titulo_eleitor
20
+ @numbers << first_digit
21
+ @numbers << second_digit
22
+ @numbers.join("")
23
+ end
24
+
25
+ # Gera o primeiro dígito verificador
26
+ def first_digit
27
+ if @numbers.size == 10
28
+ value = 0
29
+ multipliers = [2,3,4,5,6,7,8,9]
30
+
31
+ multipliers.each_with_index do |mult, index|
32
+ value += @numbers[index].to_i * mult
33
+ end
34
+
35
+ check_remainder(value % 11)
36
+ end
37
+ end
38
+
39
+ # Gera o segundo dígito verificador
40
+ def second_digit
41
+ if @numbers.size == 11
42
+ last_three_digits = [@numbers[8], @numbers[9], @numbers[10]]
43
+ value = 0
44
+ multipliers = [7,8,9]
45
+
46
+ multipliers.each_with_index do |mult, index|
47
+ value += last_three_digits[index].to_i * mult
48
+ end
49
+
50
+ check_remainder(value % 11)
51
+ end
52
+ end
53
+
54
+ # Checa o resto da divisão
55
+ def check_remainder(remainder)
56
+ if remainder < 2
57
+ 0
58
+ else
59
+ (11 - remainder)
60
+ end
61
+ end
62
+
63
+ # Verifica se o valor do dígito do estado é válido
64
+ def self.valid_state?(titulo_eleitor_number)
65
+ if titulo_eleitor_number.gsub!(/\.?/,"",).size == 12
66
+ state_number = titulo_eleitor_number[8,2].to_i
67
+ ((state_number >= 1) && (state_number <= 28)) ? true : false
68
+ end
69
+ end
70
+ end
71
+ end
@@ -0,0 +1,3 @@
1
+ module TituloEleitorUtils
2
+ VERSION = "1.0.0"
3
+ end
@@ -0,0 +1,85 @@
1
+ require "titulo_eleitor_utils/version"
2
+ require "titulo_eleitor_utils/string"
3
+ require "titulo_eleitor_utils/titulo_eleitor"
4
+
5
+ module TituloEleitorUtils
6
+
7
+ # Gera um número de Título de Eleitor.
8
+ #
9
+ # Exemplo:
10
+ # TituloEleitorUtils.titulo_eleitor => # "023434561340"
11
+ def self.titulo_eleitor
12
+ TituloEleitor.new(sample_numbers).generate_titulo_eleitor
13
+ end
14
+
15
+ # Gera um número de Título de Eleitor formatado.
16
+ #
17
+ # Exemplo:
18
+ # TituloEleitor.titulo_eleitor_formatted => # "0234.3456.1340"
19
+ def self.titulo_eleitor_formatted
20
+ TituloEleitor.new(sample_numbers)
21
+ .generate_titulo_eleitor.to_titulo_eleitor_format
22
+ end
23
+
24
+ # Gera um número de Título de Eleitor formatado.
25
+ #
26
+ # Exemplo:
27
+ # TituloEleitor.titulo_eleitor_formatado => # "0234.3456.1340"
28
+ def self.titulo_eleitor_formatado
29
+ self.titulo_eleitor_formatted
30
+ end
31
+
32
+ # Verifica se um Título de Eleitor é válido.
33
+ #
34
+ # Exemplo:
35
+ # TituloEleitor.valid_titulo_eleitor?(023434561340) => # true
36
+ # TituloEleitor.valid_titulo_eleitor?("023434561340") => # true
37
+ # TituloEleitor.valid_titulo_eleitor?("0234.3456.1340") => # true
38
+ def self.valid_titulo_eleitor?(titulo_eleitor_number)
39
+ titulo_eleitor_number.to_s.valid_titulo_eleitor?
40
+ end
41
+
42
+ # Verifica se um Título de Eleitor é válido.
43
+ #
44
+ # Exemplo:
45
+ # TituloEleitor.titulo_eleitor_valido?(023434561340) => # true
46
+ # TituloEleitor.titulo_eleitor_valido?("023434561340") => # true
47
+ # TituloEleitor.titulo_eleitor_valido?("0234.3456.1340") => # true
48
+ def self.titulo_eleitor_valido?(titulo_eleitor_number)
49
+ self.valid_titulo_eleitor?(titulo_eleitor_number)
50
+ end
51
+
52
+ # Para saber a qual unidade federativa o Título de Eleitor pertence:
53
+ #
54
+ # Exemplo:
55
+ # TituloEleitor.titulo_eleitor_province("759026311727") => # "TO"
56
+ def self.titulo_eleitor_province(titulo_eleitor_number)
57
+ provinces = ["SP","MG","RJ","RS","BA","PR","CE","PE","SC","GO","MA","PB",
58
+ "PA","ES","PI","RN","AL","MT","MS","DF","SE","AM","RO","AC",
59
+ "AP","RR","TO","ZZ"]
60
+
61
+ provinces[titulo_eleitor_number[10..11].to_i - 1]
62
+ end
63
+
64
+ # Para saber a qual unidade federativa o Título de Eleitor pertence:
65
+ #
66
+ # Exemplo:
67
+ # TituloEleitor.uf_do_titulo_eleitor("759026311727") => # "TO"
68
+ def self.uf_do_titulo_eleitor(titulo_eleitor_number)
69
+ titulo_eleitor_province(titulo_eleitor_number)
70
+ end
71
+
72
+ private
73
+
74
+ # Sorteia 10 números para compor um novo Título de Eleitor
75
+ def self.sample_numbers
76
+ titulo_eleitor_candidate = [*0..9].sample(8)
77
+ titulo_eleitor_candidate.concat sample_state
78
+ end
79
+
80
+ # Sorteia um número entre 01 e 28, representando os estados + exterior
81
+ def self.sample_state
82
+ state_number = "%02d" % [*1..28].sample.to_s
83
+ [state_number[0].to_i, state_number[1].to_i]
84
+ end
85
+ end
@@ -0,0 +1,2 @@
1
+ require "titulo_eleitor_utils"
2
+ require_relative "../lib/titulo_eleitor_utils/titulo_eleitor"
@@ -0,0 +1,54 @@
1
+ require "spec_helper"
2
+
3
+ describe TituloEleitorUtils do
4
+ it ".titulo_eleitor" do
5
+ valid_titulo_eleitor = TituloEleitorUtils.titulo_eleitor
6
+ expect(valid_titulo_eleitor).to be_a_kind_of(String)
7
+ expect(valid_titulo_eleitor[8,2].to_i).to be >= 1
8
+ expect(valid_titulo_eleitor[8,2].to_i).to be <= 28
9
+ expect(valid_titulo_eleitor.length).to eql(12)
10
+ end
11
+
12
+ it ".titulo_eleitor_formatted" do
13
+ valid_titulo_eleitor = TituloEleitorUtils.titulo_eleitor_formatted
14
+ expect(valid_titulo_eleitor).to match(/^[0-9]{4}\.[0-9]{4}\.[0-9]{4}+$/)
15
+ end
16
+
17
+ it ".titulo_eleitor_formatado" do
18
+ valid_titulo_eleitor = TituloEleitorUtils.titulo_eleitor_formatado
19
+ expect(valid_titulo_eleitor).to match(/^[0-9]{4}\.[0-9]{4}\.[0-9]{4}+$/)
20
+ end
21
+
22
+ it ".valid_titulo_eleitor?" do
23
+ valid_titulo_eleitor = TituloEleitorUtils.titulo_eleitor
24
+ expect(TituloEleitorUtils.valid_titulo_eleitor? valid_titulo_eleitor).to be_true
25
+ end
26
+
27
+ it ".titulo_eleitor_valido?" do
28
+ titulo_eleitor_valido = TituloEleitorUtils.titulo_eleitor
29
+ expect(TituloEleitorUtils.titulo_eleitor_valido? titulo_eleitor_valido).to be_true
30
+ end
31
+
32
+ it ".valid_titulo_eleitor? - be false" do
33
+ invalid_titulo_eleitor = "1234.5678.9101"
34
+ expect(TituloEleitorUtils.valid_titulo_eleitor? invalid_titulo_eleitor).to be_false
35
+ end
36
+
37
+ it ".sample_numbers" do
38
+ numbers = TituloEleitorUtils.sample_numbers
39
+ expect(numbers.size).to eql(10)
40
+ expect(numbers).to be_a_kind_of(Array)
41
+ expect(numbers.join("")[8,2].to_i).to be >= 1
42
+ expect(numbers.join("")[8,2].to_i).to be <= 28
43
+ end
44
+
45
+ it ".titulo_eleitor_province" do
46
+ state = TituloEleitorUtils.titulo_eleitor_province("759026311727")
47
+ expect(state).to eql("TO")
48
+ end
49
+
50
+ it ".uf_do_titulo_eleitor" do
51
+ state = TituloEleitorUtils.uf_do_titulo_eleitor("759026311727")
52
+ expect(state).to eql("TO")
53
+ end
54
+ end
@@ -0,0 +1,27 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'titulo_eleitor_utils/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "titulo_eleitor_utils"
8
+ spec.version = TituloEleitorUtils::VERSION
9
+ spec.authors = ["Jackson Pires"]
10
+ spec.email = ["jackson.pires@gmail.com"]
11
+ spec.description = %q{Uma suíte de funcionalidades para o Título de Eleitor.}
12
+ spec.summary = %q{Gera Título de Eleitor para testes no formado
13
+ tradicional ou apenas numérico, testa se determinado
14
+ número de Título de Eleitor é válido, além muitas
15
+ outras funcionalidades descritas na documentação.}
16
+ spec.homepage = "https://github.com/jacksonpires/titulo_eleitor_utils"
17
+ spec.license = "MIT"
18
+
19
+ spec.files = `git ls-files`.split($/)
20
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
21
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
22
+ spec.require_paths = ["lib"]
23
+
24
+ spec.add_development_dependency "bundler", "~> 1.3"
25
+ spec.add_development_dependency "rake"
26
+ spec.add_development_dependency "rspec", "~> 2.14.1"
27
+ end
metadata ADDED
@@ -0,0 +1,104 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: titulo_eleitor_utils
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Jackson Pires
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-03-27 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '1.3'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: '1.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: 2.14.1
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 2.14.1
55
+ description: Uma suíte de funcionalidades para o Título de Eleitor.
56
+ email:
57
+ - jackson.pires@gmail.com
58
+ executables: []
59
+ extensions: []
60
+ extra_rdoc_files: []
61
+ files:
62
+ - .gitignore
63
+ - .rspec
64
+ - .travis.yml
65
+ - Gemfile
66
+ - LICENSE.txt
67
+ - README.md
68
+ - Rakefile
69
+ - lib/titulo_eleitor_utils.rb
70
+ - lib/titulo_eleitor_utils/string.rb
71
+ - lib/titulo_eleitor_utils/titulo_eleitor.rb
72
+ - lib/titulo_eleitor_utils/version.rb
73
+ - spec/spec_helper.rb
74
+ - spec/titulo_eleitor_utils_spec.rb
75
+ - titulo_eleitor_utils.gemspec
76
+ homepage: https://github.com/jacksonpires/titulo_eleitor_utils
77
+ licenses:
78
+ - MIT
79
+ metadata: {}
80
+ post_install_message:
81
+ rdoc_options: []
82
+ require_paths:
83
+ - lib
84
+ required_ruby_version: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - '>='
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
89
+ required_rubygems_version: !ruby/object:Gem::Requirement
90
+ requirements:
91
+ - - '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ requirements: []
95
+ rubyforge_project:
96
+ rubygems_version: 2.0.3
97
+ signing_key:
98
+ specification_version: 4
99
+ summary: Gera Título de Eleitor para testes no formado tradicional ou apenas numérico,
100
+ testa se determinado número de Título de Eleitor é válido, além muitas outras funcionalidades
101
+ descritas na documentação.
102
+ test_files:
103
+ - spec/spec_helper.rb
104
+ - spec/titulo_eleitor_utils_spec.rb