test_known_strings.js (2817B)
1 "use strict"; 2 /* global FormAutofillHeuristics: true */ 3 4 const KNOWN_NAMES = { 5 "cc-name": ["cc-name", "card-name", "cardholder-name", "cardholder"], 6 "cc-number": [ 7 "cc-number", 8 "cc-num", 9 "card-number", 10 "card-num", 11 "number", 12 "cc", 13 "cc-no", 14 "card-no", 15 "credit-card", 16 "numero-carte", 17 "carte", 18 "carte-credit", 19 "num-carte", 20 "cb-num", 21 ], 22 "cc-exp": [ 23 "cc-exp", 24 "card-exp", 25 "cc-expiration", 26 "card-expiration", 27 "cc-ex", 28 "card-ex", 29 "card-expire", 30 "card-expiry", 31 "validite", 32 "expiration", 33 "expiry", 34 "mm-yy", 35 "mm-yyyy", 36 "yy-mm", 37 "yyyy-mm", 38 "expiration-date", 39 "payment-card-expiration", 40 "payment-cc-date", 41 ], 42 "cc-exp-month": [ 43 "exp-month", 44 "cc-exp-month", 45 "cc-month", 46 "card-month", 47 "cc-mo", 48 "card-mo", 49 "exp-mo", 50 "card-exp-mo", 51 "cc-exp-mo", 52 "card-expiration-month", 53 "expiration-month", 54 "cc-mm", 55 "cc-m", 56 "card-mm", 57 "card-m", 58 "card-exp-mm", 59 "cc-exp-mm", 60 "exp-mm", 61 "exp-m", 62 "expire-month", 63 "expire-mo", 64 "expiry-month", 65 "expiry-mo", 66 "card-expire-month", 67 "card-expire-mo", 68 "card-expiry-month", 69 "card-expiry-mo", 70 "mois-validite", 71 "mois-expiration", 72 "m-validite", 73 "m-expiration", 74 "expiry-date-field-month", 75 "expiration-date-month", 76 "expiration-date-mm", 77 "exp-mon", 78 "validity-mo", 79 "exp-date-mo", 80 "cb-date-mois", 81 "date-m", 82 ], 83 "cc-exp-year": [ 84 "exp-year", 85 "cc-exp-year", 86 "cc-year", 87 "card-year", 88 "cc-yr", 89 "card-yr", 90 "exp-yr", 91 "card-exp-yr", 92 "cc-exp-yr", 93 "card-expiration-year", 94 "expiration-year", 95 "cc-yy", 96 "cc-y", 97 "card-yy", 98 "card-y", 99 "card-exp-yy", 100 "cc-exp-yy", 101 "exp-yy", 102 "exp-y", 103 "cc-yyyy", 104 "card-yyyy", 105 "card-exp-yyyy", 106 "cc-exp-yyyy", 107 "expire-year", 108 "expire-yr", 109 "expiry-year", 110 "expiry-yr", 111 "card-expire-year", 112 "card-expire-yr", 113 "card-expiry-year", 114 "card-expiry-yr", 115 "an-validite", 116 "an-expiration", 117 "annee-validite", 118 "annee-expiration", 119 "expiry-date-field-year", 120 "expiration-date-year", 121 "cb-date-ann", 122 "expiration-date-yy", 123 "expiration-date-yyyy", 124 "validity-year", 125 "exp-date-year", 126 "date-y", 127 ], 128 }; 129 130 add_setup(async () => { 131 ({ FormAutofillHeuristics } = ChromeUtils.importESModule( 132 "resource://gre/modules/shared/FormAutofillHeuristics.sys.mjs" 133 )); 134 }); 135 136 for (let field in KNOWN_NAMES) { 137 KNOWN_NAMES[field].forEach(name => { 138 add_task(async () => { 139 ok( 140 FormAutofillHeuristics.testRegex( 141 FormAutofillHeuristics.RULES[field], 142 name 143 ), 144 `RegExp for ${field} matches string '${name}'` 145 ); 146 }); 147 }); 148 }