UNPKG

3.75 kBJavaScriptView Raw
1/***
2 * @license
3 * https://github.com/bitcoincashjs/bchaddr
4 * Copyright (c) 2018 Emilio Almansi
5 * Distributed under the MIT software license, see the accompanying
6 * file LICENSE or http://www.opensource.org/licenses/mit-license.php.
7 */
8
9var assert = require('chai').assert
10var bchaddr = require('..')
11
12describe('Readme examples', function () {
13 it('should work exactly as advertised', function () {
14 var Format = bchaddr.Format
15 var Network = bchaddr.Network
16 var Type = bchaddr.Type
17 var isLegacyAddress = bchaddr.isLegacyAddress
18 var isBitpayAddress = bchaddr.isBitpayAddress
19 var isCashAddress = bchaddr.isCashAddress
20 var isMainnetAddress = bchaddr.isMainnetAddress
21 var isTestnetAddress = bchaddr.isTestnetAddress
22 var isP2PKHAddress = bchaddr.isP2PKHAddress
23 var isP2SHAddress = bchaddr.isP2SHAddress
24 var detectAddressFormat = bchaddr.detectAddressFormat
25 var detectAddressNetwork = bchaddr.detectAddressNetwork
26 var detectAddressType = bchaddr.detectAddressType
27 var toLegacyAddress = bchaddr.toLegacyAddress
28 var toBitpayAddress = bchaddr.toBitpayAddress
29 var toCashAddress = bchaddr.toCashAddress
30 assert.strictEqual(
31 isLegacyAddress('1B9UNtBfkkpgt8kVbwLN9ktE62QKnMbDzR'),
32 true
33 )
34 assert.strictEqual(
35 isLegacyAddress('qph5kuz78czq00e3t85ugpgd7xmer5kr7c5f6jdpwk'),
36 false
37 )
38 assert.strictEqual(
39 isBitpayAddress('CScMwvXjdooDnGevHgfHjGWFi9cjk75Aaj'),
40 true
41 )
42 assert.strictEqual(
43 isBitpayAddress('1B9UNtBfkkpgt8kVbwLN9ktE62QKnMbDzR'),
44 false
45 )
46 assert.strictEqual(
47 isCashAddress('qph5kuz78czq00e3t85ugpgd7xmer5kr7c5f6jdpwk'),
48 true
49 )
50 assert.strictEqual(
51 isCashAddress('CScMwvXjdooDnGevHgfHjGWFi9cjk75Aaj'),
52 false
53 )
54 assert.strictEqual(
55 isMainnetAddress('1P238gziZdeS5Wj9nqLhQHSBK2Lz6zPSke'),
56 true
57 )
58 assert.strictEqual(
59 isMainnetAddress('mnbGP2FeRsbgdQCzDT35zPWDcYSKm4wrcg'),
60 false
61 )
62 assert.strictEqual(
63 isTestnetAddress('qqdcsl6c879esyxyacmz7g6vtzwjjwtznsggspc457'),
64 true
65 )
66 assert.strictEqual(
67 isTestnetAddress('CeUvhjLnSgcxyedaUafcyo4Cw9ZPwGq9JJ'),
68 false
69 )
70 assert.strictEqual(
71 isP2PKHAddress('1Mdob5JY1yuwoj6y76Vf3AQpoqUH5Aft8z'),
72 true
73 )
74 assert.strictEqual(
75 isP2PKHAddress('2NFGG7yRBizUANU48b4dASrnNftqsNwzSM1'),
76 false
77 )
78 assert.strictEqual(
79 isP2SHAddress('H92i9XpREZiBscxGu6Vx3M8jNGBKqscBBB'),
80 true
81 )
82 assert.strictEqual(
83 isP2SHAddress('CeUvhjLnSgcxyedaUafcyo4Cw9ZPwGq9JJ'),
84 false
85 )
86 assert.strictEqual(
87 detectAddressFormat('qqdcsl6c879esyxyacmz7g6vtzwjjwtznsggspc457'),
88 Format.Cashaddr
89 )
90 assert.strictEqual(
91 detectAddressFormat('CScMwvXjdooDnGevHgfHjGWFi9cjk75Aaj'),
92 Format.Bitpay
93 )
94 assert.strictEqual(
95 detectAddressNetwork('1P238gziZdeS5Wj9nqLhQHSBK2Lz6zPSke'),
96 Network.Mainnet
97 )
98 assert.strictEqual(
99 detectAddressNetwork('qqdcsl6c879esyxyacmz7g6vtzwjjwtznsggspc457'),
100 Network.Testnet
101 )
102 assert.strictEqual(
103 detectAddressType('1P238gziZdeS5Wj9nqLhQHSBK2Lz6zPSke'),
104 Type.P2PKH
105 )
106 assert.strictEqual(
107 detectAddressType('3NKpWcnyZtEKttoQECAFTnmkxMkzgbT4WX'),
108 Type.P2SH
109 )
110 assert.strictEqual(
111 toLegacyAddress('qph5kuz78czq00e3t85ugpgd7xmer5kr7c5f6jdpwk'),
112 '1B9UNtBfkkpgt8kVbwLN9ktE62QKnMbDzR'
113 )
114 assert.strictEqual(
115 toBitpayAddress('1B9UNtBfkkpgt8kVbwLN9ktE62QKnMbDzR'),
116 'CScMwvXjdooDnGevHgfHjGWFi9cjk75Aaj'
117 )
118 assert.strictEqual(
119 toCashAddress('1B9UNtBfkkpgt8kVbwLN9ktE62QKnMbDzR'),
120 'bitcoincash:qph5kuz78czq00e3t85ugpgd7xmer5kr7c5f6jdpwk'
121 )
122 })
123})