fill method infrastructure ✓ 100.0%
Last updated: 2026-03-04T23:21:38.389Z
Metrics
LOC: 46
Complexity: 5
Params: 2
Coverage: 100.0% (20/20 lines, 0x executed)
Signature
fill(wrapper: HTMLElement, _value: string): : Promise<boolean>
Source Code
async fill(wrapper: HTMLElement, _value: string): Promise<boolean> {
// Open the tree select dropdown
const selector = wrapper.querySelector<HTMLElement>(".ant-select-selector");
if (!selector) {
log.warn(
`Seletor .ant-select-selector não encontrado em: ${getUniqueSelector(wrapper)}`,
);
return false;
}
simulateClick(selector);
// Wait for the dropdown to appear
const dropdown = await waitForElement(".ant-tree-select-dropdown", 500);
if (!dropdown) {
log.warn(
`Dropdown .ant-tree-select-dropdown não apareceu (timeout 500ms) para: ${getUniqueSelector(wrapper)}`,
);
return false;
}
// Find leaf nodes (nodes without children that can be selected)
const nodes = dropdown.querySelectorAll<HTMLElement>(
".ant-select-tree-treenode:not(.ant-select-tree-treenode-disabled)",
);
if (nodes.length === 0) {
log.warn(
`Nenhum nó disponível no tree-select dropdown para: ${getUniqueSelector(wrapper)}`,
);
return false;
}
// Pick a random node
const idx = Math.floor(Math.random() * nodes.length);
const titleEl = nodes[idx].querySelector<HTMLElement>(
".ant-select-tree-title",
);
if (titleEl) {
simulateClick(titleEl);
return true;
}
simulateClick(nodes[idx]);
return true;
},
Dependencies (Outgoing)
| Target | Type |
|---|---|
| simulateClick | calls |
| waitForElement | calls |
No incoming dependencies.