});
},
+// Network can be set to dash
+function() {
+page.open(url, function(status) {
+ // set the phrase and coin
+ var expected = "XdbhtMuGsPSkE6bPdNTHoFSszQKmK4S5LT";
+ page.evaluate(function() {
+ $(".phrase").val("abandon abandon ability");
+ $(".phrase").trigger("input");
+ $(".network option[selected]").removeAttr("selected");
+ $(".network option[value=10]").prop("selected", true);
+ $(".network").trigger("change");
+ });
+ // check the address is generated correctly
+ waitForGenerate(function() {
+ var actual = page.evaluate(function() {
+ return $(".address:first").text();
+ });
+ if (actual != expected) {
+ console.log("DASH address is incorrect");
+ console.log("Expected: " + expected);
+ console.log("Actual: " + actual);
+ fail();
+ }
+ next();
+ });
+});
+},
+
// BIP39 seed is set from phrase
function() {
page.open(url, function(status) {
$(".phrase").val("abandon abandon ability");
$(".phrase").trigger("input");
});
- // check the path is not shown
waitForGenerate(function() {
// toggle path visibility
page.evaluate(function() {
},
// Addresses are shown in order of derivation path
+function() {
+page.open(url, function(status) {
+ // set the phrase
+ page.evaluate(function() {
+ $(".phrase").val("abandon abandon ability").trigger("input");
+ });
+ // get the derivation paths
+ waitForGenerate(function() {
+ var paths = page.evaluate(function() {
+ return $(".index").map(function(i, e) {
+ return $(e).text();
+ });
+ });
+ if (paths.length != 20) {
+ console.log("Total paths is less than expected: " + paths.length);
+ fail();
+ }
+ for (var i=0; i<paths.length; i++) {
+ var expected = "m/44'/0'/0'/0/" + i;
+ var actual = paths[i];
+ if (actual != expected) {
+ console.log("Path " + i + " is incorrect");
+ console.log("Expected: " + expected);
+ console.log("Actual: " + actual);
+ fail();
+ }
+ }
+ next();
+ });
+});
+},
+
// Address visibility can be toggled
+function() {
+page.open(url, function(status) {
+ // set the phrase
+ page.evaluate(function() {
+ $(".phrase").val("abandon abandon ability");
+ $(".phrase").trigger("input");
+ });
+ waitForGenerate(function() {
+ // toggle address visibility
+ page.evaluate(function() {
+ $(".address-toggle").click();
+ });
+ // check the address is not visible
+ var isInvisible = page.evaluate(function() {
+ return $(".address:first span").hasClass("invisible");
+ });
+ if (!isInvisible) {
+ console.log("Toggled address is visible");
+ fail();
+ }
+ next();
+ });
+});
+},
+
// Private key is shown
// Private key visibility can be toggled
// Github Issue 23: Use correct derivation path when changing tabs
// https://github.com/dcpos/bip39/issues/23
+// Github Issue 26: When using a Root key derrived altcoins are incorrect
+// https://github.com/dcpos/bip39/issues/26
+
];
console.log("Running tests...");