diff options
| author | Marak <[email protected]> | 2017-10-11 23:03:30 -0400 |
|---|---|---|
| committer | GitHub <[email protected]> | 2017-10-11 23:03:30 -0400 |
| commit | 4beccd1dc141ce589cdd1525455e97fb22c9f6a9 (patch) | |
| tree | 26350f19b71d5767cc26d90bcb0b134e17002644 /lib | |
| parent | 29de77afe36db703f60335c40f67fd7ec00242e5 (diff) | |
| parent | d998170beaf9cbd397cab108a998d7fa78075266 (diff) | |
| download | faker-4beccd1dc141ce589cdd1525455e97fb22c9f6a9.tar.xz faker-4beccd1dc141ce589cdd1525455e97fb22c9f6a9.zip | |
Merge pull request #423 from uphold-forks/feature/add-finance-routing-number
Add ABA routing number generator
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/finance.js | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/lib/finance.js b/lib/finance.js index 88a992f3..268c74b3 100644 --- a/lib/finance.js +++ b/lib/finance.js @@ -36,6 +36,27 @@ var Finance = function (faker) { }; /** + * routingNumber + * + * @method faker.finance.routingNumber + */ + self.routingNumber = function () { + + var routingNumber = Helpers.replaceSymbolWithNumber('########'); + + // Modules 10 straight summation. + var sum = 0; + + for (var i = 0; i < routingNumber.length; i += 3) { + sum += Number(routingNumber[i]) * 3; + sum += Number(routingNumber[i + 1]) * 7; + sum += Number(routingNumber[i + 2]) || 0; + } + + return routingNumber + (Math.ceil(sum / 10) * 10 - sum); + } + + /** * mask * * @method faker.finance.mask |
