viacep 2.0.1 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6a0da61db07bc87dc9593747ae9d63580cc685e1d299da83dd0a03ab0ff13419
4
- data.tar.gz: cf244b4466c7a73e25ffbf84024faf8fd2f50c7b797e6c9a892f9c381a4aa1b6
3
+ metadata.gz: 3394e46631b047c6c4d8ee13b0e73e01e1c0f935128b2ea559a172aac3724e8c
4
+ data.tar.gz: 96f668e8080c5850419aa28e3190f40bb2ef0cb02dfeabc2c1e0de15904c583a
5
5
  SHA512:
6
- metadata.gz: 99d3fb4ba76ab983c3eadb79194e84fe2c73614724adedc8d9498ac5cce9e41e430e9b5587518a6fe731a3312a18b6bc11c509bab363a4eecaa291b3c3668a7c
7
- data.tar.gz: 1ba60a80b2fefb9a5f80d941d84a4c58ad6bc5b83cd2d5ae95c8b5ab0e259f88c52f3f98f33e077a7b4bdd484c953848c0dc6828daf8d97a898772d953d370cf
6
+ metadata.gz: a6515fcf3bab3b1b96ae4ade5e98464939824acd443af707a400f13be17fbe1ea917bd58416d0e553cfef0e9280088cedef32ca61e1ccadc344d913fc3f6c304
7
+ data.tar.gz: 67b0d365a02aabeda3144dc9a072f473513880573ee506a275d06cbab2435a485add1ca9b045eb55acf608c121438114e01a01cd420338ab1aa233dac556ce3e
data/README.md CHANGED
@@ -12,6 +12,13 @@ gem install viacep
12
12
  => Vai que é tua! 🚀
13
13
  ```
14
14
 
15
+ ou...
16
+
17
+ ```shell
18
+ bundle add viacep
19
+ => Gem instalada no Gemfile! 🤓
20
+ ```
21
+
15
22
  ## Como usar?
16
23
 
17
24
  ```ruby
@@ -6,8 +6,16 @@ module ViaCep
6
6
 
7
7
  # Initializes an instance of Address and fetches the CEP using the external API
8
8
  def initialize(cep, options = {})
9
+ if cep.nil?
10
+ raise ArgumentError, 'CEP cannot be nil'
11
+ end
12
+
9
13
  cep = cep.to_s.delete('^0-9')
10
14
 
15
+ if cep.length != 8
16
+ raise ArgumentError, 'CEP must have 8 digits'
17
+ end
18
+
11
19
  response = Service.fetch cep, options[:timeout]
12
20
  fill_from response
13
21
  end
data/lib/viacep.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module ViaCep
2
- VERSION = "2.0.1".freeze
2
+ VERSION = "2.0.2".freeze
3
3
 
4
4
  require_relative "viacep/address"
5
5
  require_relative "viacep/exceptions"
data/spec/address_spec.rb CHANGED
@@ -8,12 +8,26 @@ RSpec.describe ViaCep::Address do
8
8
  end
9
9
  end
10
10
 
11
- context 'when a invalid CEP is passed' do
12
- it 'raises ViaCep::ApiRequestError' do
11
+ context 'when a invalid length CEP is passed' do
12
+ it 'raises ArgumentError' do
13
13
  expect { ViaCep::Address.new('000000') }.
14
+ to raise_error(ArgumentError)
15
+ end
16
+ end
17
+
18
+ context 'when a unexistent CEP is passed' do
19
+ it 'raises ViaCep::ApiRequestError' do
20
+ expect { ViaCep::Address.new('00000000') }.
14
21
  to raise_error(ViaCep::ApiRequestError)
15
22
  end
16
23
  end
24
+
25
+ context 'when a nil CEP is passed' do
26
+ it 'raises ArgumentError' do
27
+ expect { ViaCep::Address.new(nil) }.
28
+ to raise_error(ArgumentError)
29
+ end
30
+ end
17
31
 
18
32
  context 'when a low timeout is specified' do
19
33
  it 'raises a Timeout::Error' do
data/viacep.gemspec CHANGED
@@ -15,5 +15,4 @@ Gem::Specification.new do |s|
15
15
  s.files = `git ls-files | grep -Ev '^(test|doc|examples|.yardoc|.github)'`.split("\n")
16
16
 
17
17
  s.add_development_dependency 'rspec', '~> 3.7'
18
- s.add_development_dependency 'yard', '~> 0.9.11'
19
18
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: viacep
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vinicius Brasil (@vnbrs)
@@ -24,20 +24,6 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '3.7'
27
- - !ruby/object:Gem::Dependency
28
- name: yard
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: 0.9.11
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: 0.9.11
41
27
  description: Gem sem dependências e fácil de usar para busca de endereços a partir
42
28
  do CEP utilizando o ViaCEP
43
29
  email: marcosbrasilaraujo@gmail.com
@@ -47,7 +33,6 @@ extra_rdoc_files: []
47
33
  files:
48
34
  - ".editorconfig"
49
35
  - ".gitignore"
50
- - ".yardopts"
51
36
  - Gemfile
52
37
  - README.md
53
38
  - lib/viacep.rb
@@ -77,8 +62,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
77
62
  - !ruby/object:Gem::Version
78
63
  version: '0'
79
64
  requirements: []
80
- rubyforge_project:
81
- rubygems_version: 2.7.6
65
+ rubygems_version: 3.0.1
82
66
  signing_key:
83
67
  specification_version: 4
84
68
  summary: Gem sem dependências e fácil de usar para busca de endereços a partir do
data/.yardopts DELETED
@@ -1 +0,0 @@
1
- --markup=markdown