{
  "stats": {
    "suites": 1,
    "tests": 1,
    "passes": 0,
    "pending": 0,
    "failures": 1,
    "start": "2025-11-07T10:21:05.324Z",
    "end": "2025-11-07T10:21:11.006Z",
    "duration": 5682,
    "testsRegistered": 10,
    "passPercent": 0,
    "pendingPercent": 0,
    "other": 0,
    "hasOther": false,
    "skipped": 9,
    "hasSkipped": true
  },
  "results": [
    {
      "uuid": "e16678a1-4877-45ea-8148-f61d4444687c",
      "title": "",
      "fullFile": "cypress\\e2e\\financeiro_receber.cy.js",
      "file": "cypress\\e2e\\financeiro_receber.cy.js",
      "beforeHooks": [],
      "afterHooks": [],
      "tests": [],
      "suites": [
        {
          "uuid": "80e1252e-26a6-4134-96df-b2bf819d7eb7",
          "title": "Financeiro > Contas a Receber",
          "fullFile": "",
          "file": "",
          "beforeHooks": [],
          "afterHooks": [],
          "tests": [
            {
              "title": "carrega lista e exibe totais e badges",
              "fullTitle": "Financeiro > Contas a Receber carrega lista e exibe totais e badges",
              "timedOut": null,
              "duration": 5587,
              "state": "failed",
              "speed": null,
              "pass": false,
              "fail": true,
              "pending": false,
              "context": null,
              "code": "cy.get('#contasTableBody tr').should('have.length.greaterThan', 0);\ncy.get('#totalValor').should('contain.text', 'Valor');\ncy.get('#totalPendentes').should('have.class', 'badge').and('have.class', 'badge-warning');\ncy.get('#totalVencidos').should('have.class', 'badge').and('have.class', 'badge-danger');\ncy.get('#totalRecebidosStatus').should('have.class', 'badge').and('have.class', 'badge-success');",
              "err": {
                "message": "CypressError: Timed out retrying after 5000ms: `cy.wait()` timed out waiting `5000ms` for the 1st request to the route: `getReceber`. No request ever occurred.\n\nhttps://on.cypress.io/wait\n\nBecause this error occurred during a `before each` hook we are skipping the remaining tests in the current suite: `Financeiro > Contas a Receber`",
                "estack": "CypressError: Timed out retrying after 5000ms: `cy.wait()` timed out waiting `5000ms` for the 1st request to the route: `getReceber`. No request ever occurred.\n\nhttps://on.cypress.io/wait\n\nBecause this error occurred during a `before each` hook we are skipping the remaining tests in the current suite: `Financeiro > Contas a Receber`\n    at cypressErr (http://localhost:8000/__cypress/runner/cypress_runner.js:77954:18)\n    at Object.errByPath (http://localhost:8000/__cypress/runner/cypress_runner.js:78022:10)\n    at checkForXhr (http://localhost:8000/__cypress/runner/cypress_runner.js:138285:84)\n    at <unknown> (http://localhost:8000/__cypress/runner/cypress_runner.js:138310:28)\n    at tryCatcher (http://localhost:8000/__cypress/runner/cypress_runner.js:1777:23)\n    at Promise.attempt.Promise.try (http://localhost:8000/__cypress/runner/cypress_runner.js:4285:29)\n    at whenStable (http://localhost:8000/__cypress/runner/cypress_runner.js:151356:68)\n    at <unknown> (http://localhost:8000/__cypress/runner/cypress_runner.js:151297:14)\n    at tryCatcher (http://localhost:8000/__cypress/runner/cypress_runner.js:1777:23)\n    at Promise._settlePromiseFromHandler (http://localhost:8000/__cypress/runner/cypress_runner.js:1489:31)\n    at Promise._settlePromise (http://localhost:8000/__cypress/runner/cypress_runner.js:1546:18)\n    at Promise._settlePromise0 (http://localhost:8000/__cypress/runner/cypress_runner.js:1591:10)\n    at Promise._settlePromises (http://localhost:8000/__cypress/runner/cypress_runner.js:1671:18)\n    at Promise._fulfill (http://localhost:8000/__cypress/runner/cypress_runner.js:1615:18)\n    at <unknown> (http://localhost:8000/__cypress/runner/cypress_runner.js:5420:46)\nFrom Your Spec Code:\n    at Context.eval (webpack://gestoreasy-v3/./cypress/e2e/financeiro_receber.cy.js:49:7)",
                "diff": null
              },
              "uuid": "07e53a32-e940-4437-a89c-9abc49618d5a",
              "parentUUID": "80e1252e-26a6-4134-96df-b2bf819d7eb7",
              "isHook": false,
              "skipped": false
            },
            {
              "title": "filtra por status e mostra loading ao buscar",
              "fullTitle": "Financeiro > Contas a Receber filtra por status e mostra loading ao buscar",
              "timedOut": null,
              "duration": 0,
              "state": "skipped",
              "speed": null,
              "pass": false,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "cy.get('#statusFilter').select('pendente');\ncy.get('#btnSearch').click();\ncy.get('#contasTableBody').contains('Carregando contas...');\ncy.wait('@getReceber');\ncy.get('#contasTableBody tr').should('have.length.greaterThan', 0);",
              "err": {},
              "uuid": "4bb42ff2-dcc9-4d47-8bd7-c02abb9b1b27",
              "parentUUID": "80e1252e-26a6-4134-96df-b2bf819d7eb7",
              "isHook": false,
              "skipped": true
            },
            {
              "title": "abre modal Nova Conta, valida campos e envia",
              "fullTitle": "Financeiro > Contas a Receber abre modal Nova Conta, valida campos e envia",
              "timedOut": null,
              "duration": 0,
              "state": "skipped",
              "speed": null,
              "pass": false,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "// alert foi substituído por notifyBar nas validações\ncy.get('#btnNovaConta').click();\ncy.get('#contaModal').should('be.visible');\ncy.get('#descricao').focus().type('Parcela 01/2025');\ncy.get('#valor').type('0');\ncy.get('#data_vencimento').type('2025-11-30');\ncy.get('#cliente').type('AC');\ncy.get('#contaForm').submit();\ncy.get('#notifyBar').should('be.visible').and('have.class', 'alert-error');\ncy.get('#valor').clear().type('100');\ncy.get('#contaForm').submit();\ncy.wait('@postReceber');\ncy.get('#contaModal').should('not.be.visible');",
              "err": {},
              "uuid": "2fc44b89-3ee6-4b01-9257-52be4e73652f",
              "parentUUID": "80e1252e-26a6-4134-96df-b2bf819d7eb7",
              "isHook": false,
              "skipped": true
            },
            {
              "title": "autocomplete de cliente e documento funciona",
              "fullTitle": "Financeiro > Contas a Receber autocomplete de cliente e documento funciona",
              "timedOut": null,
              "duration": 0,
              "state": "skipped",
              "speed": null,
              "pass": false,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "cy.get('#btnNovaConta').click();\ncy.get('#cliente').type('AC');\ncy.wait('@getClientes');\ncy.get('#clientesList').find('option').should('have.length.at.least', 1);\ncy.get('#documento').type('NF');\ncy.wait('@getReceber');\ncy.get('#documentosList').find('option').should('have.length.at.least', 1);",
              "err": {},
              "uuid": "952b50ae-ef8b-45a2-9fb1-da7a36d06177",
              "parentUUID": "80e1252e-26a6-4134-96df-b2bf819d7eb7",
              "isHook": false,
              "skipped": true
            },
            {
              "title": "recebimento individual: abre modal, preenche e envia",
              "fullTitle": "Financeiro > Contas a Receber recebimento individual: abre modal, preenche e envia",
              "timedOut": null,
              "duration": 0,
              "state": "skipped",
              "speed": null,
              "pass": false,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "// botão Receber tem aria-label\ncy.contains('button[aria-label^=\"Receber conta\"]', '💰').first().click();\ncy.get('#recebimentoModal').should('be.visible');\ncy.get('#valor_recebido').should('have.value');\n// validação: não aceita 0 e nem maior que o valor da conta (mock: 250)\ncy.get('#valor_recebido').clear().type('0');\ncy.get('#recebimentoForm').submit();\ncy.get('#notifyBar').should('be.visible').and('have.class', 'alert-error');\ncy.get('#valor_recebido').clear().type('300');\ncy.get('#recebimentoForm').submit();\ncy.get('#notifyBar').should('be.visible').and('have.class', 'alert-error');\ncy.get('#valor_recebido').clear().type('250');\ncy.get('#recebimentoForm').submit();\ncy.wait('@postReceber');\ncy.get('#recebimentoModal').should('not.be.visible');",
              "err": {},
              "uuid": "1ca769a7-155a-407e-802c-b247ffb04763",
              "parentUUID": "80e1252e-26a6-4134-96df-b2bf819d7eb7",
              "isHook": false,
              "skipped": true
            },
            {
              "title": "recebimento em lote: seleciona, abre modal e confirma",
              "fullTitle": "Financeiro > Contas a Receber recebimento em lote: seleciona, abre modal e confirma",
              "timedOut": null,
              "duration": 0,
              "state": "skipped",
              "speed": null,
              "pass": false,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "cy.get('input.row-select').first().check();\ncy.get('#btnBulkReceber').should('not.be.disabled').click();\ncy.get('#bulkRecebimentoModal').should('be.visible');\ncy.get('#bulkRecebimentoForm').submit();\ncy.wait('@getReceberById');\ncy.wait('@postReceber');\ncy.get('#bulkRecebimentoModal').should('not.be.visible');\ncy.get('#notifyBar').should('be.visible').and('have.class', 'alert-success');",
              "err": {},
              "uuid": "63e75926-310f-47cc-bb6e-4b73efcd55e7",
              "parentUUID": "80e1252e-26a6-4134-96df-b2bf819d7eb7",
              "isHook": false,
              "skipped": true
            },
            {
              "title": "busca geral tem autocomplete com sugestões",
              "fullTitle": "Financeiro > Contas a Receber busca geral tem autocomplete com sugestões",
              "timedOut": null,
              "duration": 0,
              "state": "skipped",
              "speed": null,
              "pass": false,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "cy.get('#searchInput').type('Men');\ncy.wait('@getReceber');\ncy.get('#searchList').find('option').should('have.length.at.least', 1);",
              "err": {},
              "uuid": "4d05ac6d-435b-4aec-a38b-b4b220da3c15",
              "parentUUID": "80e1252e-26a6-4134-96df-b2bf819d7eb7",
              "isHook": false,
              "skipped": true
            },
            {
              "title": "modais têm acessibilidade e controles de minimizar/maximizar",
              "fullTitle": "Financeiro > Contas a Receber modais têm acessibilidade e controles de minimizar/maximizar",
              "timedOut": null,
              "duration": 0,
              "state": "skipped",
              "speed": null,
              "pass": false,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "cy.get('#btnNovaConta').click();\ncy.get('#contaModal').should('have.attr', 'role', 'dialog').and('have.attr', 'aria-modal', 'true');\ncy.get('.modal-min').click();\ncy.get('#contaModal').should('have.class', 'modal-minimized');\ncy.get('.modal-max').click();\ncy.get('#contaModal').should('have.class', 'modal-maximized');\n// clique fora (overlay) fecha\ncy.get('#contaModal').click('topLeft');\ncy.get('#contaModal').should('not.be.visible');",
              "err": {},
              "uuid": "79adb483-99ea-42e3-bf17-93979794f17c",
              "parentUUID": "80e1252e-26a6-4134-96df-b2bf819d7eb7",
              "isHook": false,
              "skipped": true
            },
            {
              "title": "focus-trap e restauração de foco funcionam nos modais",
              "fullTitle": "Financeiro > Contas a Receber focus-trap e restauração de foco funcionam nos modais",
              "timedOut": null,
              "duration": 0,
              "state": "skipped",
              "speed": null,
              "pass": false,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "// abrir modal e verificar ciclo de Tab entre primeiro e último foco\ncy.get('#btnNovaConta').focus().click();\ncy.get('#contaModal').should('be.visible');\n// pressionar Shift+Tab no primeiro foco deve ir para o último\ncy.get('#descricao').focus().type('{shift}{tab}');\ncy.focused().should('exist');\n// fechar com ESC e restaurar foco ao botão que abriu\ncy.get('body').type('{esc}');\ncy.get('#contaModal').should('not.be.visible');\ncy.focused().should('have.attr', 'id', 'btnNovaConta');",
              "err": {},
              "uuid": "e2e3678b-d904-4d9f-ab33-259aef0fee05",
              "parentUUID": "80e1252e-26a6-4134-96df-b2bf819d7eb7",
              "isHook": false,
              "skipped": true
            },
            {
              "title": "autocomplete de cliente preenche cliente_id oculto",
              "fullTitle": "Financeiro > Contas a Receber autocomplete de cliente preenche cliente_id oculto",
              "timedOut": null,
              "duration": 0,
              "state": "skipped",
              "speed": null,
              "pass": false,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "cy.get('#btnNovaConta').click();\ncy.get('#cliente').type('AC');\ncy.wait('@getClientes');\n// selecionar exatamente \"ACME Ltda\" simulando blur\ncy.get('#cliente').clear().type('ACME Ltda').blur();\ncy.get('#cliente_id').should('have.value', '10');",
              "err": {},
              "uuid": "a9fe9d44-5420-47dc-95e5-f5fc9af65c4b",
              "parentUUID": "80e1252e-26a6-4134-96df-b2bf819d7eb7",
              "isHook": false,
              "skipped": true
            }
          ],
          "suites": [],
          "passes": [],
          "failures": [
            "07e53a32-e940-4437-a89c-9abc49618d5a"
          ],
          "pending": [],
          "skipped": [
            "4bb42ff2-dcc9-4d47-8bd7-c02abb9b1b27",
            "2fc44b89-3ee6-4b01-9257-52be4e73652f",
            "952b50ae-ef8b-45a2-9fb1-da7a36d06177",
            "1ca769a7-155a-407e-802c-b247ffb04763",
            "63e75926-310f-47cc-bb6e-4b73efcd55e7",
            "4d05ac6d-435b-4aec-a38b-b4b220da3c15",
            "79adb483-99ea-42e3-bf17-93979794f17c",
            "e2e3678b-d904-4d9f-ab33-259aef0fee05",
            "a9fe9d44-5420-47dc-95e5-f5fc9af65c4b"
          ],
          "duration": 5587,
          "root": false,
          "rootEmpty": false,
          "_timeout": 2000
        }
      ],
      "passes": [],
      "failures": [],
      "pending": [],
      "skipped": [],
      "duration": 0,
      "root": true,
      "rootEmpty": true,
      "_timeout": 2000
    }
  ],
  "meta": {
    "mocha": {
      "version": "7.2.0"
    },
    "mochawesome": {
      "options": {
        "quiet": true,
        "reportFilename": "mochawesome",
        "saveHtml": true,
        "saveJson": true,
        "consoleReporter": "spec",
        "useInlineDiffs": false,
        "code": true
      },
      "version": "7.1.4"
    },
    "marge": {
      "options": {
        "id": "default",
        "reportDir": "cypress/reports/mochawesome",
        "overwrite": false,
        "html": true,
        "json": true,
        "quiet": true
      },
      "version": "6.3.2"
    }
  }
}