All files validatemethods.js

100% Statements 26/26
100% Branches 16/16
100% Functions 7/7
100% Lines 26/26

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67                    2x 1x 1x   1x         2x 1x 1x   1x         2x 1x 1x   1x         4x 1x 1x   3x       2x 1x 1x   1x         7x 243x       7x 1x 1x   6x      
import {
  nameRegexPattern,
  emailRegexPattern,
  phoneUKRegexPattern,
  postcodeUKRegexPattern,
  numberPlateRegexArray,
} from './regexpatterns.js';
 
export function validateFirstName(name) {
  // validates first name
  if (!nameRegexPattern.test(name) || name.length > 30) {
    window.alert('Please enter a valid first name.');
    return;
  }
  return name;
}
 
export function validateLastName(name) {
  // validates last name
  if (!nameRegexPattern.test(name) || name.length > 30) {
    window.alert('Please enter a valid last name.');
    return;
  }
  return name;
}
 
export function validateEmail(email) {
  // validates email is in correct pattern
  if (!emailRegexPattern.test(email)) {
    window.alert('Please enter a valid email address.');
    return;
  }
  return email;
}
 
export function validatePhone(phone) {
  // validates phone number
  if (!phoneUKRegexPattern.test(phone)) {
    window.alert('Please enter a valid UK phone number.');
    return;
  }
  return phone;
}
 
export function validatePostcode(postcode) {
  if (!postcodeUKRegexPattern.test(postcode)) {
    window.alert('Please enter a valid UK postcode.');
    return;
  }
  return postcode;
}
 
export function validateNumberPlate(regNumber) {
  // Test entered reg number against array
  const matchesAny = numberPlateRegexArray.some((regex) =>
    regex.test(regNumber)
  );
 
  // reject if a string has been entered and no match is found
  if (!matchesAny) {
    window.alert('Not a valid UK number plate');
    return;
  } else {
    return regNumber;
  }
}