]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/BIP39.git/commitdiff
Duplicate card detection is case insensitive
authorIan Coleman <coleman.ian@gmail.com>
Thu, 17 Nov 2016 00:34:09 +0000 (11:34 +1100)
committerIan Coleman <coleman.ian@gmail.com>
Thu, 17 Nov 2016 00:34:09 +0000 (11:34 +1100)
src/js/index.js
tests.js

index f354399cc2d09130601cc1d1136fd07297cf99ae..6a81601cd5c738b5abc8f4504d5cce59575e4e84 100644 (file)
             var dupeTracker = {};
             for (var i=0; i<entropy.base.parts.length; i++) {
                 var card = entropy.base.parts[i];
-                if (card in dupeTracker) {
+                var cardUpper = card.toUpperCase();
+                if (cardUpper in dupeTracker) {
                     dupes.push(card);
                 }
-                dupeTracker[card] = true;
+                dupeTracker[cardUpper] = true;
             }
             if (dupes.length > 0) {
                 var dupeWord = "duplicates";
index c3d741835d26c5dcf203baaac2055fa28a3b4bb2..a0de5febd8ee3ceb56165b11226d8b10898cfceb 100644 (file)
--- a/tests.js
+++ b/tests.js
@@ -2673,6 +2673,23 @@ page.open(url, function(status) {
             words: 54,
             strength: "extremely strong",
         },
+        // Case insensitivity to duplicate cards
+        {
+            entropy: "asAS",
+            type: "card (1 duplicate: AS)",
+            events: 2,
+            bits: 12,
+            words: 0,
+            strength: "extremely weak",
+        },
+        {
+            entropy: "ASas",
+            type: "card (1 duplicate: as)",
+            events: 2,
+            bits: 12,
+            words: 0,
+            strength: "extremely weak",
+        },
     ];
     // use entropy
     page.evaluate(function() {