require File.expand_path(File.dirname(__FILE__) + "/../../spec_helper") describe Braintree::Transaction::CreditCardDetails do describe "expiration_date" do it "concats expiration_month and expiration_year" do details = Braintree::Transaction::CreditCardDetails.new( :expiration_month => "08", :expiration_year => "2009", ) expect(details.expiration_date).to eq("08/2009") end end describe "inspect" do it "inspects" do details = Braintree::Transaction::CreditCardDetails.new( :bin => "123456", :card_type => "Visa", :cardholder_name => "The Cardholder", :expiration_month => "05", :expiration_year => "2012", :last_4 => "6789", :token => "token", :customer_location => "US", :healthcare => "No", :prepaid => "Yes", :durbin_regulated => "No", :debit => "Yes", :commercial => "Unknown", :payroll => "Unknown", :product_id => "Unknown", :country_of_issuance => "Lilliput", :issuing_bank => "Gulliver Bank", :image_url => "example.com/visa.png", :unique_number_identifier => "abc123", ) expect(details.inspect).to eq(%(#<token: "token", bin: "123456", last_4: "6789", card_type: "Visa", expiration_date: "05/2012", cardholder_name: "The Cardholder", customer_location: "US", prepaid: "Yes", healthcare: "No", durbin_regulated: "No", debit: "Yes", commercial: "Unknown", payroll: "Unknown", product_id: "Unknown", country_of_issuance: "Lilliput", issuing_bank: "Gulliver Bank", image_url: "example.com/visa.png", unique_number_identifier: "abc123">)) end end describe "masked_number" do it "concatenates the bin, some *'s, and the last_4" do details = Braintree::Transaction::CreditCardDetails.new( :bin => "510510", :last_4 => "5100", ) expect(details.masked_number).to eq("510510******5100") end end describe "is_network_tokenized" do it "returns true if is_network_tokenized is true" do details = Braintree::Transaction::CreditCardDetails.new( :is_network_tokenized => true, ) expect(details.is_network_tokenized?).to eq(true) end it "returns false if is_network_tokenized is false" do details = Braintree::Transaction::CreditCardDetails.new( :is_network_tokenized => false, ) expect(details.is_network_tokenized?).to eq(false) end end end