{
  "stats": {
    "suites": 1,
    "tests": 1,
    "passes": 0,
    "pending": 0,
    "failures": 1,
    "start": "2025-11-07T20:13:05.976Z",
    "end": "2025-11-07T20:13:11.338Z",
    "duration": 5362,
    "testsRegistered": 1,
    "passPercent": 0,
    "pendingPercent": 0,
    "other": 0,
    "hasOther": false,
    "skipped": 0,
    "hasSkipped": false
  },
  "results": [
    {
      "uuid": "524e46d4-5d2d-4c09-bfa1-117b781a8b56",
      "title": "",
      "fullFile": "cypress\\e2e\\analise_visual_fallback_fluxo.cy.js",
      "file": "cypress\\e2e\\analise_visual_fallback_fluxo.cy.js",
      "beforeHooks": [],
      "afterHooks": [],
      "tests": [],
      "suites": [
        {
          "uuid": "d231b2bf-a68b-4d7f-a459-0d9dc06885c9",
          "title": "Relatórios - Análise Visual (fallback sem fluxo)",
          "fullFile": "",
          "file": "",
          "beforeHooks": [],
          "afterHooks": [],
          "tests": [
            {
              "title": "Renderiza usando dados de Receber/Pagar quando fluxo retorna 404",
              "fullTitle": "Relatórios - Análise Visual (fallback sem fluxo) Renderiza usando dados de Receber/Pagar quando fluxo retorna 404",
              "timedOut": null,
              "duration": 5298,
              "state": "failed",
              "speed": null,
              "pass": false,
              "fail": true,
              "pending": false,
              "context": null,
              "code": "// Fluxo falha (ex.: tabela bank_transactions ausente)\ncy.intercept('GET', '/api/financeiro/relatorios/fluxo*', {\n  statusCode: 404,\n  body: {\n    error: 'Tabela bank_transactions não encontrada'\n  }\n}).as('fluxoFalha');\n// Resumo Receber com série de recebidos\ncy.intercept('GET', '/api/financeiro/relatorios/receber/resumo*', {\n  statusCode: 200,\n  body: {\n    totals: {\n      recebido: 2500,\n      pendente: 1000,\n      vencido: 300,\n      total_geral: 3800\n    },\n    series: [{\n      data: '2024-01-05',\n      a_receber: 700,\n      recebidos: 400\n    }, {\n      data: '2024-01-12',\n      a_receber: 600,\n      recebidos: 500\n    }, {\n      data: '2024-01-25',\n      a_receber: 500,\n      recebidos: 600\n    }]\n  }\n}).as('recResumo');\n// Resumo Pagar com série de pagos\ncy.intercept('GET', '/api/financeiro/relatorios/pagar/resumo*', {\n  statusCode: 200,\n  body: {\n    totals: {\n      pago: 1800,\n      pendente: 900,\n      vencido: 200,\n      total_geral: 2900\n    },\n    series: [{\n      data: '2024-01-07',\n      a_pagar: 800,\n      pagos: 300\n    }, {\n      data: '2024-01-12',\n      a_pagar: 600,\n      pagos: 400\n    }, {\n      data: '2024-01-20',\n      a_pagar: 500,\n      pagos: 500\n    }]\n  }\n}).as('payResumo');\ncy.visit('/financeiro/relatorios');\ncy.get('#dataInicio').clear().type('2024-01-01');\ncy.get('#dataFim').clear().type('2024-01-31');\ncy.get('#btnGerar').click();\ncy.wait('@fluxoFalha');\ncy.wait(['@recResumo', '@payResumo']);\n// Deve renderizar barras de Entradas vs Saídas via fallback\ncy.get('#graficoEntradaSaida').find('div[role=\"img\"]').should('have.length', 2);\ncy.get('#graficoEntradaSaidaLegend').contains('Entradas').should('exist');\ncy.get('#graficoEntradaSaidaLegend').contains('Saídas').should('exist');\n// Evolução mensal deve ter pelo menos 1 mês agregado\ncy.get('#graficoEvolucao').find('div').should('exist');\ncy.get('#graficoEvolucaoLegend').contains('Entradas').should('exist');\ncy.get('#graficoEvolucaoLegend').contains('Saídas').should('exist');",
              "err": {
                "message": "AssertionError: Timed out retrying after 4000ms: Expected to find element: `#dataInicio`, but never found it.",
                "estack": "AssertionError: Timed out retrying after 4000ms: Expected to find element: `#dataInicio`, but never found it.\n    at Context.eval (webpack://gestoreasy-v3/./cypress/e2e/analise_visual_fallback_fluxo.cy.js:36:7)",
                "diff": null
              },
              "uuid": "c8e25082-f135-43fa-95f2-673bad8962b3",
              "parentUUID": "d231b2bf-a68b-4d7f-a459-0d9dc06885c9",
              "isHook": false,
              "skipped": false
            }
          ],
          "suites": [],
          "passes": [],
          "failures": [
            "c8e25082-f135-43fa-95f2-673bad8962b3"
          ],
          "pending": [],
          "skipped": [],
          "duration": 5298,
          "root": false,
          "rootEmpty": false,
          "_timeout": 2000
        }
      ],
      "passes": [],
      "failures": [],
      "pending": [],
      "skipped": [],
      "duration": 0,
      "root": true,
      "rootEmpty": true,
      "_timeout": 2000
    }
  ],
  "meta": {
    "mocha": {
      "version": "7.0.1"
    },
    "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"
    }
  }
}