export function validatePositiveInteger()

in glean/src/core/metrics/utils.ts [69:87]


export function validatePositiveInteger(v: unknown, zeroIsValid = true): MetricValidationResult {
  if (!isInteger(v)) {
    return {
      type: MetricValidation.Error,
      errorMessage: `Expected integer value, got ${JSON.stringify(v)}`
    };
  }

  const validation = zeroIsValid ? v < 0 : v <= 0;
  if (validation) {
    return {
      type: MetricValidation.Error,
      errorMessage: `Expected positive value, got ${JSON.stringify(v)}`,
      errorType: ErrorType.InvalidValue
    };
  }

  return { type: MetricValidation.Success };
}