viacep 2.0.1 → 2.0.2

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 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