mrz 0.1.0 → 0.2.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
  SHA256:
3
- metadata.gz: 80f5720b27f8c119f51abaab7b7d9819b8615b6617bc5f3b3a6d3fba5fa9f575
4
- data.tar.gz: ed30dc33fcd504994da3b68abc6af1defc8307966f777d5dee588d095f1bc64a
3
+ metadata.gz: 5a21fe38e40f1a7f2bca855060fc9e4573de9e4908d37548bb72a13d240504d7
4
+ data.tar.gz: d116e86a00d5841231f65e566b6b347f6d9d79ef469fccb3b36c7aee99a246dc
5
5
  SHA512:
6
- metadata.gz: 87aa4fb5b716201469e3da15bc13330bddf6c51a8baca6bd7c4ca62d57354c9e4e73b34c9889665d00d5ad5ad3dca29282ad730509b9e0b509c6aeb4c6f83d16
7
- data.tar.gz: 833d145bf96df764b7ec4eaf8a16bbafe74c25a5b8152b5facd1a1bc1daaf57a38d4a79e83bca97f8a046499d3c5bfa0913f97588d16f441fdb50030e549907d
6
+ metadata.gz: 9cfafa4c7ac18f3956a32f33f5aa4044d70812f4927a4e893739398429c446b6779adc7490fe3e38f9cb4db92b7a279048c0cfc34844c1ed338b45ae50882def
7
+ data.tar.gz: 7a1fd31c09d0c1dfaacc0dce5e879954927c5b42a95cb13d216d45bc14f6badb6a8716bf67463be23f1adf1f9d58dc1adfcfd292e1664112ea0f03610c1b51d5
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- mrz (0.1.0)
4
+ mrz (0.2.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/README.md CHANGED
@@ -32,6 +32,9 @@ id_card = [
32
32
  result = MRZ.parse(id_card)
33
33
 
34
34
  result.valid? # => true
35
+ result.valid_birth_date? # => true
36
+ result.valid_expiration_date? # => true
37
+ result.valid_document_number? # => true
35
38
  result.birth_date # => Date.new(1964, 8, 12)
36
39
  result.birth_date_check_digit # => "5"
37
40
  result.composite_check_digit # => "4"
data/lib/mrz/result.rb CHANGED
@@ -46,13 +46,22 @@ module MRZ
46
46
 
47
47
  def valid?
48
48
  @_valid ||= begin
49
- MRZ::CheckDigit.calculate(@birth_date).to_s == @birth_date_check_digit &&
50
- MRZ::CheckDigit.calculate(@document_number).to_s == @document_number_check_digit &&
51
- MRZ::CheckDigit.calculate(@expiration_date).to_s == @expiration_date_check_digit &&
52
- composite_digit_valid?
49
+ valid_birth_date? && valid_expiration_date? && valid_document_number? && valid_composite_digit?
53
50
  end
54
51
  end
55
52
 
53
+ def valid_birth_date?
54
+ @_valid_birth_date ||= MRZ::CheckDigit.calculate(@birth_date).to_s == @birth_date_check_digit
55
+ end
56
+
57
+ def valid_expiration_date?
58
+ @_valid_expiration_date ||= MRZ::CheckDigit.calculate(@expiration_date).to_s == @expiration_date_check_digit
59
+ end
60
+
61
+ def valid_document_number?
62
+ @_valid_document_number ||= MRZ::CheckDigit.calculate(@document_number).to_s == @document_number_check_digit
63
+ end
64
+
56
65
  private
57
66
 
58
67
  def add_correct_century(year)
@@ -63,7 +72,7 @@ module MRZ
63
72
  end
64
73
  end
65
74
 
66
- def composite_digit_valid?
75
+ def valid_composite_digit?
67
76
  if @type == :td1
68
77
  MRZ::CheckDigit.calculate(
69
78
  @document_number + @document_number_check_digit +
data/lib/mrz/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module MRZ
2
- VERSION = "0.1.0"
2
+ VERSION = "0.2.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mrz
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Streetspotr GmbH
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-03-22 00:00:00.000000000 Z
11
+ date: 2018-03-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler