testcafe selector and expect timeout options are not absolutely clear

I have a following examples:

import moment from 'moment';
import { Selector } from 'testcafe';

fixture `A set of examples that illustrate how to use TestCafe API`
    .page `https://devexpress.github.io/testcafe/example/`
    .after(async ctx => {
        console.log(`End: ${moment().format("HH:mm:ss:SSS")}`)
    } )

// !!!!!!!!!!! "selectorTimeout": 15000,

// ~15 sec
test('Test Selector', async t => {
    console.log(`Start: ${moment().format("HH:mm:ss:SSS")}`)
    await t.click(Selector("asdasdasd"));
    console.log(`End: ${moment().format("HH:mm:ss:SSS")}`)
});

// ~15 sec
test('Test expect', async t => {
    console.log(`Start: ${moment().format("HH:mm:ss:SSS")}`)
    await t.expect(Selector("asdasdasd").visible).ok("");
    console.log(`End: ${moment().format("HH:mm:ss:SSS")}`)
});

// ~6 sec
test('Test expect with selector time out', async t => {
    console.log(`Start: ${moment().format("HH:mm:ss:SSS")}`)
    await t.expect(Selector("asdasdasd", {timeout: 6000}).visible).ok("");
    console.log(`End: ${moment().format("HH:mm:ss:SSS")}`)
});

// ~15 sec
test('Test expect with time out', async t => {
    console.log(`Start: ${moment().format("HH:mm:ss:SSS")}`)
    await t.expect(Selector("asdasdasd").visible).ok("", {timeout: 6000});
    console.log(`End: ${moment().format("HH:mm:ss:SSS")}`)
});

the outcome for the first 3 are clear to me, but what about 4th one? I would like to wait for 6 seconds instead of selectorTimeout. Why it does not pickup specified timeout and does not override the selector one?
Another weird case is that testcafe(at the bottom of browser) shows green light, supposedly expect is passed, but the test fail.