API reference for Angular Material button-testing

import {MatButtonHarness} from '@angular/material/button/testing';

Harness for interacting with a MDC-based mat-button in tests.

Properties
Name Description

static hostSelector: `[mat-button], [mat-raised-button], [mat-flat-button], [mat-icon-button], [mat-stroked-button], [mat-fab], [mat-mini-fab]`

Methods
async
blur

Blurs the button and returns a void promise that indicates when the action is complete.

Returns
Promise<void>

Promise that resolves when the action completes.

async
click

Clicks the button at the given position relative to its top-left.

Parameters

relativeX

number

The relative x position of the click.

relativeY

number

The relative y position of the click.

Returns
Promise<void>

Promise that resolves when the action completes.

async
click

Clicks the button at its center.

Parameters

location

"center"

Returns
Promise<void>

Promise that resolves when the action completes.

async
click

Clicks the button.

Returns
Promise<void>

Promise that resolves when the action completes.

async
focus

Focuses the button and returns a void promise that indicates when the action is complete.

Returns
Promise<void>

Promise that resolves when the action completes.

async
getAllChildLoaders
Parameters

selector

S

Returns
Promise<HarnessLoader[]>

async
getAllHarnesses
Parameters

query

HarnessQuery<T>

Returns
Promise<T[]>

async
getChildLoader
Parameters

selector

S

Returns
Promise<HarnessLoader>

async
getHarness
Parameters

query

HarnessQuery<T>

Returns
Promise<T>

async
getHarnessOrNull
Parameters

query

HarnessQuery<T>

Returns
Promise<T | null>

async
getText

Gets a promise for the button's label text.

Returns
Promise<string>

async
getVariant

Gets the variant of the button.

Returns
Promise<ButtonVariant>

async
hasHarness
Parameters

query

HarnessQuery<T>

Returns
Promise<boolean>

async
host

Gets a Promise for the TestElement representing the host element of the component.

Returns
Promise<TestElement>

async
isDisabled

Gets a boolean promise indicating if the button is disabled.

Returns
Promise<boolean>

async
isFocused

Whether the button is focused.

Returns
Promise<boolean>

static
with

Gets a HarnessPredicate that can be used to search for a button with specific attributes.

Parameters

options

ButtonHarnessFilters = {}

Options for narrowing the search:

  • selector finds a button whose host element matches the given selector.
  • text finds a button with specific text content.
  • variant finds buttons matching a specific variant.

Returns
HarnessPredicate<T>

a HarnessPredicate configured with the given options.

A set of criteria that can be used to filter a list of button harness instances.

Properties
Name Description

disabled: boolean

Only find instances which match the given disabled state.

text: string | RegExp

Only find instances whose text matches the given value.

variant: ButtonVariant

Only find instances with a variant.

Possible button appearances.

type ButtonVariant = 'basic' | 'raised' | 'flat' | 'icon' | 'stroked' | 'fab' | 'mini-fab';