From 6bf0a5cb5034a7e684dcc3500e841785237ce2dd Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 19:32:43 +0200 Subject: Adding upstream version 1:115.7.0. Signed-off-by: Daniel Baumann --- .../test/unit/test_getCategoriesFromFieldNames.js | 95 ++++++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 browser/extensions/formautofill/test/unit/test_getCategoriesFromFieldNames.js (limited to 'browser/extensions/formautofill/test/unit/test_getCategoriesFromFieldNames.js') diff --git a/browser/extensions/formautofill/test/unit/test_getCategoriesFromFieldNames.js b/browser/extensions/formautofill/test/unit/test_getCategoriesFromFieldNames.js new file mode 100644 index 0000000000..66f4c18ea9 --- /dev/null +++ b/browser/extensions/formautofill/test/unit/test_getCategoriesFromFieldNames.js @@ -0,0 +1,95 @@ +"use strict"; + +var FormAutofillUtils; +add_task(async function () { + ({ FormAutofillUtils } = ChromeUtils.importESModule( + "resource://gre/modules/shared/FormAutofillUtils.sys.mjs" + )); +}); + +add_task(async function test_isAddressField_isCreditCardField() { + const TEST_CASES = { + "given-name": { + isAddressField: true, + isCreditCardField: false, + }, + organization: { + isAddressField: true, + isCreditCardField: false, + }, + "address-line2": { + isAddressField: true, + isCreditCardField: false, + }, + tel: { + isAddressField: true, + isCreditCardField: false, + }, + email: { + isAddressField: true, + isCreditCardField: false, + }, + "cc-number": { + isAddressField: false, + isCreditCardField: true, + }, + UNKNOWN: { + isAddressField: false, + isCreditCardField: false, + }, + "": { + isAddressField: false, + isCreditCardField: false, + }, + }; + + for (let fieldName of Object.keys(TEST_CASES)) { + info("Starting testcase: " + fieldName); + let field = TEST_CASES[fieldName]; + Assert.equal( + FormAutofillUtils.isAddressField(fieldName), + field.isAddressField, + "isAddressField" + ); + Assert.equal( + FormAutofillUtils.isCreditCardField(fieldName), + field.isCreditCardField, + "isCreditCardField" + ); + } +}); + +add_task(async function test_getCategoriesFromFieldNames() { + const TEST_CASES = [ + { + fieldNames: ["given-name", "family-name", "name", "tel", "organization"], + set: ["name", "tel", "organization"], + }, + { + fieldNames: [ + "address-line2", + "family-name", + "name", + "tel", + "organization", + "email", + ], + set: ["address", "name", "tel", "organization", "email"], + }, + { + fieldNames: ["address-line2", "family-name", "", "name", "tel", "UNKOWN"], + set: ["address", "name", "tel"], + }, + { + fieldNames: ["tel", "family-name", "", "name", "tel", "UNKOWN"], + set: ["tel", "name"], + }, + ]; + + for (let tc of TEST_CASES) { + let categories = FormAutofillUtils.getCategoriesFromFieldNames( + tc.fieldNames + ); + Assert.deepEqual(Array.from(categories), tc.set); + } +}); -- cgit v1.2.3