feat(platform): show unresolved vehicle lookup state
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import { describe, expect, test } from 'vitest';
|
||||
import type { QualityIssueRow } from '../api/types';
|
||||
import { qualityIssueVehicleLookup } from './vehicleLookup';
|
||||
import { isLikelyVIN, qualityIssueVehicleLookup } from './vehicleLookup';
|
||||
|
||||
function issue(row: Partial<QualityIssueRow>): QualityIssueRow {
|
||||
return {
|
||||
@@ -39,3 +39,13 @@ describe('qualityIssueVehicleLookup', () => {
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('isLikelyVIN', () => {
|
||||
test('accepts a 17-character VIN', () => {
|
||||
expect(isLikelyVIN('LA9GG68L2PBAF4773')).toBe(true);
|
||||
});
|
||||
|
||||
test('rejects phone-like lookup keys', () => {
|
||||
expect(isLikelyVIN('64646848247')).toBe(false);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -5,6 +5,10 @@ export type VehicleLookup = {
|
||||
label: string;
|
||||
};
|
||||
|
||||
export function isLikelyVIN(value?: string) {
|
||||
return /^[A-HJ-NPR-Z0-9]{17}$/i.test(value?.trim() ?? '');
|
||||
}
|
||||
|
||||
export function qualityIssueVehicleLookup(row: QualityIssueRow): VehicleLookup {
|
||||
const vin = row.vin?.trim();
|
||||
if (vin && vin !== 'unknown') {
|
||||
|
||||
Reference in New Issue
Block a user