]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/BIP39.git/blobdiff - tests.js
Test suggested word for first four letters of word
[perso/Immae/Projets/Cryptomonnaies/BIP39.git] / tests.js
index 19a371272c705a51c786a8ca10495ae57580c0cc..48e863b5f91759b7cb7b520e38bffc65d54011ed 100644 (file)
--- a/tests.js
+++ b/tests.js
@@ -1562,6 +1562,31 @@ page.open(url, function(status) {
 });
 },
 
+// Github pull request 48
+// First four letters of word shows that word, not closest
+// since first four letters gives unique word in BIP39 wordlist
+// eg ille should show illegal, not idle
+function() {
+page.open(url, function(status) {
+    // set the incomplete word
+    page.evaluate(function() {
+        $(".phrase").val("ille").trigger("input");
+    });
+    // check there is a suggestion shown
+    waitForFeedback(function() {
+        var feedback = page.evaluate(function() {
+            return $(".feedback").text();
+        });
+        if (feedback.indexOf("did you mean illegal?") < 0) {
+            console.log("Start of word does not show correct suggestion");
+            console.log("Error: " + error);
+            fail();
+        }
+        next();
+    });
+});
+},
+
 // Incorrect BIP32 root key shows error
 function() {
 page.open(url, function(status) {
@@ -2155,10 +2180,10 @@ page.open(url, function(status) {
             return e.message;
         }
         // Leading zeros for card entropy as binary string.
-        // Card entropy is hashed so 2c does not produce leading zeros.
+        // Card entropy is hashed so 2c does not necessarily produce leading zeros.
         try {
-            e = Entropy.fromString("4c");
-            if (e.binaryStr != "0001") {
+            e = Entropy.fromString("2c");
+            if (e.binaryStr != "0010") {
                 return "Card entropy as binary has leading zeros";
             }
         }
@@ -2190,24 +2215,24 @@ page.open(url, function(status) {
         // [ cards, binary ]
         try {
             var cards = [
-                [ "ac", "0100" ],
-                [ "acqs", "10111101" ],
-                [ "acks", "11110000" ],
-                [ "2cac", "11000010" ],
-                [ "2c", "1000" ],
-                [ "3d", "1111" ],
-                [ "4h", "0011" ],
+                [ "ac", "0101" ],
+                [ "acqs", "11011100" ],
+                [ "acks", "01011100" ],
+                [ "2cac", "11111000" ],
+                [ "2c", "0010" ],
+                [ "3d", "0001" ],
+                [ "4h", "1001" ],
                 [ "5s", "1001" ],
-                [ "6c", "1011" ],
-                [ "7d", "1101" ],
+                [ "6c", "0000" ],
+                [ "7d", "0001" ],
                 [ "8h", "1011" ],
-                [ "9s", "1010" ],
-                [ "tc", "1101" ],
-                [ "jd", "1101" ],
-                [ "qh", "1100" ],
-                [ "ks", "1111" ],
-                [ "ks2c", "10000001" ],
-                [ "KS2C", "10000001" ],
+                [ "9s", "0010" ],
+                [ "tc", "1001" ],
+                [ "jd", "1111" ],
+                [ "qh", "0010" ],
+                [ "ks", "0101" ],
+                [ "ks2c", "01010100" ],
+                [ "KS2C", "01010100" ],
             ];
             for (var i=0; i<cards.length; i++) {
                 var card = cards[i][0];
@@ -3241,6 +3266,30 @@ page.open(url, function(status) {
 });
 },
 
+// github issue 39
+// no root key shows feedback
+function() {
+page.open(url, function(status) {
+    // click the bip32 tab on fresh page
+    page.evaluate(function() {
+        $("#bip32-tab a").click();
+    });
+    waitForFeedback(function() {
+        // Check feedback is correct
+        var expected = "No root key";
+        var actual = page.evaluate(function() {
+            return $(".feedback").text();
+        });
+        if (actual != expected) {
+            console.log("Blank root key not detected");
+            console.log("Expected: " + expected);
+            console.log("Actual: " + actual);
+            fail();
+        }
+        next();
+    });
+});
+},
 
 // If you wish to add more tests, do so here...