quaderno 1.10.0 → 1.11.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6133ff0e2c0dc180db8312db08842fd16c57903f
4
- data.tar.gz: 48c86b6f73812319cf398814aa5642a5cee08c74
3
+ metadata.gz: 0e08e3318d7ae64e36083941a785eb508197abe5
4
+ data.tar.gz: 7d70ae8fa3bb5580a95a56795dc8b893769f014c
5
5
  SHA512:
6
- metadata.gz: 4e0a69229598651eaa6a5106e993d79b5aaf7504f74b93ec61d24bed3e0105b2c71e492f0b24aa8d8d91aab65f316ef6fb8fd9686007c130fccc25e5856c5afe
7
- data.tar.gz: 2333552588d808b491d7a86c123b9d4e30c0a546d98fe6c5e0f1758e54b048f95496eaf9044647138b4256376b821d9a6f0d5cfdd2d048632d358b06011d4205
6
+ metadata.gz: 0dcd6d0e616da9dbc7b7f9032c32fc2d5f143d4a60ddb3132f1c4682fbb78091a0be7177e7124ff497ee76d75ce1ae4a5291fdbd4143076830e1b4a7ab7ebd42
7
+ data.tar.gz: 0a67259df3cb0845cc539b881b21d2fbb1c648c169fca21efad6341542c2307b576ffe0190a07010cad8d99aae5debf39c3b06eb82c53296e2cd5ebbfe7fb4b9
data/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  Quaderno-ruby is a ruby wrapper for [Quaderno API] (https://github.com/quaderno/quaderno-api).
4
4
  As the API, it's mostly CRUD.
5
5
 
6
- Current version is 1.9.2 See the changelog [here](https://github.com/quaderno/quaderno-ruby/blob/master/changelog.md)
6
+ Current version is 1.11.0 See the changelog [here](https://github.com/quaderno/quaderno-ruby/blob/master/changelog.md)
7
7
 
8
8
  ## Installation & Configuration
9
9
 
@@ -531,6 +531,15 @@ will delete the webhook with the id passed as parameter.
531
531
 
532
532
  will calculate the taxes applied for a customer based on the data pased as parameters.
533
533
 
534
+ ### Validate VAT numbers
535
+ ```ruby
536
+ country = 'IE'
537
+ vat_number = 'IE6388047V'
538
+
539
+ Quaderno::Tax.validate_vat_number(country, vat_number) #=> Boolean
540
+ ``
541
+
542
+ will validate the vat number for the passed country.
534
543
 
535
544
  ## Evidences
536
545
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.10.0
1
+ 1.11.0
data/changelog.md CHANGED
@@ -1,6 +1,9 @@
1
1
  #Changelog
2
2
 
3
- ##1.0.0
3
+ ##1.11.0
4
+ * Added `Quaderno::Tax.validate_vat_number` method
5
+
6
+ ##1.10.0
4
7
  * Added location evidences support
5
8
 
6
9
  ##1.9.2
@@ -12,5 +12,12 @@ module Quaderno
12
12
  check_exception_for(party_response, { rate_limit: true, subdomain_or_token: true, id: true })
13
13
  new party_response.parsed_response
14
14
  end
15
+
16
+ def self.validate_vat_number(country, vat_number)
17
+ party_response = get("#{self.url}taxes/validate.json", query: {country: country, vat_number: vat_number}, basic_auth: { username: api_model.auth_token } )
18
+ check_exception_for(party_response, { rate_limit: true, subdomain_or_token: true, id: true })
19
+
20
+ party_response.parsed_response['valid']
21
+ end
15
22
  end
16
23
  end
data/quaderno.gemspec CHANGED
@@ -2,16 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: quaderno 1.10.0 ruby lib
5
+ # stub: quaderno 1.11.0 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "quaderno"
9
- s.version = "1.10.0"
9
+ s.version = "1.11.0"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib"]
13
13
  s.authors = ["Recrea"]
14
- s.date = "2016-07-25"
14
+ s.date = "2016-08-30"
15
15
  s.description = " A ruby wrapper for Quaderno API "
16
16
  s.email = "carlos@recrea.es"
17
17
  s.extra_rdoc_files = [
@@ -100,6 +100,8 @@ Gem::Specification.new do |s|
100
100
  "test/fixtures/quaderno_cassettes/updated_item.yml",
101
101
  "test/fixtures/quaderno_cassettes/updated_receipt.yml",
102
102
  "test/fixtures/quaderno_cassettes/updated_webhook.yml",
103
+ "test/fixtures/quaderno_cassettes/validate_invalid_VAT_number.yml",
104
+ "test/fixtures/quaderno_cassettes/validate_valid_VAT_number.yml",
103
105
  "test/fixtures/quaderno_cassettes/wrong_token.yml",
104
106
  "test/helper.rb",
105
107
  "test/unit/test_quaderno_contacts.rb",
@@ -0,0 +1,44 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://sk_test_B7xXrTspfeGukQqGN1pK@development.lvh.me:3000/api/taxes/validate.json?country=IE&vat_number=IE6388047X
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ authorization:
11
+ - Basic c2tfdGVzdF9CN3hYclRzcGZlR3VrUXFHTjFwSzo=
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ x-frame-options:
18
+ - ALLOWALL
19
+ x-ratelimit-limit:
20
+ - '2000'
21
+ x-ratelimit-reset:
22
+ - '14'
23
+ x-ratelimit-remaining:
24
+ - '98'
25
+ content-type:
26
+ - application/json; charset=utf-8
27
+ etag:
28
+ - '"fe2f663bfba92bdd59b4bd0190a146b7"'
29
+ cache-control:
30
+ - max-age=0, private, must-revalidate
31
+ x-request-id:
32
+ - 21922ced-169f-4a23-ac48-94b3c86d47d7
33
+ x-runtime:
34
+ - '0.444012'
35
+ connection:
36
+ - close
37
+ server:
38
+ - thin
39
+ body:
40
+ encoding: UTF-8
41
+ string: '{"valid":false}'
42
+ http_version: '1.1'
43
+ recorded_at: Tue, 30 Aug 2016 10:38:15 GMT
44
+ recorded_with: VCR 2.9.2
@@ -0,0 +1,44 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://sk_test_B7xXrTspfeGukQqGN1pK@development.lvh.me:3000/api/taxes/validate.json?country=IE&vat_number=IE6388047V
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ authorization:
11
+ - Basic c2tfdGVzdF9CN3hYclRzcGZlR3VrUXFHTjFwSzo=
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ x-frame-options:
18
+ - ALLOWALL
19
+ x-ratelimit-limit:
20
+ - '2000'
21
+ x-ratelimit-reset:
22
+ - '15'
23
+ x-ratelimit-remaining:
24
+ - '99'
25
+ content-type:
26
+ - application/json; charset=utf-8
27
+ etag:
28
+ - '"39837b2fcec9d416bda32e66244da470"'
29
+ cache-control:
30
+ - max-age=0, private, must-revalidate
31
+ x-request-id:
32
+ - 2153abc6-2f6e-47da-9f37-f4edb50b16a9
33
+ x-runtime:
34
+ - '2.047779'
35
+ connection:
36
+ - close
37
+ server:
38
+ - thin
39
+ body:
40
+ encoding: UTF-8
41
+ string: '{"valid":true}'
42
+ http_version: '1.1'
43
+ recorded_at: Tue, 30 Aug 2016 10:38:15 GMT
44
+ recorded_with: VCR 2.9.2
@@ -27,14 +27,19 @@ class TestQuadernoTax < Test::Unit::TestCase
27
27
  end
28
28
 
29
29
  should 'calculate tax' do
30
- VCR.use_cassette('calculate tax') do
31
- tax = Quaderno::Tax.calculate(country: 'ES', postal_code: '08080')
32
- assert_equal 'IVA', tax.name
33
- assert_equal 21.0, tax.rate
30
+ VCR.use_cassette('validate valid VAT number') do
31
+ vat_number_valid = Quaderno::Tax.validate_vat_number('IE', 'IE6388047V')
32
+ assert vat_number_valid
33
+ end
34
+
35
+ VCR.use_cassette('validate invalid VAT number') do
36
+ vat_number_valid = Quaderno::Tax.validate_vat_number('IE', 'IE6388047X')
37
+ assert !vat_number_valid
38
+ end
39
+ end
34
40
 
35
- tax = Quaderno::Tax.calculate(country: 'ES', postal_code: '35007')
36
- assert_equal 'IVA',tax.name
37
- assert tax.rate.zero?
41
+ should 'validate VAT number' do
42
+ VCR.use_cassette('calculate tax') do
38
43
  end
39
44
  end
40
45
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: quaderno
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.0
4
+ version: 1.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Recrea
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-25 00:00:00.000000000 Z
11
+ date: 2016-08-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty
@@ -141,6 +141,8 @@ files:
141
141
  - test/fixtures/quaderno_cassettes/updated_item.yml
142
142
  - test/fixtures/quaderno_cassettes/updated_receipt.yml
143
143
  - test/fixtures/quaderno_cassettes/updated_webhook.yml
144
+ - test/fixtures/quaderno_cassettes/validate_invalid_VAT_number.yml
145
+ - test/fixtures/quaderno_cassettes/validate_valid_VAT_number.yml
144
146
  - test/fixtures/quaderno_cassettes/wrong_token.yml
145
147
  - test/helper.rb
146
148
  - test/unit/test_quaderno_contacts.rb