ow
Options
All
  • Public
  • Public/Protected
  • All
Menu

Type parameters

  • T1 = unknown

  • T2 = unknown

Hierarchy

  • Predicate<Map<T1, T2>>
    • MapPredicate

Implements

  • BasePredicate<Map<T1, T2>>

Index

Accessors

empty

  • get empty(): this

nonEmpty

  • get nonEmpty(): this

not

  • get not(): this

Methods

Protected addValidator

  • addValidator(validator: Validator<Map<T1, T2>>): this
  • Register a new validator.

    Parameters

    • validator: Validator<Map<T1, T2>>

      Validator to register.

    Returns this

deepEqual

  • deepEqual(expected: Map<T1, T2>): this
  • Test a Map to be deeply equal to the provided Map.

    Parameters

    • expected: Map<T1, T2>

      Expected Map to match.

    Returns this

hasAnyKeys

  • hasAnyKeys(...keys: readonly T1[]): this
  • Test a Map to include any of the provided keys. The keys are tested by identity, not structure.

    Parameters

    • Rest ...keys: readonly T1[]

      The keys that could be a key in the Map.

    Returns this

hasAnyValues

  • hasAnyValues(...values: readonly T2[]): this
  • Test a Map to include any of the provided values. The values are tested by identity, not structure.

    Parameters

    • Rest ...values: readonly T2[]

      The values that could be a value in the Map.

    Returns this

hasKeys

  • hasKeys(...keys: readonly T1[]): this
  • Test a Map to include all the provided keys. The keys are tested by identity, not structure.

    Parameters

    • Rest ...keys: readonly T1[]

      The keys that should be a key in the Map.

    Returns this

hasValues

  • hasValues(...values: readonly T2[]): this
  • Test a Map to include all the provided values. The values are tested by identity, not structure.

    Parameters

    • Rest ...values: readonly T2[]

      The values that should be a value in the Map.

    Returns this

is

  • is(validator: (value: Map<T1, T2>) => boolean | string): this
  • Test if the value matches a custom validation function. The validation function should return true if the value passes the function. If the function either returns false or a string, the function fails and the string will be used as error message.

    Parameters

    • validator: (value: Map<T1, T2>) => boolean | string

      Validation function.

        • (value: Map<T1, T2>): boolean | string
        • Parameters

          • value: Map<T1, T2>

          Returns boolean | string

    Returns this

keysOfType

  • keysOfType(predicate: Predicate<T1>): this
  • Test all the keys in the Map to match the provided predicate.

    Parameters

    • predicate: Predicate<T1>

      The predicate that should be applied against every key in the Map.

    Returns this

maxSize

  • maxSize(size: number): this
  • Test an Map to have a maximum size.

    Parameters

    • size: number

      The maximum size of the Map.

    Returns this

message

  • Provide a new error message to be thrown when the validation fails.

    example
    ow('🌈', 'unicorn', ow.string.equals('🦄').message('Expected unicorn, got rainbow'));
    //=> ArgumentError: Expected unicorn, got rainbow
    example
    ow('🌈', ow.string.minLength(5).message((value, label) => `Expected ${label}, to have a minimum length of 5, got \`${value}\``));
    //=> ArgumentError: Expected string, to be have a minimum length of 5, got `🌈`

    Parameters

    • newMessage: string | ValidatorMessageBuilder<Map<T1, T2>>

      Either a string containing the new message or a function returning the new message.

    Returns this

minSize

  • minSize(size: number): this
  • Test an Map to have a minimum size.

    Parameters

    • size: number

      The minimum size of the Map.

    Returns this

size

  • size(size: number): this

validate

  • Test if the value matches a custom validation function. The validation function should return an object containing a validator and message. If the validator is false, the validation fails and the message will be used as error message. If the message is a function, the function is invoked with the label as argument to let you further customize the error message.

    Parameters

    • customValidator: CustomValidator<Map<T1, T2>>

      Custom validation function.

    Returns this

valuesOfType

  • valuesOfType(predicate: Predicate<T2>): this
  • Test all the values in the Map to match the provided predicate.

    Parameters

    • predicate: Predicate<T2>

      The predicate that should be applied against every value in the Map.

    Returns this