t.expect.ok Method
Assertion method. Succeeds if x is truthy.
t.expect(x).ok(message, options) → this | Promise<unknown>
| Parameter | Type | Description | 
|---|---|---|
x | 
Any type | The only operand of the assertion (see the x parameter). | 
message (optional) | 
String | Custom assertion error message. | 
options (optional) | 
Object | See Options. | 
Examples:
await t.expect('ok').ok('this assertion will pass');
try {
    await t.expect(false).ok('this assertion will fail');
}
catch (e) {
    await t.expect(e.errMsg).eql('AssertionError: this assertion will fail: expected false to be truthy');
}
import { Selector } from 'testcafe';
fixture`TestController.expect.ok`
    .page`https://devexpress.github.io/testcafe/example/`;
test('Element should exists', async t => {
    await t.expect(Selector('#developer-name').exists).ok();
});
the x parameter
x is the only operand of the assertion.
If x contains a selector property, a client function, or any other compatible function, the assertion becomes subject to the Smart Assertion Query Mechanism.
Options
options.timeout
Type: Number
If x contains a compatible function, the assertion is subject to the Smart Assertion Query Mechanism.
If such an assertion fails, TestCafe executes it again until it meets either of the following criteria:
- The assertion succeeds.
 - The assertion timeout elapses.
 
await t.expect(Selector('h1').innerText).eql('text', 'check element text', { timeout: 20000 });
To set the timeout for the entire test run, define the assertion timeout in one of the following ways:
- Set the assertionTimeout configuration file option.
 - Set the assertion-timeout CLI option.
 - Set the assertionTimeout Runner API option.
 
Note
The timeout option applies to built-in TestCafe assertion methods. Use the t.wait() method to specify timeouts for third-party assertion methods (assert  or chai).
options.allowUnawaitedPromise
TestCafe awaits Promises from compatible asynchronous functions. If your assertion includes a custom function that returns a Promise, the assertion fails.
When you create assertions, avoid the use of custom functions that return a Promise. If you can’t work around this limitation, use the allowUnawaitedPromise option:
await t
        .expect(new Promise(resolve => setTimeout(resolve, 100)))
        .ok('received a promise', { allowUnawaitedPromise: true });