X-Git-Url: https://git.immae.eu/?p=perso%2FImmae%2FProjets%2FCryptomonnaies%2FBIP39.git;a=blobdiff_plain;f=tests%2Fspec%2Ftests.js;h=b2c3addd2da52dd8c049e1a19d46a1fce0a58f5b;hp=bdc5909acef7cdb2350bd2501a6e07d09a6f9075;hb=a67554c649438a4c16feb9806e48ce6dc8f4be75;hpb=516c16d721db88b4b2c39964e2d5e8f6310c7bff diff --git a/tests/spec/tests.js b/tests/spec/tests.js index bdc5909..b2c3add 100644 --- a/tests/spec/tests.js +++ b/tests/spec/tests.js @@ -412,6 +412,13 @@ it('Allows selection of bitcoin testnet', function(done) { }; testNetwork(done, params); }); +it('Allows selection of bitcoin regtest', function(done) { + var params = { + selectText: "BTC - Bitcoin RegTest", + firstAddress: "mucaU5iiDaJDb69BHLeDv8JFfGiyg2nJKi", + }; + testNetwork(done, params); +}); it('Allows selection of litecoin', function(done) { var params = { selectText: "LTC - Litecoin", @@ -588,7 +595,6 @@ it('Allows selection of ethereum', function(done) { firstAddress: "0xe5815d5902Ad612d49283DEdEc02100Bd44C2772", }; testNetwork(done, params); - // TODO test private key and public key }); it('Allows selection of slimcoin', function(done) { var params = { @@ -1629,6 +1635,27 @@ it('Allows selection of Thought', function(done) { }; testNetwork(done, params); }); +it('Allows selection of EtherCore', function(done) { + var params = { + selectText: "ERE - EtherCore", + firstAddress: "0x119e6EAC3Ce1b473D62d9fD847fb0ea222eF1D9e", + }; + testNetwork(done, params); +}); +it('Allows selection of RBTC - RSK', function(done) { + var params = { + selectText: "RBTC - RSK", + firstAddress: "RGtz5TDdtviAZ9haz1YAUNQzcGVFm5bQrP", + }; + testNetwork(done, params); +}); +it('Allows selection of tRBTC - RSK Testnet', function(done) { + var params = { + selectText: "tRBTC - RSK Testnet", + firstAddress: "RHkrWgnSdJHxQAqEsMErhUUa4icXY6xUUC", + }; + testNetwork(done, params); +}); // BIP39 seed is set from phrase it('Sets the bip39 seed from the prhase', function(done) { @@ -2002,11 +2029,7 @@ it('Allows the user to set the BIP32 root key', function(done) { }); // Setting BIP32 root key clears the existing phrase, passphrase and seed -// TODO this doesn't work in selenium with chrome it('Confirms the existing phrase should be cleared', function(done) { - if (browser == "chrome") { - pending("Selenium + Chrome headless bug for alert, see https://stackoverflow.com/q/45242264"); - } driver.findElement(By.css('.phrase')) .sendKeys('A non-blank but invalid value'); driver.findElement(By.css('.root-key')) @@ -2020,11 +2043,7 @@ it('Confirms the existing phrase should be cleared', function(done) { }); // Clearing of phrase, passphrase and seed can be cancelled by user -// TODO this doesn't work in selenium with chrome it('Allows the clearing of the phrase to be cancelled', function(done) { - if (browser == "chrome") { - pending("Selenium + Chrome headless bug for alert, see https://stackoverflow.com/q/45242264"); - } driver.findElement(By.css('.phrase')) .sendKeys('abandon abandon ability'); driver.sleep(generateDelay).then(function() { @@ -4243,7 +4262,7 @@ it('Converts mnemonics into raw entropy', function(done) { driver.findElement(By.css('.entropy')) .getAttribute("value") .then(function(entropy) { - expect(entropy).toBe("00000000000000000000000000000001"); + expect(entropy).toBe("00000001"); driver.findElement(By.css('.phrase')) .getAttribute("value") .then(function(phrase) { @@ -4329,4 +4348,33 @@ it('Allows entropy type to be manually selected', function(done) { }); }); +// https://github.com/iancoleman/bip39/issues/388 +// Make field for bip39 seed editable +it('Generates addresses when seed is set', function(done) { + driver.findElement(By.css('.seed')) + .sendKeys("20da140d3dd1df8713cefcc4d54ce0e445b4151027a1ab567b832f6da5fcc5afc1c3a3f199ab78b8e0ab4652efd7f414ac2c9a3b81bceb879a70f377aa0a58f3"); + driver.sleep(generateDelay).then(function() { + getFirstAddress(function(address) { + expect(address).toBe("1Di3Vp7tBWtyQaDABLAjfWtF6V7hYKJtug"); + done(); + }); + }); +}); + +// https://github.com/iancoleman/bip39/issues/169 +it('Generates ethereum addresses from a public key', function(done) { + var pubkey = "xpub68UK3hrMEp2jLPxPASgXSiqiUsQsUWZHCeuu6NqcJLt259LMeWzwDyufXLN1QmjLeLRY5he4QfArDDLbsXiw3xN3kFcYtyDy74BY73RPhhW"; + driver.findElement(By.css('.root-key')) + .sendKeys(pubkey); + driver.findElement(By.css('#bip32-tab a')) + .click() + selectNetwork('ETH - Ethereum'); + driver.sleep(generateDelay).then(function() { + getFirstAddress(function(address) { + expect(address).toBe("0x1Bd54748903438C7E386b4a3fCbe16237A316a98"); + done(); + }); + }); +}); + });