Code Duplication    Length = 52-53 lines in 2 locations

test/wallet.test.js 1 location

@@ 27-79 (lines=53) @@
24
    TRANSACTION_TEST_WALLET_BACKUP_MNEMONIC = "give pause forget seed dance crawl situate hole give",
25
    TRANSACTION_TEST_WALLET_PASSWORD = "password";
26
27
var _createTestWallet = function(identifier, passphrase, primaryMnemonic, backupMnemonic, segwit, cb) {
28
    var keyIndex = 9999;
29
    var network = client.testnet ? bitcoin.networks.testnet : bitcoin.networks.bitcoin;
30
31
    var primarySeed = bip39.mnemonicToSeed(primaryMnemonic, passphrase);
32
    var primaryPrivateKey = bitcoin.HDNode.fromSeedBuffer(primarySeed, network);
33
34
    var backupSeed = bip39.mnemonicToSeed(backupMnemonic, "");
35
    var backupPrivateKey = bitcoin.HDNode.fromSeedBuffer(backupSeed, network);
36
    var backupPublicKey = backupPrivateKey.neutered();
37
38
    var checksum = primaryPrivateKey.getAddress();
39
    var primaryPublicKey = primaryPrivateKey.deriveHardened(keyIndex).neutered();
40
41
    client.storeNewWalletV1(
42
        identifier,
43
        [primaryPublicKey.toBase58(), "M/" + keyIndex + "'"],
44
        [backupPublicKey.toBase58(), "M"],
45
        primaryMnemonic,
46
        checksum,
47
        keyIndex,
48
        segwit
49
    ).then(function(result) {
50
        var blocktrailPublicKeys = _.mapValues(result.blocktrail_public_keys, function(blocktrailPublicKey) {
51
            return bitcoin.HDNode.fromBase58(blocktrailPublicKey[0], network);
52
        });
53
54
        var wallet = new blocktrail.Wallet(
55
            client,
56
            identifier,
57
            blocktrail.Wallet.WALLET_VERSION_V1,
58
            primaryMnemonic,
59
            null,
60
            null,
61
            {keyIndex: primaryPublicKey},
62
            backupPublicKey,
63
            blocktrailPublicKeys,
64
            keyIndex,
65
            result.segwit || 0,
66
            client.testnet,
67
            checksum
68
        );
69
70
        wallet.unlock({
71
            passphrase: passphrase
72
        }, function(err) {
73
            cb(err, wallet);
74
        });
75
76
    }, function(err) {
77
        return cb(err);
78
    });
79
};
80
81
var createDiscoveryTestWallet = function(identifier, passphrase, cb) {
82
    var primaryMnemonic = "give pause forget seed dance crawl situate hole kingdom";

tools/setup-dev-account.js 1 location

@@ 21-72 (lines=52) @@
18
    TRANSACTION_TEST_WALLET_BACKUP_MNEMONIC = "give pause forget seed dance crawl situate hole give",
19
    TRANSACTION_TEST_WALLET_PASSWORD = "password";
20
21
var _createTestWallet = function(identifier, passphrase, primaryMnemonic, backupMnemonic, segwit, cb) {
22
    var keyIndex = 9999;
23
    var network = client.testnet ? bitcoin.networks.testnet : bitcoin.networks.bitcoin;
24
25
    var primarySeed = bip39.mnemonicToSeed(primaryMnemonic, passphrase);
26
    var primaryPrivateKey = bitcoin.HDNode.fromSeedBuffer(primarySeed, network);
27
28
    var backupSeed = bip39.mnemonicToSeed(backupMnemonic, "");
29
    var backupPrivateKey = bitcoin.HDNode.fromSeedBuffer(backupSeed, network);
30
    var backupPublicKey = backupPrivateKey.neutered();
31
32
    var checksum = primaryPrivateKey.getAddress();
33
    var primaryPublicKey = primaryPrivateKey.deriveHardened(keyIndex).neutered();
34
35
    client.storeNewWalletV1(
36
        identifier,
37
        [primaryPublicKey.toBase58(), "M/" + keyIndex + "'"],
38
        [backupPublicKey.toBase58(), "M"],
39
        primaryMnemonic,
40
        checksum,
41
        keyIndex,
42
        segwit
43
    ).then(function(result) {
44
        var blocktrailPublicKeys = _.mapValues(result.blocktrail_public_keys, function(blocktrailPublicKey) {
45
            return bitcoin.HDNode.fromBase58(blocktrailPublicKey[0], network);
46
        });
47
48
        var wallet = new blocktrail.Wallet(
49
            client,
50
            identifier,
51
            blocktrail.Wallet.WALLET_VERSION_V1,
52
            primaryMnemonic,
53
            null,
54
            null,
55
            {keyIndex: primaryPublicKey},
56
            backupPublicKey,
57
            blocktrailPublicKeys,
58
            keyIndex,
59
            result.segwit || 0,
60
            client.testnet,
61
            checksum
62
        );
63
64
        wallet.unlock({
65
            passphrase: passphrase
66
        }, function(err) {
67
            cb(err, wallet);
68
        });
69
    }, function(err) {
70
        cb(err);
71
    });
72
};
73
74
var createDiscoveryTestWallet = function(identifier, passphrase, cb) {
75
    var primaryMnemonic = "give pause forget seed dance crawl situate hole kingdom";