aurfy 0.1.1 → 0.2.0

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
  SHA1:
3
- metadata.gz: cdf97785085e8e57fe1637e2397ebfcdd9ed2dae
4
- data.tar.gz: 5f14266cd1992ec98e279839e27a29921c575826
3
+ metadata.gz: cd370b13b668a5a3ad75b2259835fcbf713162e6
4
+ data.tar.gz: 9b4fcedecb44992d5da07cb225bbe8f12fe08a3d
5
5
  SHA512:
6
- metadata.gz: 16c239e41a1e87763c7d0d73bc163f44e2c3a502dab5ceb27731898d6796cae8eb8e0901e31d9c3bfdbf9f7d408395563211255a6fc7b06f0758ec9f6e1d6b45
7
- data.tar.gz: 451e505339b82c154f1dfbe3f26142c245d710bb5a88164afb5b2525efb43a4612a23b99d8dc4c6cbe68e33bf1ec8c0ba0e9c9869665fd6de221a2cce7df97d1
6
+ metadata.gz: 6f656da1218c81ea95a91cf6141305f178a26f2193f48b50a98680638669734752d7861ca9e095e1e38ab1572b8e3885a70c9482570aa5ff1b809a4a51584c1b
7
+ data.tar.gz: bd91ec61d956df7a990cb6c974d92c0b5dc327c74c447e10a5e61519a97121b232052495d01598ea701bb4b525b3262aae13d2b93045a12d184c54266c435e73
data/aurfy.gemspec CHANGED
@@ -14,6 +14,7 @@ Gem::Specification.new do |s|
14
14
  s.files = `git ls-files`.split($/)
15
15
  s.require_paths = ['lib']
16
16
 
17
+ s.add_runtime_dependency 'credit_card_reader', '~> 0.0.0'
17
18
  s.add_runtime_dependency 'faraday', '~> 0.9.0'
18
19
  s.add_development_dependency "pry", "~> 0.10.0"
19
20
  s.add_development_dependency 'rspec', '~> 3.0', '>= 3.0.0'
@@ -7,7 +7,6 @@ module Aurfy
7
7
  end
8
8
 
9
9
  def initialize
10
- @cardtype = "UP"
11
10
  @charset = "UTF-8"
12
11
  @ordercurrency = "USD"
13
12
  @orderdescription = ""
@@ -30,6 +29,7 @@ module Aurfy
30
29
  next unless Configure.keys.include? key
31
30
  instance_variable_set(:"@#{key}", value)
32
31
  end
32
+ @cardtype ||= cardtype
33
33
  options
34
34
  end
35
35
 
@@ -47,5 +47,23 @@ module Aurfy
47
47
  def signature
48
48
  Digest::MD5.hexdigest(signature_key)
49
49
  end
50
+
51
+ def cardtype
52
+ credit_card = credit_card_detector.detect(@cardnumber)
53
+ case credit_card.brand
54
+ when :union_pay
55
+ "UP"
56
+ when :vise
57
+ "VISA"
58
+ when :jcb
59
+ "JCB"
60
+ when :master
61
+ "MC"
62
+ end
63
+ end
64
+
65
+ def credit_card_detector
66
+ CreditCardReader::Detector.new
67
+ end
50
68
  end
51
69
  end
data/lib/aurfy/version.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  module Aurfy
2
2
  MAJOR = 0
3
- MINOR = 1
4
- PATCH = 1
3
+ MINOR = 2
4
+ PATCH = 0
5
5
  VERSION = [MAJOR, MINOR, PATCH].join('.').freeze
6
6
  end
data/lib/aurfy.rb CHANGED
@@ -1,4 +1,5 @@
1
1
  require 'faraday'
2
+ require 'credit_card_reader'
2
3
 
3
4
  require 'aurfy/client'
4
5
  require 'aurfy/configure'
@@ -32,9 +32,9 @@ describe Aurfy::Configure do
32
32
 
33
33
  describe "#sorted_variables" do
34
34
  it "returns sorted instance variables" do
35
- subject.options = { trade_certificate: "test", cardnumber: "0123456789012345", orderid: "orderid",
35
+ subject.options = { trade_certificate: "test", cardnumber: "6200123456789012", orderid: "orderid",
36
36
  ordertime: "20150429124533" }
37
- sorted_variables = { cardnumber: "0123456789012345", cardtype: "UP", charset: "UTF-8", ordercurrency: "USD",
37
+ sorted_variables = { cardnumber: "6200123456789012", cardtype: "UP", charset: "UTF-8", ordercurrency: "USD",
38
38
  orderdescription: "", orderid: "orderid", ordertime: "20150429124533", signmethod: "MD5",
39
39
  transtype: "PURCHASE", txnremark1: "", txnremark2: "", version: "1.0", website: "" }
40
40
 
@@ -44,9 +44,9 @@ describe Aurfy::Configure do
44
44
 
45
45
  describe "#signature_key" do
46
46
  it "returns sorted instance variables" do
47
- subject.options = { signmethod: "MD5", trade_certificate: "trade_certificate", orderid: "orderid",
47
+ subject.options = { cardnumber: "6200123456789012", signmethod: "MD5", trade_certificate: "trade_certificate", orderid: "orderid",
48
48
  ordertime: "20150429124533" }
49
- signature_key = "cardtype=UP&charset=UTF-8&ordercurrency=USD&orderdescription=&orderid=orderid&ordertime=20150429124533&transtype=PURCHASE&txnremark1=&txnremark2=&version=1.0&website=&trade_certificate"
49
+ signature_key = "cardnumber=6200123456789012&cardtype=UP&charset=UTF-8&ordercurrency=USD&orderdescription=&orderid=orderid&ordertime=20150429124533&transtype=PURCHASE&txnremark1=&txnremark2=&version=1.0&website=&trade_certificate"
50
50
 
51
51
  expect(subject.signature_key).to eq(signature_key)
52
52
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aurfy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Masahiro Saito
@@ -10,6 +10,20 @@ bindir: bin
10
10
  cert_chain: []
11
11
  date: 2015-05-02 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: credit_card_reader
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.0.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.0.0
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: faraday
15
29
  requirement: !ruby/object:Gem::Requirement