CEC-5591: strip out special characters in vehicle search (#496)

This commit is contained in:
Tristan Timblin
2024-01-18 13:26:06 -08:00
committed by GitHub
parent ea5d9db790
commit 40c3ec94b0
2 changed files with 18 additions and 0 deletions

View File

@@ -14,6 +14,8 @@ function parseVin(vin = "") {
return [true, vin.replace(prefix, "")];
}
vin = vin.replace(/[^\p{L}\d]/gu, '');
var re = new RegExp("^[A-HJ-NPR-Z0-9]{8}[0-9X][A-HJ-NPR-Z0-9]{2}[0-9]{6}$");
return [vin.match(re), vin];
}

View File

@@ -89,6 +89,22 @@ describe("useQuery", () => {
["test", "VCF1EBE2008016235,VCF1EBE20PG001002,VCF1EBE20PG001162", "test vin:VCF1EBE2008016235 vin:VCF1EBE20PG001002 vin:VCF1EBE20PG001162"]
],
[
"parses a space separated search query with special characters",
"[ocean] pe@r a!aska r*nin",
["[ocean] pe@r a!aska r*nin", "", "[ocean] pe@r a!aska r*nin"]
],
[
"parses a space separated vin query with special characters",
"[\"VCF1EBE2008016235\", \"VCF1EBE20PG001002\", \"VCF1EBE20PG001162\"]",
["", "VCF1EBE2008016235,VCF1EBE20PG001002,VCF1EBE20PG001162", "vin:VCF1EBE2008016235 vin:VCF1EBE20PG001002 vin:VCF1EBE20PG001162"]
],
[
"parses a space separated mixed search and vin query with special characters",
"te$t VCF1EBE20@*(08016235 [VCF1EBE2]0PG001002 VCF*1EBE20PG001162",
["te$t", "VCF1EBE2008016235,VCF1EBE20PG001002,VCF1EBE20PG001162", "te$t vin:VCF1EBE2008016235 vin:VCF1EBE20PG001002 vin:VCF1EBE20PG001162"]
],
[
"trims extraneous values from search",
"ocean,, , ,,,,pear,,, ",