credit-card
Advanced tools
Comparing version 1.2.2 to 2.0.0
100
lib/index.js
'use strict'; | ||
var Hoek = require('hoek'); | ||
const Reach = require('reach'); | ||
var _defaults = { | ||
let _defaults = { | ||
cardTypes: { | ||
@@ -69,3 +69,3 @@ VISA: { | ||
// Store original defaults. This must happen after aliases are setup | ||
var _originalDefaults = Hoek.clone(_defaults); | ||
const _originalDefaults = Object.assign({}, _defaults); | ||
@@ -75,13 +75,13 @@ function validate (card, options) { | ||
var settings = Hoek.applyToDefaults(_defaults, options || {}); | ||
var schema = settings.schema; | ||
var cardType = Hoek.reach(card, schema.cardType); | ||
var number = sanitizeNumberString(Hoek.reach(card, schema.number)); | ||
var expiryMonth = Hoek.reach(card, schema.expiryMonth); | ||
var expiryYear = Hoek.reach(card, schema.expiryYear); | ||
var cvv = sanitizeNumberString(Hoek.reach(card, schema.cvv)); | ||
var customValidationFn = settings.customValidation; | ||
var customValidation; | ||
const settings = Object.assign({}, _defaults, options); | ||
const schema = settings.schema; | ||
const cardType = Reach(card, schema.cardType); | ||
const number = sanitizeNumberString(Reach(card, schema.number)); | ||
const expiryMonth = Reach(card, schema.expiryMonth); | ||
const expiryYear = Reach(card, schema.expiryYear); | ||
const cvv = sanitizeNumberString(Reach(card, schema.cvv)); | ||
const customValidationFn = settings.customValidation; | ||
let customValidation; | ||
// optional custom validation | ||
// Optional custom validation | ||
if (typeof customValidationFn === 'function') { | ||
@@ -92,3 +92,3 @@ customValidation = customValidationFn(card, settings); | ||
return { | ||
card: card, | ||
card, | ||
validCardNumber: isValidCardNumber(number, cardType, settings.cardTypes), | ||
@@ -99,3 +99,3 @@ validExpiryMonth: isValidExpiryMonth(expiryMonth, settings.expiryMonths), | ||
isExpired: isExpired(expiryMonth, expiryYear), | ||
customValidation: customValidation | ||
customValidation | ||
}; | ||
@@ -105,11 +105,11 @@ } | ||
function determineCardType (number, options) { | ||
var settings = Hoek.applyToDefaults(_defaults, options || {}); | ||
var cardTypes = settings.cardTypes; | ||
var keys = Object.keys(cardTypes); | ||
const settings = Object.assign({}, _defaults, options); | ||
const cardTypes = settings.cardTypes; | ||
const keys = Object.keys(cardTypes); | ||
number = sanitizeNumberString(number); | ||
for (var i = 0, il = keys.length; i < il; ++i) { | ||
var key = keys[i]; | ||
var type = cardTypes[key]; | ||
for (let i = 0; i < keys.length; ++i) { | ||
const key = keys[i]; | ||
const type = cardTypes[key]; | ||
@@ -130,3 +130,3 @@ if (type.cardPattern.test(number) || | ||
function isValidExpiryMonth (month, options) { | ||
var settings = Hoek.applyToDefaults(_defaults.expiryMonths, options || {}); | ||
const settings = Object.assign({}, _defaults.expiryMonths, options); | ||
@@ -142,3 +142,3 @@ if (typeof month === 'string' && month.length > 2) { | ||
function isValidExpiryYear (year, options) { | ||
var settings = Hoek.applyToDefaults(_defaults.expiryYears, options || {}); | ||
const settings = Object.assign({}, _defaults.expiryYears, options); | ||
@@ -154,4 +154,4 @@ if (typeof year === 'string' && year.length !== 4) { | ||
function doesNumberMatchType (number, type, options) { | ||
var settings = Hoek.applyToDefaults(_defaults.cardTypes, options || {}); | ||
var patterns = settings[type]; | ||
const settings = Object.assign({}, _defaults.cardTypes, options); | ||
const patterns = settings[type]; | ||
@@ -166,4 +166,4 @@ if (!patterns) { | ||
function doesCvvMatchType (number, type, options) { | ||
var settings = Hoek.applyToDefaults(_defaults.cardTypes, options || {}); | ||
var patterns = settings[type]; | ||
const settings = Object.assign({}, _defaults.cardTypes, options); | ||
const patterns = settings[type]; | ||
@@ -181,5 +181,5 @@ if (!patterns) { | ||
// cards are good until the end of the month | ||
// Cards are good until the end of the month | ||
// http://stackoverflow.com/questions/54037/credit-card-expiration-dates-inclusive-or-exclusive | ||
var expiration = new Date(year, month); | ||
const expiration = new Date(year, month); | ||
@@ -190,3 +190,3 @@ return Date.now() >= expiration; | ||
function luhn (number) { | ||
// credit - https://gist.github.com/DiegoSalazar/4075533 | ||
// Source - https://gist.github.com/DiegoSalazar/4075533 | ||
@@ -197,7 +197,7 @@ if (/[^\d]+/.test(number) || typeof number !== 'string' || !number) { | ||
var nCheck = 0; | ||
var bEven = false; | ||
var nDigit; | ||
let nCheck = 0; | ||
let bEven = false; | ||
let nDigit; | ||
for (var i = number.length - 1; i >= 0; --i) { | ||
for (let i = number.length - 1; i >= 0; --i) { | ||
nDigit = ~~number.charAt(i); | ||
@@ -230,5 +230,5 @@ | ||
if (overwrite === true) { | ||
_defaults = Hoek.clone(options); | ||
_defaults = Object.assign({}, options); | ||
} else { | ||
_defaults = Hoek.applyToDefaults(_defaults, options); | ||
_defaults = Object.assign({}, _defaults, options); | ||
} | ||
@@ -240,3 +240,3 @@ | ||
function reset () { | ||
_defaults = Hoek.clone(_originalDefaults); | ||
_defaults = Object.assign({}, _originalDefaults); | ||
return _defaults; | ||
@@ -246,3 +246,3 @@ } | ||
function _setupCardTypeAliases (type, aliases) { | ||
for (var i = 0, il = aliases.length; i < il; ++i) { | ||
for (let i = 0; i < aliases.length; ++i) { | ||
_defaults.cardTypes[aliases[i]] = _defaults.cardTypes[type]; | ||
@@ -253,14 +253,14 @@ } | ||
module.exports = { | ||
validate: validate, | ||
determineCardType: determineCardType, | ||
isValidCardNumber: isValidCardNumber, | ||
isValidExpiryMonth: isValidExpiryMonth, | ||
isValidExpiryYear: isValidExpiryYear, | ||
doesNumberMatchType: doesNumberMatchType, | ||
doesCvvMatchType: doesCvvMatchType, | ||
isExpired: isExpired, | ||
luhn: luhn, | ||
sanitizeNumberString: sanitizeNumberString, | ||
defaults: defaults, | ||
reset: reset | ||
validate, | ||
determineCardType, | ||
isValidCardNumber, | ||
isValidExpiryMonth, | ||
isValidExpiryYear, | ||
doesNumberMatchType, | ||
doesCvvMatchType, | ||
isExpired, | ||
luhn, | ||
sanitizeNumberString, | ||
defaults, | ||
reset | ||
}; |
{ | ||
"name": "credit-card", | ||
"version": "1.2.2", | ||
"version": "2.0.0", | ||
"description": "credit card validation", | ||
"author": "Continuation Labs <contact@continuation.io> (http://continuation.io/)", | ||
"main": "lib/index.js", | ||
"author": "Continuation Labs <contact@continuation.io> (http://continuation.io/)", | ||
"homepage": "https://github.com/continuationlabs/credit-card", | ||
"repository": { | ||
@@ -11,23 +12,23 @@ "type": "git", | ||
}, | ||
"bugs": { | ||
"url": "https://github.com/continuationlabs/credit-card/issues" | ||
}, | ||
"license": "MIT", | ||
"scripts": { | ||
"test": "belly-button && lab -v -t 100 -a code" | ||
}, | ||
"keywords": [ | ||
"credit card" | ||
], | ||
"bugs": { | ||
"url": "https://github.com/continuationlabs/credit-card/issues" | ||
"engines": { | ||
"node": ">=4.0.0" | ||
}, | ||
"dependencies": { | ||
"hoek": "2.x.x" | ||
"reach": "1.x.x" | ||
}, | ||
"devDependencies": { | ||
"belly-button": "1.x.x", | ||
"code": "1.x.x", | ||
"lab": "6.x.x" | ||
"code": "2.x.x", | ||
"lab": "8.x.x" | ||
}, | ||
"directories": { | ||
"test": "test" | ||
}, | ||
"license": "MIT" | ||
"keywords": [ | ||
"credit card" | ||
] | ||
} |
@@ -6,4 +6,5 @@ # credit-card | ||
![Dependencies](http://img.shields.io/david/continuationlabs/credit-card.svg) | ||
![devDependencies](http://img.shields.io/david/dev/continuationlabs/credit-card.svg) | ||
[![belly-button-style](https://cdn.rawgit.com/continuationlabs/belly-button/master/badge.svg)](https://github.com/continuationlabs/belly-button) | ||
Module for performing credit card validation. | ||
@@ -277,1 +278,5 @@ | ||
``` | ||
## Test Card Numbers | ||
A list of test credit cards is available from [http://www.paypalobjects.com/en_US/vhelp/paypalmanager_help/credit_card_numbers.htm](PayPal). |
'use strict'; | ||
var Code = require('code'); | ||
var Lab = require('lab'); | ||
var CreditCard = require('../'); | ||
const Code = require('code'); | ||
const Lab = require('lab'); | ||
const CreditCard = require('../'); | ||
var lab = exports.lab = Lab.script(); | ||
var expect = Code.expect; | ||
var describe = lab.describe; | ||
var it = lab.it; | ||
const lab = exports.lab = Lab.script(); | ||
const expect = Code.expect; | ||
const describe = lab.describe; | ||
const it = lab.it; | ||
// a list of test credit cards is available at: | ||
// http://www.paypalobjects.com/en_US/vhelp/paypalmanager_help/credit_card_numbers.htm | ||
describe('CreditCard', function () { | ||
lab.beforeEach(function (done) { | ||
describe('CreditCard', () => { | ||
lab.beforeEach((done) => { | ||
CreditCard.reset(); | ||
@@ -20,5 +18,5 @@ done(); | ||
describe('#validate()', function () { | ||
it('no invalid responses on valid card', function (done) { | ||
var card = { | ||
describe('#validate()', () => { | ||
it('no invalid responses on valid card', (done) => { | ||
const card = { | ||
cardType: 'VISA', | ||
@@ -30,3 +28,3 @@ number: '4111111111111111', | ||
}; | ||
var validation = CreditCard.validate(card); | ||
const validation = CreditCard.validate(card); | ||
@@ -43,4 +41,4 @@ expect(validation.card).to.deep.equal(card); | ||
it('validates a card using a custom schema', function (done) { | ||
var schema = { | ||
it('validates a card using a custom schema', (done) => { | ||
const schema = { | ||
cardType: 'type', | ||
@@ -52,3 +50,3 @@ number: 'number', | ||
}; | ||
var card = { | ||
const card = { | ||
type: 'visa', | ||
@@ -60,5 +58,3 @@ number: '4111111111111111', | ||
}; | ||
var validation = CreditCard.validate(card, { | ||
schema: schema | ||
}); | ||
const validation = CreditCard.validate(card, { schema }); | ||
@@ -75,4 +71,4 @@ expect(validation.card).to.deep.equal(card); | ||
it('no invalid responses on valid card by alias', function (done) { | ||
var card = { | ||
it('no invalid responses on valid card by alias', (done) => { | ||
const card = { | ||
cardType: 'VC', | ||
@@ -84,3 +80,3 @@ number: '4111111111111111', | ||
}; | ||
var validation = CreditCard.validate(card); | ||
const validation = CreditCard.validate(card); | ||
@@ -97,4 +93,4 @@ expect(validation.card).to.deep.equal(card); | ||
it('invalid responses on invalid card', function (done) { | ||
var card = { | ||
it('invalid responses on invalid card', (done) => { | ||
const card = { | ||
cardType: 'VISA', | ||
@@ -106,3 +102,3 @@ number: '4111111111111112', | ||
}; | ||
var validation = CreditCard.validate(card); | ||
const validation = CreditCard.validate(card); | ||
@@ -119,4 +115,4 @@ expect(validation.card).to.deep.equal(card); | ||
it('invalid responses on no card', function (done) { | ||
var validation = CreditCard.validate(); | ||
it('invalid responses on no card', (done) => { | ||
const validation = CreditCard.validate(); | ||
@@ -133,4 +129,4 @@ expect(validation.card).to.deep.equal({}); | ||
it('provides custom validation function', function (done) { | ||
var card = { | ||
it('provides custom validation function', (done) => { | ||
const card = { | ||
cardType: 'VISA', | ||
@@ -143,8 +139,8 @@ number: '4111111111111111', | ||
}; | ||
var options = { | ||
customValidation: function (card, settings) { | ||
const options = { | ||
customValidation: (card, settings) => { | ||
return card.pin === '7890'; | ||
} | ||
}; | ||
var validation = CreditCard.validate(card, options); | ||
const validation = CreditCard.validate(card, options); | ||
@@ -161,4 +157,4 @@ expect(validation.card).to.deep.equal(card); | ||
it('defines a new card type', function (done) { | ||
var card1 = { | ||
it('defines a new card type', (done) => { | ||
const card1 = { | ||
cardType: 'VISA', | ||
@@ -170,3 +166,3 @@ number: '4111111111111111', | ||
}; | ||
var card2 = { | ||
const card2 = { | ||
cardType: 'GIFT_CARD', | ||
@@ -178,3 +174,3 @@ number: '4111111111111111', | ||
}; | ||
var options = { | ||
const options = { | ||
cardTypes: { | ||
@@ -186,3 +182,3 @@ GIFT_CARD: { | ||
}, | ||
customValidation: function (card, settings) { | ||
customValidation: (card, settings) => { | ||
if (card.cardType === 'GIFT_CARD') { | ||
@@ -193,6 +189,6 @@ return card.pin === '7890'; | ||
}; | ||
var validation1 = CreditCard.validate(card1, options); | ||
var validation2 = CreditCard.validate(card2, options); | ||
const validation1 = CreditCard.validate(card1, options); | ||
const validation2 = CreditCard.validate(card2, options); | ||
// verify that existing validation still works | ||
// Verify that existing validation still works | ||
expect(validation1.card).to.deep.equal(card1); | ||
@@ -206,3 +202,3 @@ expect(validation1.validCardNumber).to.equal(true); | ||
// verify that custom type validation works | ||
// Verify that custom type validation works | ||
expect(validation2.card).to.deep.equal(card2); | ||
@@ -220,4 +216,4 @@ expect(validation2.validCardNumber).to.equal(true); | ||
describe('#determineCardType()', function () { | ||
it('successfully detects full numbers', function (done) { | ||
describe('#determineCardType()', () => { | ||
it('successfully detects full numbers', (done) => { | ||
expect(CreditCard.determineCardType('378282246310005')).to.equal('AMERICANEXPRESS'); | ||
@@ -241,3 +237,3 @@ expect(CreditCard.determineCardType('371449635398431')).to.equal('AMERICANEXPRESS'); | ||
it('successfully detects partial numbers if allowPartial is true', function (done) { | ||
it('successfully detects partial numbers if allowPartial is true', (done) => { | ||
expect(CreditCard.determineCardType('37', {allowPartial: true})).to.equal('AMERICANEXPRESS'); | ||
@@ -260,3 +256,3 @@ expect(CreditCard.determineCardType('34', {allowPartial: true})).to.equal('AMERICANEXPRESS'); | ||
it('does not allow partial matches if allowPartial is false', function (done) { | ||
it('does not allow partial matches if allowPartial is false', (done) => { | ||
expect(CreditCard.determineCardType('5555555')).to.equal(null); | ||
@@ -268,4 +264,4 @@ expect(CreditCard.determineCardType('4', {allowPartial: false})).to.equal(null); | ||
describe('#isValidCardNumber()', function () { | ||
it('returns true for valid cards', function (done) { | ||
describe('#isValidCardNumber()', () => { | ||
it('returns true for valid cards', (done) => { | ||
expect(CreditCard.isValidCardNumber('378282246310005', 'AMERICANEXPRESS')).to.equal(true); | ||
@@ -288,3 +284,3 @@ expect(CreditCard.isValidCardNumber('371449635398431', 'AMERICANEXPRESS')).to.equal(true); | ||
it('returns false for numbers that pass luhn but fail are invalid', function (done) { | ||
it('returns false for numbers that pass luhn but fail are invalid', (done) => { | ||
expect(CreditCard.isValidCardNumber('123', 'AMERICANEXPRESS')).to.equal(false); | ||
@@ -295,4 +291,4 @@ done(); | ||
describe('#doesNumberMatchType()', function () { | ||
it('returns true for valid card matches', function (done) { | ||
describe('#doesNumberMatchType()', () => { | ||
it('returns true for valid card matches', (done) => { | ||
expect(CreditCard.doesNumberMatchType('378282246310005', 'AMERICANEXPRESS')).to.equal(true); | ||
@@ -315,3 +311,3 @@ expect(CreditCard.doesNumberMatchType('371449635398431', 'AMERICANEXPRESS')).to.equal(true); | ||
it('returns false for invalid cards', function (done) { | ||
it('returns false for invalid cards', (done) => { | ||
expect(CreditCard.doesNumberMatchType('4111111111111111', 'AMERICANEXPRESS')).to.equal(false); | ||
@@ -326,3 +322,3 @@ expect(CreditCard.doesNumberMatchType('5555555555554444', 'DINERSCLUB')).to.equal(false); | ||
it('returns false for unknown card types', function (done) { | ||
it('returns false for unknown card types', (done) => { | ||
expect(CreditCard.doesNumberMatchType('4111111111111111', '')).to.equal(false); | ||
@@ -333,3 +329,3 @@ expect(CreditCard.doesNumberMatchType('378282246310005', 'foo')).to.equal(false); | ||
it('returns true for custom card types', function (done) { | ||
it('returns true for custom card types', (done) => { | ||
expect(CreditCard.doesNumberMatchType('911', 'foo', { | ||
@@ -345,4 +341,4 @@ foo: { | ||
describe('#doesCvvMatchType()', function () { | ||
it('returns true for valid cvv matches', function (done) { | ||
describe('#doesCvvMatchType()', () => { | ||
it('returns true for valid cvv matches', (done) => { | ||
expect(CreditCard.doesCvvMatchType('1234', 'AMERICANEXPRESS')).to.equal(true); | ||
@@ -357,3 +353,3 @@ expect(CreditCard.doesCvvMatchType('123', 'DINERSCLUB')).to.equal(true); | ||
it('returns false for invalid cvvs', function (done) { | ||
it('returns false for invalid cvvs', (done) => { | ||
expect(CreditCard.doesCvvMatchType('123', 'AMERICANEXPRESS')).to.equal(false); | ||
@@ -368,3 +364,3 @@ expect(CreditCard.doesCvvMatchType('1234', 'DINERSCLUB')).to.equal(false); | ||
it('returns false for unknown card types', function (done) { | ||
it('returns false for unknown card types', (done) => { | ||
expect(CreditCard.doesCvvMatchType('999', '')).to.equal(false); | ||
@@ -375,3 +371,3 @@ expect(CreditCard.doesCvvMatchType('x', 'foo')).to.equal(false); | ||
it('returns true for custom card types', function (done) { | ||
it('returns true for custom card types', (done) => { | ||
expect(CreditCard.doesCvvMatchType('abc', 'foo', { | ||
@@ -387,4 +383,4 @@ foo: { | ||
describe('#isValidExpiryMonth()', function () { | ||
it('returns true for valid month', function (done) { | ||
describe('#isValidExpiryMonth()', () => { | ||
it('returns true for valid month', (done) => { | ||
expect(CreditCard.isValidExpiryMonth('01')).to.equal(true); | ||
@@ -405,3 +401,3 @@ expect(CreditCard.isValidExpiryMonth('02')).to.equal(true); | ||
it('returns false for invalid month', function (done) { | ||
it('returns false for invalid month', (done) => { | ||
expect(CreditCard.isValidExpiryMonth('001')).to.equal(false); | ||
@@ -413,4 +409,4 @@ expect(CreditCard.isValidExpiryMonth(0)).to.equal(false); | ||
it('returns true for month in specified range', function (done) { | ||
var valid = CreditCard.isValidExpiryMonth(13, { | ||
it('returns true for month in specified range', (done) => { | ||
const valid = CreditCard.isValidExpiryMonth(13, { | ||
min: 13, | ||
@@ -425,4 +421,4 @@ max: 13 | ||
describe('#isValidExpiryYear()', function () { | ||
it('returns true for valid year', function (done) { | ||
describe('#isValidExpiryYear()', () => { | ||
it('returns true for valid year', (done) => { | ||
expect(CreditCard.isValidExpiryYear('2014')).to.equal(true); | ||
@@ -436,3 +432,3 @@ expect(CreditCard.isValidExpiryYear(1990)).to.equal(true); | ||
it('returns false for invalid year', function (done) { | ||
it('returns false for invalid year', (done) => { | ||
expect(CreditCard.isValidExpiryYear('100')).to.equal(false); | ||
@@ -444,4 +440,4 @@ expect(CreditCard.isValidExpiryYear(1899)).to.equal(false); | ||
it('returns true for year in specified range', function (done) { | ||
var valid = CreditCard.isValidExpiryYear(1800, { | ||
it('returns true for year in specified range', (done) => { | ||
const valid = CreditCard.isValidExpiryYear(1800, { | ||
min: 1800, | ||
@@ -456,4 +452,4 @@ max: 1800 | ||
describe('#isExpired()', function () { | ||
it('returns true for an expired card', function (done) { | ||
describe('#isExpired()', () => { | ||
it('returns true for an expired card', (done) => { | ||
expect(CreditCard.isExpired(12, 2013)).to.equal(true); | ||
@@ -463,3 +459,3 @@ done(); | ||
it('returns false for non-expired card', function (done) { | ||
it('returns false for non-expired card', (done) => { | ||
expect(CreditCard.isExpired(1, 2100)).to.equal(false); | ||
@@ -469,4 +465,4 @@ done(); | ||
it('returns true when card expired last month', function (done) { | ||
var date = new Date(); | ||
it('returns true when card expired last month', (done) => { | ||
const date = new Date(); | ||
@@ -478,4 +474,4 @@ date.setMonth(date.getMonth() - 1); // last month | ||
it('returns false when card expires this month', function (done) { | ||
var date = new Date(); | ||
it('returns false when card expires this month', (done) => { | ||
const date = new Date(); | ||
@@ -487,4 +483,4 @@ expect(CreditCard.isExpired(date.getMonth() + 1, date.getFullYear())).to.equal(false); | ||
describe('#luhn()', function () { | ||
it('returns true for valid cards', function (done) { | ||
describe('#luhn()', () => { | ||
it('returns true for valid cards', (done) => { | ||
expect(CreditCard.luhn('378282246310005')).to.equal(true); | ||
@@ -510,3 +506,3 @@ expect(CreditCard.luhn('371449635398431')).to.equal(true); | ||
it('returns false for invalid cards', function (done) { | ||
it('returns false for invalid cards', (done) => { | ||
expect(CreditCard.luhn('5105105105105101')).to.equal(false); | ||
@@ -523,5 +519,5 @@ expect(CreditCard.luhn('4111111111111112')).to.equal(false); | ||
describe('#sanitizeNumberString()', function () { | ||
it('returns a string stripped of all non-numeric characters', function (done) { | ||
var str = CreditCard.sanitizeNumberString('4111-1111-1111-1111'); | ||
describe('#sanitizeNumberString()', () => { | ||
it('returns a string stripped of all non-numeric characters', (done) => { | ||
const str = CreditCard.sanitizeNumberString('4111-1111-1111-1111'); | ||
@@ -532,3 +528,3 @@ expect(str).to.equal('4111111111111111'); | ||
it('returns empty string for non-string input', function (done) { | ||
it('returns empty string for non-string input', (done) => { | ||
expect(CreditCard.sanitizeNumberString()).to.equal(''); | ||
@@ -544,6 +540,6 @@ expect(CreditCard.sanitizeNumberString(undefined)).to.equal(''); | ||
describe('#defaults()', function () { | ||
it('adds to defaults', function (done) { | ||
var original = CreditCard.reset(); | ||
var updated = CreditCard.defaults({ | ||
describe('#defaults()', () => { | ||
it('adds to defaults', (done) => { | ||
const original = CreditCard.reset(); | ||
const updated = CreditCard.defaults({ | ||
cardTypes: { | ||
@@ -561,5 +557,5 @@ foo: { | ||
it('makes no changes without arguments', function (done) { | ||
var original = CreditCard.reset(); | ||
var updated = CreditCard.defaults(); | ||
it('makes no changes without arguments', (done) => { | ||
const original = CreditCard.reset(); | ||
const updated = CreditCard.defaults(); | ||
@@ -570,5 +566,5 @@ expect(original).to.deep.equal(updated); | ||
it('does not overwrite by default', function (done) { | ||
var original = CreditCard.reset(); | ||
var updated = CreditCard.defaults({}); | ||
it('does not overwrite by default', (done) => { | ||
const original = CreditCard.reset(); | ||
const updated = CreditCard.defaults({}); | ||
@@ -579,4 +575,4 @@ expect(original).to.deep.equal(updated); | ||
it('overwrites when second argument is true', function (done) { | ||
var updated = CreditCard.defaults({}, true); | ||
it('overwrites when second argument is true', (done) => { | ||
const updated = CreditCard.defaults({}, true); | ||
@@ -587,5 +583,5 @@ expect(updated).to.deep.equal({}); | ||
it('does not overwrite when second argument is false', function (done) { | ||
var original = CreditCard.reset(); | ||
var updated = CreditCard.defaults({}, false); | ||
it('does not overwrite when second argument is false', (done) => { | ||
const original = CreditCard.reset(); | ||
const updated = CreditCard.defaults({}, false); | ||
@@ -596,4 +592,4 @@ expect(original).to.deep.equal(updated); | ||
it('sets a custom schema', function (done) { | ||
var schema = { | ||
it('sets a custom schema', (done) => { | ||
const schema = { | ||
cardType: 'type', | ||
@@ -605,3 +601,3 @@ number: 'number', | ||
}; | ||
var card = { | ||
const card = { | ||
type: 'visa', | ||
@@ -613,8 +609,5 @@ number: '4111111111111111', | ||
}; | ||
var validation; | ||
CreditCard.defaults({ | ||
schema: schema | ||
}); | ||
validation = CreditCard.validate(card); | ||
CreditCard.defaults({ schema }); | ||
const validation = CreditCard.validate(card); | ||
@@ -632,7 +625,7 @@ expect(validation.card).to.deep.equal(card); | ||
describe('#reset()', function () { | ||
it('resets to original defaults', function (done) { | ||
var original = CreditCard.reset(); | ||
var updated = CreditCard.defaults({}, true); | ||
var reset = CreditCard.reset(); | ||
describe('#reset()', () => { | ||
it('resets to original defaults', (done) => { | ||
const original = CreditCard.reset(); | ||
const updated = CreditCard.defaults({}, true); | ||
const reset = CreditCard.reset(); | ||
@@ -639,0 +632,0 @@ expect(updated).to.deep.equal({}); |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
No website
QualityPackage does not have a website.
Found 1 instance in 1 package
0
281
43952
727
+ Addedreach@1.x.x
+ Addedreach@1.0.1(transitive)
- Removedhoek@2.x.x
- Removedhoek@2.16.3(transitive)