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)

graph LR fill["fill"] simulateClick["simulateClick"] waitForElement["waitForElement"] fill -->|calls| simulateClick fill -->|calls| waitForElement style fill fill:#dbeafe,stroke:#2563eb,stroke-width:2px click fill "13430689889ed27d.html" click simulateClick "7c6c21320aaee4c4.html" click waitForElement "230bbf0882ca7c81.html"
TargetType
simulateClick calls
waitForElement calls

No incoming dependencies.