diff --git a/cli/CHANGELOG.md b/cli/CHANGELOG.md index 31b72ee2ac7d..cfc8e01bf01a 100644 --- a/cli/CHANGELOG.md +++ b/cli/CHANGELOG.md @@ -8,6 +8,7 @@ _Released 06/20/2023 (PENDING)_ - Added support for running Cypress tests with [Chrome's new `--headless=new` flag](https://developer.chrome.com/articles/new-headless/). Chrome versions 112 and above will now be run in the `headless` mode that matches the `headed` browser implementation. Addresses [#25972](https://github.com/cypress-io/cypress/issues/25972). - Cypress can now test pages with targeted `Content-Security-Policy` and `Content-Security-Policy-Report-Only` header directives by specifying the allow list via the [`experimentalCspAllowList`](https://docs.cypress.io/guides/references/configuration#Experimental-Csp-Allow-List) configuration option. Addresses [#1030](https://github.com/cypress-io/cypress/issues/1030). Addressed in [#26483](https://github.com/cypress-io/cypress/pull/26483) - The [`videoCompression`](https://docs.cypress.io/guides/references/configuration#Videos) configuration option now accepts both a boolean or a Constant Rate Factor (CRF) number between `1` and `51`. The `videoCompression` default value is still `32` CRF and when `videoCompression` is set to `true` the default of `32` CRF will be used. Addresses [#26658](https://github.com/cypress-io/cypress/issues/26658). +- The Cypress Cloud data shown on the [Specs](https://docs.cypress.io/guides/core-concepts/cypress-app#Specs) page and [Runs](https://docs.cypress.io/guides/core-concepts/cypress-app#Runs) page will now reflect Cloud Runs that match the current Git tree if Git is being used. Addresses [#26693](https://github.com/cypress-io/cypress/issues/26693). **Bugfixes:** diff --git a/packages/app/cypress/e2e/debug.cy.ts b/packages/app/cypress/e2e/debug.cy.ts index a6efd30ff43b..4ffd130cdab3 100644 --- a/packages/app/cypress/e2e/debug.cy.ts +++ b/packages/app/cypress/e2e/debug.cy.ts @@ -1,5 +1,7 @@ import type { OpenFileInIdeQuery } from '../../src/generated/graphql-test' import RelevantRunsDataSource_RunsByCommitShas from '../fixtures/gql-RelevantRunsDataSource_RunsByCommitShas.json' +import DebugDataPassing from '../fixtures/debug-Passing/gql-Debug.json' +import DebugDataFailing from '../fixtures/debug-Failing/gql-Debug.json' Cypress.on('window:before:load', (win) => { win.__CYPRESS_GQL_NO_SOCKET__ = 'true' @@ -16,45 +18,26 @@ describe('App - Debug Page', () => { cy.startAppServer('component') cy.loginUser() - cy.withCtx((ctx) => { + cy.withCtx((ctx, o) => { ctx.git?.__setGitHashesForTesting(['commit1', 'commit2']) + o.sinon.stub(ctx.lifecycleManager.git!, 'currentBranch').value('fakeBranch') }) + }) + it('all tests passed', () => { cy.remoteGraphQLIntercept((obj, _testState, options) => { if (obj.operationName === 'RelevantRunsDataSource_RunsByCommitShas') { obj.result.data = options.RelevantRunsDataSource_RunsByCommitShas.data } - return obj.result - }, { RelevantRunsDataSource_RunsByCommitShas }) - }) - - it('all tests passed', () => { - // This mocks all the responses so we can get deterministic - // results to test the debug page. - cy.intercept('query-Debug', { - fixture: 'debug-Passing/gql-Debug.json', - }) - - cy.intercept('query-CloudViewerAndProject_RequiredData', { - fixture: 'debug-Passing/gql-CloudViewerAndProject_RequiredData.json', - }) - - cy.intercept('query-MainAppQuery', { - fixture: 'debug-Passing/gql-MainAppQuery.json', - }) - - cy.intercept('query-SideBarNavigationContainer', { - fixture: 'debug-Passing/gql-SideBarNavigationContainer', - }) - - cy.intercept('query-HeaderBar_HeaderBarQuery', { - fixture: 'debug-Passing/gql-HeaderBar_HeaderBarQuery', - }) + if (obj.operationName === 'Debug_currentProject_cloudProject_cloudProjectBySlug') { + if (obj.result.data) { + obj.result.data.cloudProjectBySlug.runByNumber = options.DebugDataPassing.data.currentProject.cloudProject.runByNumber + } + } - cy.intercept('query-SpecsPageContainer', { - fixture: 'debug-Passing/gql-SpecsPageContainer', - }) + return obj.result + }, { RelevantRunsDataSource_RunsByCommitShas, DebugDataPassing }) cy.visitApp() @@ -84,32 +67,24 @@ describe('App - Debug Page', () => { cy.findByTestId('debug-passed').contains('All your tests passed.') cy.findByLabelText('Relevant run passed').should('be.visible').contains('0') cy.findByTestId('run-failures').should('not.exist') + + cy.get('[data-cy="debug-badge"]').should('be.visible').contains('0') }) it('shows information about a failed spec', () => { - cy.intercept('query-Debug', { - fixture: 'debug-Failing/gql-Debug.json', - }) - - cy.intercept('query-CloudViewerAndProject_RequiredData', { - fixture: 'debug-Failing/gql-CloudViewerAndProject_RequiredData.json', - }) - - cy.intercept('query-MainAppQuery', { - fixture: 'debug-Failing/gql-MainAppQuery.json', - }) - - cy.intercept('query-SideBarNavigationContainer', { - fixture: 'debug-Failing/gql-SideBarNavigationContainer', - }) + cy.remoteGraphQLIntercept((obj, _testState, options) => { + if (obj.operationName === 'RelevantRunsDataSource_RunsByCommitShas') { + obj.result.data = options.RelevantRunsDataSource_RunsByCommitShas.data + } - cy.intercept('query-HeaderBar_HeaderBarQuery', { - fixture: 'debug-Failing/gql-HeaderBar_HeaderBarQuery', - }) + if (obj.operationName === 'Debug_currentProject_cloudProject_cloudProjectBySlug') { + if (obj.result.data) { + obj.result.data.cloudProjectBySlug.runByNumber = options.DebugDataFailing.data.currentProject.cloudProject.runByNumber + } + } - cy.intercept('query-SpecsPageContainer', { - fixture: 'debug-Failing/gql-SpecsPageContainer', - }) + return obj.result + }, { RelevantRunsDataSource_RunsByCommitShas, DebugDataFailing }) cy.intercept('query-OpenFileInIDE', (req) => { req.on('response', (res) => { @@ -152,7 +127,7 @@ describe('App - Debug Page', () => { }) cy.findByTestId('spec-contents').within(() => { - cy.contains('src/components/InfoPanel/InfoPanel.cy.ts') + cy.contains('src/NewComponent.spec.jsx') cy.findByTestId('metaData-Results-spec-duration').contains('00:04') cy.findByTestId('metaData-Results-operating-system').contains('Linux Ubuntu') cy.findByTestId('metaData-Results-browser').contains('Electron 106') @@ -161,12 +136,95 @@ describe('App - Debug Page', () => { cy.findByTestId('test-row').contains('InfoPanel') cy.findByTestId('test-row').contains('renders') - cy.findByTestId('run-failures').should('exist').should('have.attr', 'href', '#/specs/runner?file=src/components/InfoPanel/InfoPanel.cy.ts&mode=debug') + cy.findByTestId('run-failures').should('exist').should('have.attr', 'href', '#/specs/runner?file=src/NewComponent.spec.jsx&mode=debug') cy.findByLabelText('Open in IDE').click() cy.wait('@openFileInIDE') cy.withCtx((ctx) => { - expect(ctx.actions.file.openFile).to.have.been.calledWith('src/components/InfoPanel/InfoPanel.cy.ts', 1, 1) + expect(ctx.actions.file.openFile).to.have.been.calledWith('src/NewComponent.spec.jsx', 1, 1) + }) + }) + + it('shows running and updating build', () => { + cy.remoteGraphQLIntercept((obj, _testState, options) => { + if (obj.operationName === 'RelevantRunsDataSource_RunsByCommitShas') { + obj.result.data = options.RelevantRunsDataSource_RunsByCommitShas.data + } + + const originalRun = options.DebugDataFailing.data.currentProject.cloudProject.runByNumber + + if (options.testRun === undefined) { + options.testRun = JSON.parse(JSON.stringify(originalRun)) + } + + const run = options.testRun + + run.totalInstanceCount = 5 + if (run.completedInstanceCount === undefined) { + run.completedInstanceCount = 0 + run.createdAt = (new Date()).toISOString() + } + + if (run.totalInstanceCount === run.completedInstanceCount) { + run.status = 'FAILED' + } else { + run.status = 'RUNNING' + } + + if (run.completedInstanceCount < 3) { + run.testsForReview = [] + } else { + run.testsForReview = originalRun.testsForReview + } + + run.totalFailed = run.testsForReview.length + run.totalPassed = run.completedInstanceCount - run.totalFailed + + if (obj.operationName === 'Debug_currentProject_cloudProject_cloudProjectBySlug') { + if (obj.result.data) { + obj.result.data.cloudProjectBySlug.runByNumber = run + } + } + + if (obj.operationName === 'RelevantRunSpecsDataSource_Specs' && obj.result.data) { + //NOTE Figure out how to manually trigger polling instead of adjusting polling intervals + obj.result.data.pollingIntervals = { + __typename: 'CloudPollingIntervals', + runByNumber: 1, //Increase polling interval for debugging test + } + + if (run.totalInstanceCount === run.completedInstanceCount) { + obj.result.data.pollingIntervals.runByNumber = 100 + } else { + run.completedInstanceCount = run.completedInstanceCount !== undefined ? ++run.completedInstanceCount : 0 + } + + obj.result.data.cloudNodesByIds = [ + run, + ] + } + + return obj.result + }, { RelevantRunsDataSource_RunsByCommitShas, DebugDataFailing }) + + cy.visitApp() + + cy.findByTestId('sidebar-link-debug-page').click() + cy.findByTestId('debug-container').should('be.visible') + + cy.findByTestId('header-top').contains('chore: testing cypress') + + cy.findByTestId('debug-testing-progress').as('progress') + + cy.get('@progress').contains('Testing in progress...') + cy.get('[data-cy="debug-badge"]').contains('0').should('be.visible') + cy.get('@progress').contains('1 of 5 specs completed') + cy.get('@progress').contains('2 of 5 specs completed') + cy.get('@progress').contains('3 of 5 specs completed') + cy.get('[data-cy="debug-badge"]').contains('1').should('be.visible') + + cy.findByTestId('spec-contents').within(() => { + cy.contains('src/NewComponent.spec.jsx') }) }) }) diff --git a/packages/app/cypress/e2e/runs.cy.ts b/packages/app/cypress/e2e/runs.cy.ts index 30c1d5e69f87..f53d861efd85 100644 --- a/packages/app/cypress/e2e/runs.cy.ts +++ b/packages/app/cypress/e2e/runs.cy.ts @@ -2,10 +2,6 @@ import defaultMessages from '@packages/frontend-shared/src/locales/en-US.json' import type { SinonStub } from 'sinon' function moveToRunsPage (): void { - cy.withCtx((ctx, o) => { - o.sinon.stub(ctx.lifecycleManager.git!, 'currentBranch').value('fakeBranch') - }) - cy.findByTestId('sidebar-link-runs-page').click() cy.findByTestId('app-header-bar').findByText('Runs').should('be.visible') cy.findByTestId('runs-container').should('be.visible') @@ -38,15 +34,12 @@ describe('App: Runs', { viewportWidth: 1200 }, () => { cy.scaffoldProject('component-tests') cy.openProject('component-tests') cy.startAppServer('component') - cy.withCtx((ctx, o) => { - o.sinon.stub(ctx.lifecycleManager.git!, 'currentBranch').value('fakeBranch') - }) }) it('resolves the runs page', () => { cy.loginUser() cy.visitApp() - cy.get('[href="#/runs"]', { timeout: 1000 }).click() + moveToRunsPage() cy.get('[data-cy="runs"]') cy.get('[data-cy="app-header-bar"]').findByText('Runs').should('be.visible') }) @@ -322,7 +315,7 @@ describe('App: Runs', { viewportWidth: 1200 }, () => { cy.withCtx(async (ctx, o) => { o.sinon.spy(ctx.cloud, 'executeRemoteGraphQL') - o.sinon.stub(ctx.lifecycleManager.git!, 'currentBranch').value('fakeBranch') + //o.sinon.stub(ctx.lifecycleManager.git!, 'currentBranch').value('fakeBranch') const config = await ctx.project.getConfig() expect(config.projectId).to.not.equal('newProjectId') @@ -648,98 +641,156 @@ describe('App: Runs', { viewportWidth: 1200 }, () => { }) context('Runs - Runs List', () => { - beforeEach(() => { - cy.scaffoldProject('component-tests') - cy.openProject('component-tests') - cy.startAppServer('component') - }) + context('no Git data', () => { + beforeEach(() => { + cy.scaffoldProject('component-tests') + cy.openProject('component-tests') + cy.startAppServer('component') + }) - it('displays a list of recorded runs if a run has been recorded', () => { - cy.loginUser() - cy.visitApp() - moveToRunsPage() - cy.get('[data-cy="runs"]') - }) + it('displays a list of recorded runs if a run has been recorded', () => { + cy.loginUser() + cy.visitApp() + moveToRunsPage() + cy.get('[data-cy="runs"]') + }) - it('displays each run with correct information', () => { - cy.loginUser() - cy.visitApp() - moveToRunsPage() + it('displays each run with correct information', () => { + cy.loginUser() + cy.visitApp() + moveToRunsPage() - cy.get('[href^="http://dummy.cypress.io/runs/0"]').first().within(() => { - cy.findByText('fix: make gql work CANCELLED') - cy.get('[data-cy="run-card-icon-CANCELLED"]') - }) + cy.get('[href^="http://dummy.cypress.io/runs/0"]').first().within(() => { + cy.findByText('fix: make gql work CANCELLED') + cy.get('[data-cy="run-card-icon-CANCELLED"]') + }) - cy.get('[href^="http://dummy.cypress.io/runs/1"]').first().within(() => { - cy.findByText('fix: make gql work ERRORED') - cy.get('[data-cy="run-card-icon-ERRORED"]') - }) + cy.get('[href^="http://dummy.cypress.io/runs/1"]').first().within(() => { + cy.findByText('fix: make gql work ERRORED') + cy.get('[data-cy="run-card-icon-ERRORED"]') + }) - cy.get('[href^="http://dummy.cypress.io/runs/2"]').first().within(() => { - cy.findByText('fix: make gql work FAILED') - cy.get('[data-cy="run-card-icon-FAILED"]') - }) + cy.get('[href^="http://dummy.cypress.io/runs/2"]').first().within(() => { + cy.findByText('fix: make gql work FAILED') + cy.get('[data-cy="run-card-icon-FAILED"]') + }) - cy.get('[href^="http://dummy.cypress.io/runs/0"]').first().as('firstRun') + cy.get('[href^="http://dummy.cypress.io/runs/0"]').first().as('firstRun') - cy.get('@firstRun').within(() => { - cy.get('[data-cy="run-card-author"]').contains('John Appleseed') - cy.get('[data-cy="run-card-avatar"]') - cy.get('[data-cy="run-card-branch"]').contains('main') - cy.get('[data-cy="run-card-created-at"]').contains('an hour ago') - cy.get('[data-cy="run-card-duration"]').contains('01:00') + cy.get('@firstRun').within(() => { + cy.get('[data-cy="run-card-author"]').contains('John Appleseed') + cy.get('[data-cy="run-card-avatar"]') + cy.get('[data-cy="run-card-branch"]').contains('main') + cy.get('[data-cy="run-card-created-at"]').contains('an hour ago') + cy.get('[data-cy="run-card-duration"]').contains('01:00') - cy.contains('span', 'skipped') - cy.get('span').contains('pending') - cy.get('span').contains('passed') - cy.get('span').contains('failed') + cy.contains('span', 'skipped') + cy.get('span').contains('pending') + cy.get('span').contains('passed') + cy.get('span').contains('failed') + }) }) - }) - it('opens the run page if a run is clicked', () => { - cy.loginUser() - cy.visitApp() + it('opens the run page if a run is clicked', () => { + cy.loginUser() + cy.visitApp() - moveToRunsPage() - cy.get('[data-cy^="runCard-"]').first().click() + moveToRunsPage() + cy.get('[data-cy^="runCard-"]').first().click() - cy.withCtx((ctx) => { - expect((ctx.actions.electron.openExternal as SinonStub).lastCall.lastArg).to.contain('http://dummy.cypress.io/runs/0') + cy.withCtx((ctx) => { + expect((ctx.actions.electron.openExternal as SinonStub).lastCall.lastArg).to.contain('http://dummy.cypress.io/runs/0') + }) }) - }) - it('shows connection failed error if no cloudProject', () => { - let cloudData: any + it('shows connection failed error if no cloudProject', () => { + let cloudData: any - cy.loginUser() - cy.remoteGraphQLIntercept((obj) => { - if (obj.operationName?.includes('cloudProject_cloudProjectBySlug')) { - cloudData = obj.result - obj.result = {} + cy.loginUser() + cy.remoteGraphQLIntercept((obj) => { + if (obj.operationName?.includes('cloudProject_cloudProjectBySlug')) { + cloudData = obj.result + obj.result = {} + + return obj.result + } return obj.result - } + }) - return obj.result + cy.visitApp() + + moveToRunsPage() + + cy.contains('h2', 'Cannot connect to Cypress Cloud') + // cy.percySnapshot() // TODO: restore when Percy CSS is fixed. See https://github.com/cypress-io/cypress/issues/23435 + + cy.remoteGraphQLIntercept((obj) => { + if (obj.operationName?.includes('cloudProject_cloudProjectBySlug')) { + return cloudData + } + + return obj.result + }) + + cy.contains('button', 'Try again').click().should('not.exist') }) + }) - cy.visitApp() + context('has Git data', () => { + beforeEach(() => { + cy.scaffoldProject('component-tests') + .then((projectPath) => { + cy.task('initGitRepoForTestProject', projectPath) + cy.openProject('component-tests') + cy.startAppServer('component') + }) + }) - moveToRunsPage() + it('displays a list of recorded runs if a run has been recorded', () => { + cy.loginUser() + cy.visitApp() + moveToRunsPage() + cy.get('[data-cy="runs"]') + }) - cy.contains('h2', 'Cannot connect to Cypress Cloud') - // cy.percySnapshot() // TODO: restore when Percy CSS is fixed. See https://github.com/cypress-io/cypress/issues/23435 + it('displays each run with correct information', () => { + cy.loginUser() + cy.visitApp() + moveToRunsPage() - cy.remoteGraphQLIntercept((obj) => { - if (obj.operationName?.includes('cloudProject_cloudProjectBySlug')) { - return cloudData - } + cy.get('[href^="http://dummy.cypress.io/runs/0"]').first().within(() => { + cy.findByText('fix: using Git data CANCELLED') + cy.get('[data-cy="run-card-icon-CANCELLED"]') + }) - return obj.result + cy.get('[href^="http://dummy.cypress.io/runs/0"]').first().as('firstRun') + + cy.get('@firstRun').within(() => { + cy.get('[data-cy="run-card-author"]').contains('John Appleseed') + cy.get('[data-cy="run-card-avatar"]') + cy.get('[data-cy="run-card-branch"]').contains('main') + cy.get('[data-cy="run-card-created-at"]').contains('an hour ago') + cy.get('[data-cy="run-card-duration"]').contains('01:00') + + cy.contains('span', 'skipped') + cy.get('span').contains('pending') + cy.get('span').contains('passed') + cy.get('span').contains('failed') + }) }) - cy.contains('button', 'Try again').click().should('not.exist') + it('opens the run page if a run is clicked', () => { + cy.loginUser() + cy.visitApp() + + moveToRunsPage() + cy.get('[data-cy^="runCard-"]').first().click() + + cy.withCtx((ctx) => { + expect((ctx.actions.electron.openExternal as SinonStub).lastCall.lastArg).to.contain('http://dummy.cypress.io/runs/0') + }) + }) }) }) @@ -765,10 +816,6 @@ describe('App: Runs', { viewportWidth: 1200 }, () => { }) it('should remove the alert warning if the app reconnects to the internet', () => { - cy.withCtx((ctx, o) => { - o.sinon.stub(ctx.lifecycleManager.git!, 'currentBranch').value('fakeBranch') - }) - cy.loginUser() cy.visitApp() cy.wait(1000) @@ -783,7 +830,7 @@ describe('App: Runs', { viewportWidth: 1200 }, () => { cy.goOnline() - cy.get('[data-cy=warning-alert]').should('not.exist') + cy.contains('You have no internet connection').should('not.exist') }) it('shows correct message on create org modal', () => { @@ -861,39 +908,41 @@ describe('App: Runs', { viewportWidth: 1200 }, () => { const RUNNING_COUNT = 3 describe('refetching', () => { - let obj: {toCall?: Function} = {} - beforeEach(() => { cy.scaffoldProject('component-tests') cy.openProject('component-tests') cy.startAppServer('component') cy.loginUser() cy.remoteGraphQLIntercept((obj) => { - if (obj.result.data?.cloudProjectBySlug?.runs?.nodes.length) { - obj.result.data.cloudProjectBySlug.runs.nodes.map((run) => { - run.status = 'RUNNING' - }) + if (obj.operationName === 'Runs_currentProject_cloudProject_cloudProjectBySlug') { + if (obj.result.data?.cloudProjectBySlug?.runs?.nodes.length) { + obj.result.data.cloudProjectBySlug.runs.nodes.map((run) => { + run.status = 'RUNNING' + }) - obj.result.data.cloudProjectBySlug.runs.nodes = obj.result.data.cloudProjectBySlug.runs.nodes.slice(0, 3) + obj.result.data.cloudProjectBySlug.runs.nodes = obj.result.data.cloudProjectBySlug.runs.nodes.slice(0, 3) + } } - return obj.result - }) - - cy.visitApp('/runs', { - onBeforeLoad (win) { - const setTimeout = win.setTimeout + if (obj.operationName === 'RelevantRunSpecsDataSource_Specs') { + if (obj.result.data?.cloudNodesByIds) { + obj.result.data?.cloudNodesByIds.map((node) => { + node.status = 'RUNNING' + }) + } - // @ts-expect-error - win.setTimeout = function (fn: () => void, time: number) { - if (fn.name === 'fetchNewerRuns') { - obj.toCall = fn - } else { - setTimeout(fn, time) + if (obj.result.data) { + obj.result.data.pollingIntervals = { + __typename: 'CloudPollingIntervals', + runByNumber: 0.1, } } - }, + } + + return obj.result }) + + cy.visitApp('/runs') }) // https://github.com/cypress-io/cypress/issues/24575 @@ -921,54 +970,13 @@ describe('App: Runs', { viewportWidth: 1200 }, () => { }) function completeNext (passed) { - cy.wrap(obj).invoke('toCall').then(() => { - cy.get('[data-cy="run-card-icon-PASSED"]').should('have.length', passed).should('be.visible') - if (passed < RUNNING_COUNT) { - completeNext(passed + 1) - } - }) + cy.get('[data-cy="run-card-icon-PASSED"]').should('have.length', passed).should('be.visible') + if (passed < RUNNING_COUNT) { + completeNext(passed + 1) + } } completeNext(1) }) - - // TODO: unskip https://github.com/cypress-io/cypress/issues/24575 - it.skip('should fetch newer runs and maintain them when navigating', () => { - cy.get('[data-cy="run-card-icon-RUNNING"]').should('have.length', RUNNING_COUNT).should('be.visible') - - cy.remoteGraphQLIntercept(async (obj) => { - await new Promise((resolve) => setTimeout(resolve, 100)) - - if (obj.result.data?.cloudNodesByIds) { - obj.result.data?.cloudNodesByIds.map((node) => { - node.status = 'PASSED' - node.totalPassed = 100 - }) - } - - return obj.result - }) - - cy.get('[data-cy="run-card-icon-RUNNING"]').should('have.length', 3).should('be.visible') - cy.wrap(obj).invoke('toCall') - - cy.get('[data-cy="run-card-icon-PASSED"]') - .should('have.length', 3) - .should('be.visible') - .first().within(() => { - cy.get('[data-cy="runResults-passed-count"]').should('contain', 100) - }) - - cy.get('[data-cy="run-card-icon-RUNNING"]').should('have.length', 2).should('be.visible') - - // If we navigate away & back, we should see the same runs - cy.findByTestId('sidebar-link-settings-page').click() - cy.remoteGraphQLIntercept((obj) => obj.result) - - moveToRunsPage() - - cy.get('[data-cy="run-card-icon-PASSED"]').should('have.length', 3).should('be.visible') - cy.get('[data-cy="run-card-icon-RUNNING"]').should('have.length', 2).should('be.visible') - }) }) }) diff --git a/packages/app/cypress/e2e/specs_list_flaky.cy.ts b/packages/app/cypress/e2e/specs_list_flaky.cy.ts index b3c1b34285cb..8c2d97e49c1a 100644 --- a/packages/app/cypress/e2e/specs_list_flaky.cy.ts +++ b/packages/app/cypress/e2e/specs_list_flaky.cy.ts @@ -10,6 +10,8 @@ describe('App: Spec List - Flaky Indicator', () => { o.sinon.stub(ctx.project, 'projectId').resolves('abc123') // Must have an active Git branch in order to fetch flaky data (see @include($hasBranch) restriction) o.sinon.stub(ctx.lifecycleManager.git!, 'currentBranch').value('fakeBranch') + + ctx.git?.__setGitHashesForTesting(['commit1', 'commit2']) }) cy.remoteGraphQLIntercept(async (obj) => { @@ -20,13 +22,10 @@ describe('App: Spec List - Flaky Indicator', () => { __typename: 'CloudProjectSpec', id: `id${obj.variables.specPath}`, retrievedAt: new Date().toISOString(), - averageDuration: null, - specRuns: { - __typename: 'CloudSpecRunConnection', - nodes: [], - }, - isConsideredFlaky: true, - flakyStatus: { + averageDurationForRunIds: null, + specRunsForRunIds: [], + isConsideredFlakyForRunIds: true, + flakyStatusForRunIds: { __typename: 'CloudProjectSpecFlakyStatus', severity: 'LOW', flakyRuns: 2, @@ -38,6 +37,41 @@ describe('App: Spec List - Flaky Indicator', () => { } } + if (obj.operationName === 'RelevantRunsDataSource_RunsByCommitShas') { + obj.result.data = { + 'cloudProjectBySlug': { + '__typename': 'CloudProject', + 'id': 'Q2xvdWRQcm9qZWN0OnZncXJ3cA==', + 'runsByCommitShas': [ + { + 'id': 'Q2xvdWRSdW46TUdWZXhvQkRPNg==', + 'runNumber': 136, + 'status': 'FAILED', + 'commitInfo': { + 'sha': 'commit2', + '__typename': 'CloudRunCommitInfo', + }, + '__typename': 'CloudRun', + }, + { + 'id': 'Q2xvdWRSdW46ckdXb2wzbzJHVg==', + 'runNumber': 134, + 'status': 'PASSED', + 'commitInfo': { + 'sha': '37fa5bfb9e774d00a03fe8f0d439f06ec70f533d', + '__typename': 'CloudRunCommitInfo', + }, + '__typename': 'CloudRun', + }, + ], + }, + 'pollingIntervals': { + 'runsByCommitShas': 30, + '__typename': 'CloudPollingIntervals', + }, + } + } + return obj.result }) @@ -50,13 +84,10 @@ describe('App: Spec List - Flaky Indicator', () => { __typename: 'CloudProjectSpec', id: `id${obj.variables.specPath}`, retrievedAt: new Date().toISOString(), - averageDuration: null, - specRuns: { - __typename: 'CloudSpecRunConnection', - nodes: [], - }, - isConsideredFlaky: true, - flakyStatus: { + averageDurationForRunIds: null, + specRunsForRunIds: [], + isConsideredFlakyForRunIds: true, + flakyStatusForRunIds: { __typename: 'CloudProjectSpecFlakyStatus', severity: 'LOW', flakyRuns: 2, @@ -71,21 +102,10 @@ describe('App: Spec List - Flaky Indicator', () => { __typename: 'CloudProjectSpec', id: `id${obj.variables.specPath}`, retrievedAt: new Date().toISOString(), - averageDuration: null, - specRuns: { - __typename: 'CloudSpecRunConnection', - nodes: [], - }, - isConsideredFlaky: false, - flakyStatus: null, - } - } - - if (obj.field === 'cloudLatestRunUpdateSpecData') { - return { - __typename: 'CloudLatestRunUpdateSpecData', - mostRecentUpdate: new Date('2022-06-10').toISOString(), - pollingInterval: 60, + averageDurationForRunIds: null, + specRunsForRunIds: [], + isConsideredFlakyForRunIds: false, + flakyStatusForRunIds: null, } } diff --git a/packages/app/cypress/e2e/specs_list_latest_runs.cy.ts b/packages/app/cypress/e2e/specs_list_latest_runs.cy.ts index 7f46173ff524..caf3a8fc9232 100644 --- a/packages/app/cypress/e2e/specs_list_latest_runs.cy.ts +++ b/packages/app/cypress/e2e/specs_list_latest_runs.cy.ts @@ -48,7 +48,7 @@ function specShouldShow (specFileName: string, runDotsClasses: string[], latestR const latestStatusSpinning = latestRunStatus === 'RUNNING' type dotIndex = Parameters[1]; - const indexes: dotIndex[] = [0, 1, 2] + const indexes: Exclude[] = [0, 1, 2] indexes.forEach((i) => { return cy.get(dotSelector(specFileName, i)).should('have.class', `icon-light-${runDotsClasses.length > i ? runDotsClasses[i] : 'gray-300'}`) @@ -66,6 +66,45 @@ function specShouldShow (specFileName: string, runDotsClasses: string[], latestR } function simulateRunData () { + cy.remoteGraphQLIntercept(async (obj) => { + if (obj.operationName === 'RelevantRunsDataSource_RunsByCommitShas') { + obj.result.data = { + 'cloudProjectBySlug': { + '__typename': 'CloudProject', + 'id': 'Q2xvdWRQcm9qZWN0OnZncXJ3cA==', + 'runsByCommitShas': [ + { + 'id': 'Q2xvdWRSdW46TUdWZXhvQkRPNg==', + 'runNumber': 136, + 'status': 'FAILED', + 'commitInfo': { + 'sha': 'commit2', + '__typename': 'CloudRunCommitInfo', + }, + '__typename': 'CloudRun', + }, + { + 'id': 'Q2xvdWRSdW46ckdXb2wzbzJHVg==', + 'runNumber': 134, + 'status': 'PASSED', + 'commitInfo': { + 'sha': '37fa5bfb9e774d00a03fe8f0d439f06ec70f533d', + '__typename': 'CloudRunCommitInfo', + }, + '__typename': 'CloudRun', + }, + ], + }, + 'pollingIntervals': { + 'runsByCommitShas': 30, + '__typename': 'CloudPollingIntervals', + }, + } + } + + return obj.result + }) + cy.remoteGraphQLInterceptBatched(async (obj) => { if (obj.field !== 'cloudSpecByPath') { return obj.result @@ -132,11 +171,8 @@ function simulateRunData () { __typename: 'CloudProjectSpec', retrievedAt: new Date().toISOString(), id: `id${obj.variables.specPath}`, - specRuns: { - __typename: 'CloudSpecRunConnection', - nodes: runs, - }, - averageDuration, + specRunsForRunIds: runs, + averageDurationForRunIds: averageDuration, } }) } @@ -159,6 +195,7 @@ describe('App/Cloud Integration - Latest runs and Average duration', { viewportW cy.withCtx((ctx, o) => { o.sinon.stub(ctx.lifecycleManager.git!, 'currentBranch').value('fakeBranch') + ctx.git?.__setGitHashesForTesting(['commit1', 'commit2']) }) }) @@ -410,15 +447,55 @@ describe('App/Cloud Integration - Latest runs and Average duration', { viewportW cy.remoteGraphQLIntercept(async (obj, testState) => { const pollingCounter = testState.pollingCounter ?? 0 - if (obj.result.data && 'cloudLatestRunUpdateSpecData' in obj.result.data) { - const mostRecentUpdate = pollingCounter > 1 ? new Date().toISOString() : new Date('2022-06-10').toISOString() - // initial polling interval is set to every second to avoid long wait times - const pollingInterval = pollingCounter > 1 ? 30 : 1 + if (obj.operationName === 'RelevantRunsDataSource_RunsByCommitShas') { + obj.result.data = { + 'cloudProjectBySlug': { + '__typename': 'CloudProject', + 'id': 'Q2xvdWRQcm9qZWN0OnZncXJ3cA==', + 'runsByCommitShas': [ + { + 'id': 'Q2xvdWRSdW46TUdWZXhvQkRPNg==', + 'runNumber': 136, + 'status': 'PASSED', + 'commitInfo': { + 'sha': 'commit2', + '__typename': 'CloudRunCommitInfo', + }, + '__typename': 'CloudRun', + }, + { + 'id': 'Q2xvdWRSdW46ckdXb2wzbzJHVg==', + 'runNumber': 134, + 'status': 'FAILED', + 'commitInfo': { + 'sha': '37fa5bfb9e774d00a03fe8f0d439f06ec70f533d', + '__typename': 'CloudRunCommitInfo', + }, + '__typename': 'CloudRun', + }, + ], + }, + 'pollingIntervals': { + 'runsByCommitShas': 1, + '__typename': 'CloudPollingIntervals', + }, + } - obj.result.data.cloudLatestRunUpdateSpecData = { - __typename: 'CloudLatestRunUpdateSpecData', - mostRecentUpdate, - pollingInterval, + if (pollingCounter > 2) { + obj.result.data.cloudProjectBySlug.runsByCommitShas.shift({ + 'id': 'Q2xvdWRSdW46TUdWZXhvQkRPNg==', + 'runNumber': 138, + 'status': 'FAILED', + 'commitInfo': { + 'sha': 'commit2', + '__typename': 'CloudRunCommitInfo', + }, + '__typename': 'CloudRun', + }) + } + + if (pollingCounter > 5) { + obj.result.data.pollingIntervals.runsByCommitShas = 100 } testState.pollingCounter = pollingCounter + 1 @@ -488,11 +565,8 @@ describe('App/Cloud Integration - Latest runs and Average duration', { viewportW __typename: 'CloudProjectSpec', retrievedAt: new Date().toISOString(), id: `id${obj.variables.specPath}`, - specRuns: { - __typename: 'CloudSpecRunConnection', - nodes: runs, - }, - averageDuration, + specRunsForRunIds: runs, + averageDurationForRunIds: averageDuration, } }) @@ -519,125 +593,6 @@ describe('App/Cloud Integration - Latest runs and Average duration', { viewportW cy.get(averageDurationSelector('accounts_list.spec.js')).contains('0:13') }) }) - - context('polling indicates no new data', () => { - beforeEach(() => { - cy.loginUser() - - cy.remoteGraphQLIntercept(async (obj, testState) => { - const pollingCounter = testState.pollingCounter ?? 0 - - if (obj.result.data && 'cloudLatestRunUpdateSpecData' in obj.result.data) { - const mostRecentUpdate = new Date('2022-06-10').toISOString() - // initial polling interval is set to every second to avoid long wait times - const pollingInterval = pollingCounter > 1 ? 30 : 1 - - obj.result.data.cloudLatestRunUpdateSpecData = { - __typename: 'CloudLatestRunUpdateSpecData', - mostRecentUpdate, - pollingInterval, - } - - testState.pollingCounter = pollingCounter + 1 - } - - return obj.result - }) - - cy.remoteGraphQLInterceptBatched(async (obj, testState) => { - if (obj.field !== 'cloudSpecByPath') { - return obj.result - } - - const fakeRuns = (statuses: string[], idPrefix: string) => { - return statuses.map((s, idx) => { - return { - __typename: 'CloudSpecRun', - id: `SpecRun_${idPrefix}_${idx}`, - status: s, - createdAt: new Date('2022-05-08T03:17:00').toISOString(), - completedAt: new Date('2022-05-08T05:17:00').toISOString(), - basename: idPrefix.substring(idPrefix.lastIndexOf('/') + 1, idPrefix.indexOf('.')), - path: idPrefix, - extension: idPrefix.substring(idPrefix.indexOf('.')), - runNumber: 432, - groupCount: 2, - specDuration: { - min: 143003, // 2:23 - max: 159120, // 3:40 - __typename: 'SpecDataAggregate', - }, - testsFailed: { - min: 1, - max: 2, - __typename: 'SpecDataAggregate', - }, - testsPassed: { - min: 22, - max: 23, - __typename: 'SpecDataAggregate', - }, - testsSkipped: { - min: null, - max: null, - __typename: 'SpecDataAggregate', - }, - testsPending: { - min: 1, - max: 2, - __typename: 'SpecDataAggregate', - }, - url: 'https://google.com', - } - }) - } - - const pollingCounter = testState.pollingCounter ?? 0 - - // simulate network latency to allow for caching to register - await new Promise((r) => setTimeout(r, 20)) - - const statuses = pollingCounter < 2 ? ['PASSED', 'FAILED', 'CANCELLED', 'ERRORED'] : ['FAILED', 'PASSED', 'FAILED', 'CANCELLED', 'ERRORED'] - const runs = fakeRuns(statuses, obj.variables.specPath) - const averageDuration = pollingCounter < 2 ? 12000 : 13000 - - return { - __typename: 'CloudProjectSpec', - retrievedAt: new Date().toISOString(), - id: `id${obj.variables.specPath}`, - specRuns: { - __typename: 'CloudSpecRunConnection', - nodes: runs, - }, - averageDuration, - } - }) - - cy.visitApp() - cy.findByTestId('sidebar-link-specs-page').click() - }) - - it('shows the same data after polling', () => { - specShouldShow('accounts_list.spec.js', ['orange-400', 'gray-300', 'red-400'], 'PASSED') - cy.get(dotSelector('accounts_new.spec.js', 'latest')).trigger('mouseenter') - cy.get('.v-popper__popper--shown').should('exist') - - validateTooltip('Passed') - cy.get(dotSelector('accounts_new.spec.js', 'latest')).trigger('mouseleave') - cy.get(averageDurationSelector('accounts_list.spec.js')).contains('0:12') - - cy.wait(1200) - - // new results should be shown - specShouldShow('accounts_list.spec.js', ['orange-400', 'gray-300', 'red-400'], 'PASSED') - cy.get(dotSelector('accounts_new.spec.js', 'latest')).trigger('mouseenter') - cy.get('.v-popper__popper--shown').should('exist') - - validateTooltip('Passed') - cy.get(dotSelector('accounts_new.spec.js', 'latest')).trigger('mouseleave') - cy.get(averageDurationSelector('accounts_list.spec.js')).contains('0:12') - }) - }) }) describe('App/Cloud Integration - Latest runs and Average duration', { viewportWidth: 1200 }, () => { diff --git a/packages/app/cypress/fixtures/debug-Failing/gql-CloudViewerAndProject_RequiredData.json b/packages/app/cypress/fixtures/debug-Failing/gql-CloudViewerAndProject_RequiredData.json deleted file mode 100644 index df9bf17111fe..000000000000 --- a/packages/app/cypress/fixtures/debug-Failing/gql-CloudViewerAndProject_RequiredData.json +++ /dev/null @@ -1,472 +0,0 @@ -{ - "data": { - "cloudViewer": { - "id": "Q2xvdWRVc2VyOjcxYTM3NmVhLTdlMGUtNDBhOS1hMTAzLWMwM2NmNTMyMmQyZg==", - "fullName": "Lachlan Miller", - "email": "lachlan.miller.1990@outlook.com", - "firstOrganization": { - "nodes": [ - { - "id": "Q2xvdWRPcmdhbml6YXRpb246NjE5ODJiMmItOTRmNy00ZjYzLTlmYjctNGI1MTc4NjQ5OWJh", - "__typename": "CloudOrganization" - } - ], - "__typename": "CloudOrganizationConnection" - }, - "__typename": "CloudUser" - }, - "cachedUser": { - "id": "Q2FjaGVkVXNlcjpsYWNobGFuLm1pbGxlci4xOTkwQG91dGxvb2suY29t", - "fullName": "Lachlan Miller", - "email": "lachlan.miller.1990@outlook.com", - "__typename": "CachedUser" - }, - "authState": { - "name": null, - "__typename": "AuthState" - }, - "currentProject": { - "id": "debug-test-project-id", - "config": [ - { - "value": 5, - "from": "default", - "field": "animationDistanceThreshold" - }, - { - "value": "arm64", - "from": "default", - "field": "arch" - }, - { - "value": null, - "from": "default", - "field": "baseUrl" - }, - { - "value": null, - "from": "default", - "field": "blockHosts" - }, - { - "value": true, - "from": "default", - "field": "chromeWebSecurity" - }, - { - "value": [], - "from": "default", - "field": "clientCertificates" - }, - { - "value": 4000, - "from": "default", - "field": "defaultCommandTimeout" - }, - { - "value": "cypress/downloads", - "from": "default", - "field": "downloadsFolder" - }, - { - "value": { - "INTERNAL_CLOUD_ENV": "production", - "INTERNAL_GRAPHQL_PORT": 4444, - "INTERNAL_EVENT_COLLECTOR_ENV": "staging", - "CONFIG_ENV": "production" - }, - "field": "env", - "from": "env" - }, - { - "value": 60000, - "from": "default", - "field": "execTimeout" - }, - { - "value": false, - "from": "default", - "field": "experimentalCspAllowList" - }, - { - "value": false, - "from": "default", - "field": "experimentalFetchPolyfill" - }, - { - "value": false, - "from": "default", - "field": "experimentalInteractiveRunEvents" - }, - { - "value": false, - "from": "default", - "field": "experimentalRunAllSpecs" - }, - { - "value": false, - "from": "default", - "field": "experimentalMemoryManagement" - }, - { - "value": false, - "from": "default", - "field": "experimentalModifyObstructiveThirdPartyCode" - }, - { - "value": null, - "from": "default", - "field": "experimentalSkipDomainInjection" - }, - { - "value": false, - "from": "default", - "field": "experimentalOriginDependencies" - }, - { - "value": false, - "from": "default", - "field": "experimentalSourceRewriting" - }, - { - "value": true, - "from": "config", - "field": "experimentalSingleTabRunMode" - }, - { - "value": false, - "from": "default", - "field": "experimentalStudio" - }, - { - "value": false, - "from": "default", - "field": "experimentalWebKitSupport" - }, - { - "value": "", - "from": "default", - "field": "fileServerFolder" - }, - { - "value": "cypress/fixtures", - "from": "default", - "field": "fixturesFolder" - }, - { - "value": [ - "**/__snapshots__/*", - "**/__image_snapshots__/*" - ], - "from": "default", - "field": "excludeSpecPattern" - }, - { - "value": false, - "from": "default", - "field": "includeShadowDom" - }, - { - "value": 0, - "from": "default", - "field": "keystrokeDelay" - }, - { - "value": true, - "from": "default", - "field": "modifyObstructiveCode" - }, - { - "from": "default", - "field": "nodeVersion" - }, - { - "value": 50, - "from": "default", - "field": "numTestsKeptInMemory" - }, - { - "value": "darwin", - "from": "default", - "field": "platform" - }, - { - "value": 60000, - "from": "default", - "field": "pageLoadTimeout" - }, - { - "value": null, - "from": "default", - "field": "port" - }, - { - "value": "vgqrwp", - "from": "config", - "field": "projectId" - }, - { - "value": 20, - "from": "default", - "field": "redirectionLimit" - }, - { - "value": "spec", - "from": "default", - "field": "reporter" - }, - { - "value": null, - "from": "default", - "field": "reporterOptions" - }, - { - "value": 5000, - "from": "default", - "field": "requestTimeout" - }, - { - "value": null, - "from": "default", - "field": "resolvedNodePath" - }, - { - "value": null, - "from": "default", - "field": "resolvedNodeVersion" - }, - { - "value": 30000, - "from": "default", - "field": "responseTimeout" - }, - { - "value": { - "runMode": 0, - "openMode": 0 - }, - "from": "default", - "field": "retries" - }, - { - "value": true, - "from": "default", - "field": "screenshotOnRunFailure" - }, - { - "value": "cypress/screenshots", - "from": "default", - "field": "screenshotsFolder" - }, - { - "value": 250, - "from": "default", - "field": "slowTestThreshold" - }, - { - "value": "top", - "from": "default", - "field": "scrollBehavior" - }, - { - "value": "cypress/support/component.{js,jsx,ts,tsx}", - "from": "default", - "field": "supportFile" - }, - { - "value": false, - "from": "default", - "field": "supportFolder" - }, - { - "value": 60000, - "from": "default", - "field": "taskTimeout" - }, - { - "value": true, - "from": "default", - "field": "testIsolation" - }, - { - "value": true, - "from": "default", - "field": "trashAssetsBeforeRuns" - }, - { - "value": null, - "from": "default", - "field": "userAgent" - }, - { - "value": true, - "from": "default", - "field": "video" - }, - { - "value": 32, - "from": "default", - "field": "videoCompression" - }, - { - "value": "cypress/videos", - "from": "default", - "field": "videosFolder" - }, - { - "value": true, - "from": "default", - "field": "videoUploadOnPasses" - }, - { - "value": 500, - "from": "default", - "field": "viewportHeight" - }, - { - "value": 500, - "from": "default", - "field": "viewportWidth" - }, - { - "value": true, - "from": "default", - "field": "waitForAnimations" - }, - { - "value": true, - "from": "default", - "field": "watchForFileChanges" - }, - { - "value": "**/*.cy.{js,jsx,ts,tsx}", - "from": "default", - "field": "specPattern" - }, - { - "value": [ - { - "name": "chrome", - "family": "chromium", - "channel": "stable", - "displayName": "Chrome", - "version": "109.0.5414.119", - "path": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome", - "minSupportedVersion": 64, - "majorVersion": "109" - }, - { - "name": "firefox", - "family": "firefox", - "channel": "stable", - "displayName": "Firefox", - "version": "107.0.1", - "path": "/Applications/Firefox.app/Contents/MacOS/firefox", - "minSupportedVersion": 86, - "majorVersion": "107" - }, - { - "name": "electron", - "channel": "stable", - "family": "chromium", - "displayName": "Electron", - "version": "106.0.5249.51", - "path": "", - "majorVersion": 106 - } - ], - "from": "runtime", - "field": "browsers" - }, - { - "value": null, - "from": "default", - "field": "hosts" - }, - { - "value": true, - "from": "default", - "field": "isInteractive" - } - ], - "isFullConfigReady": true, - "hasNonExampleSpec": true, - "savedState": { - "firstOpened": 1674605493218, - "lastOpened": 1675053721981, - "lastProjectId": "vgqrwp", - "specFilter": "" - }, - "cloudProject": { - "__typename": "CloudProject", - "id": "cloud-project-test-id", - "runs": { - "nodes": [ - { - "id": "Q2xvdWRSdW46TUdWZXhvQkRPNg==", - "status": "FAILED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/136", - "__typename": "CloudRun" - }, - { - "id": "Q2xvdWRSdW46Nk9kdm93eG45cQ==", - "status": "FAILED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/135", - "__typename": "CloudRun" - }, - { - "id": "Q2xvdWRSdW46ckdXb2wzbzJHVg==", - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/134", - "__typename": "CloudRun" - }, - { - "id": "Q2xvdWRSdW46WUc0eDVZMFZHUA==", - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/133", - "__typename": "CloudRun" - }, - { - "id": "Q2xvdWRSdW46VjkxMHJvRGpHcg==", - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/132", - "__typename": "CloudRun" - }, - { - "id": "Q2xvdWRSdW46ZU9qeWtCUFlMcQ==", - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/131", - "__typename": "CloudRun" - }, - { - "id": "Q2xvdWRSdW46ajl4bjhYV05PbA==", - "status": "FAILED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/130", - "__typename": "CloudRun" - }, - { - "id": "Q2xvdWRSdW46a0wzRVBlNTBHdw==", - "status": "FAILED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/129", - "__typename": "CloudRun" - }, - { - "id": "Q2xvdWRSdW46Vk9KNnhkVmVPYg==", - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/128", - "__typename": "CloudRun" - }, - { - "id": "Q2xvdWRSdW46SzlFTlEyb05MYg==", - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/127", - "__typename": "CloudRun" - } - ], - "__typename": "CloudRunConnection" - } - }, - "__typename": "CurrentProject" - } - } -} \ No newline at end of file diff --git a/packages/app/cypress/fixtures/debug-Failing/gql-Debug.json b/packages/app/cypress/fixtures/debug-Failing/gql-Debug.json index 576baa8a4a36..419c5f2adcc9 100644 --- a/packages/app/cypress/fixtures/debug-Failing/gql-Debug.json +++ b/packages/app/cypress/fixtures/debug-Failing/gql-Debug.json @@ -78,10 +78,10 @@ "specs": [ { "id": "Q2xvdWRTcGVjUnVuOmY0YzE3OGIxLWRlZjktNGI1NC1hOTU1LWQ3MGU0NDhjMTg5MTpNekExTlRVNE1UWXRNalZqTmkxak0yWmlMVEU0WWpFdFkyWTVaV1JrWkRFM05qTmk=", - "path": "src/components/InfoPanel/InfoPanel.cy.ts", - "basename": "InfoPanel.cy.ts", - "extension": ".cy.ts", - "shortPath": "src/components/InfoPanel/InfoPanel.cy.ts", + "path": "src/NewComponent.spec.jsx", + "basename": "NewComponent.spec.jsx", + "extension": ".spec.jsx", + "shortPath": "src/NewComponent.spec.jsx", "groupIds": [ "Q2xvdWRSdW5Hcm91cDo2Njg2MTI4NjpsaW51eC1FbGVjdHJvbi0xMDYtYjAyZTk4NDJiNQ==" ], diff --git a/packages/app/cypress/fixtures/debug-Failing/gql-HeaderBar_HeaderBarQuery.json b/packages/app/cypress/fixtures/debug-Failing/gql-HeaderBar_HeaderBarQuery.json deleted file mode 100644 index c9c094137b66..000000000000 --- a/packages/app/cypress/fixtures/debug-Failing/gql-HeaderBar_HeaderBarQuery.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "data": { - "currentProject": { - "id": "Q3VycmVudFByb2plY3Q6L1VzZXJzL2xhY2hsYW5taWxsZXIvY29kZS9kdW1wL2VsZXV0aGVyaWEvcGFja2FnZXMvZnJvbnRlbmQ=", - "title": "frontend", - "config": [ - { - "value": 5, - "from": "default", - "field": "animationDistanceThreshold" - }, - { - "value": "arm64", - "from": "default", - "field": "arch" - }, - { - "value": null, - "from": "default", - "field": "baseUrl" - }, - { - "value": null, - "from": "default", - "field": "blockHosts" - }, - { - "value": true, - "from": "default", - "field": "chromeWebSecurity" - }, - { - "value": [], - "from": "default", - "field": "clientCertificates" - }, - { - "value": 4000, - "from": "default", - "field": "defaultCommandTimeout" - }, - { - "value": "cypress/downloads", - "from": "default", - "field": "downloadsFolder" - }, - { - "value": { - "INTERNAL_CLOUD_ENV": "production", - "INTERNAL_GRAPHQL_PORT": 4444, - "INTERNAL_EVENT_COLLECTOR_ENV": "staging", - "CONFIG_ENV": "production" - }, - "field": "env", - "from": "env" - }, - { - "value": 60000, - "from": "default", - "field": "execTimeout" - }, - { - "value": false, - "from": "default", - "field": "experimentalCspAllowList" - }, - { - "value": false, - "from": "default", - "field": "experimentalFetchPolyfill" - }, - { - "value": false, - "from": "default", - "field": "experimentalInteractiveRunEvents" - }, - { - "value": false, - "from": "default", - "field": "experimentalRunAllSpecs" - }, - { - "value": false, - "from": "default", - "field": "experimentalMemoryManagement" - }, - { - "value": false, - "from": "default", - "field": "experimentalModifyObstructiveThirdPartyCode" - }, - { - "value": null, - "from": "default", - "field": "experimentalSkipDomainInjection" - }, - { - "value": false, - "from": "default", - "field": "experimentalOriginDependencies" - }, - { - "value": false, - "from": "default", - "field": "experimentalSourceRewriting" - }, - { - "value": true, - "from": "config", - "field": "experimentalSingleTabRunMode" - }, - { - "value": false, - "from": "default", - "field": "experimentalStudio" - }, - { - "value": false, - "from": "default", - "field": "experimentalWebKitSupport" - }, - { - "value": "", - "from": "default", - "field": "fileServerFolder" - }, - { - "value": "cypress/fixtures", - "from": "default", - "field": "fixturesFolder" - }, - { - "value": [ - "**/__snapshots__/*", - "**/__image_snapshots__/*" - ], - "from": "default", - "field": "excludeSpecPattern" - }, - { - "value": false, - "from": "default", - "field": "includeShadowDom" - }, - { - "value": 0, - "from": "default", - "field": "keystrokeDelay" - }, - { - "value": true, - "from": "default", - "field": "modifyObstructiveCode" - }, - { - "from": "default", - "field": "nodeVersion" - }, - { - "value": 50, - "from": "default", - "field": "numTestsKeptInMemory" - }, - { - "value": "darwin", - "from": "default", - "field": "platform" - }, - { - "value": 60000, - "from": "default", - "field": "pageLoadTimeout" - }, - { - "value": null, - "from": "default", - "field": "port" - }, - { - "value": "vgqrwp", - "from": "config", - "field": "projectId" - }, - { - "value": 20, - "from": "default", - "field": "redirectionLimit" - }, - { - "value": "spec", - "from": "default", - "field": "reporter" - }, - { - "value": null, - "from": "default", - "field": "reporterOptions" - }, - { - "value": 5000, - "from": "default", - "field": "requestTimeout" - }, - { - "value": null, - "from": "default", - "field": "resolvedNodePath" - }, - { - "value": null, - "from": "default", - "field": "resolvedNodeVersion" - }, - { - "value": 30000, - "from": "default", - "field": "responseTimeout" - }, - { - "value": { - "runMode": 0, - "openMode": 0 - }, - "from": "default", - "field": "retries" - }, - { - "value": true, - "from": "default", - "field": "screenshotOnRunFailure" - }, - { - "value": "cypress/screenshots", - "from": "default", - "field": "screenshotsFolder" - }, - { - "value": 250, - "from": "default", - "field": "slowTestThreshold" - }, - { - "value": "top", - "from": "default", - "field": "scrollBehavior" - }, - { - "value": "cypress/support/component.{js,jsx,ts,tsx}", - "from": "default", - "field": "supportFile" - }, - { - "value": false, - "from": "default", - "field": "supportFolder" - }, - { - "value": 60000, - "from": "default", - "field": "taskTimeout" - }, - { - "value": true, - "from": "default", - "field": "testIsolation" - }, - { - "value": true, - "from": "default", - "field": "trashAssetsBeforeRuns" - }, - { - "value": null, - "from": "default", - "field": "userAgent" - }, - { - "value": true, - "from": "default", - "field": "video" - }, - { - "value": 32, - "from": "default", - "field": "videoCompression" - }, - { - "value": "cypress/videos", - "from": "default", - "field": "videosFolder" - }, - { - "value": true, - "from": "default", - "field": "videoUploadOnPasses" - }, - { - "value": 500, - "from": "default", - "field": "viewportHeight" - }, - { - "value": 500, - "from": "default", - "field": "viewportWidth" - }, - { - "value": true, - "from": "default", - "field": "waitForAnimations" - }, - { - "value": true, - "from": "default", - "field": "watchForFileChanges" - }, - { - "value": "**/*.cy.{js,jsx,ts,tsx}", - "from": "default", - "field": "specPattern" - }, - { - "value": [ - { - "name": "chrome", - "family": "chromium", - "channel": "stable", - "displayName": "Chrome", - "version": "109.0.5414.119", - "path": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome", - "minSupportedVersion": 64, - "majorVersion": "109" - }, - { - "name": "firefox", - "family": "firefox", - "channel": "stable", - "displayName": "Firefox", - "version": "107.0.1", - "path": "/Applications/Firefox.app/Contents/MacOS/firefox", - "minSupportedVersion": 86, - "majorVersion": "107" - }, - { - "name": "electron", - "channel": "stable", - "family": "chromium", - "displayName": "Electron", - "version": "106.0.5249.51", - "path": "", - "majorVersion": 106 - } - ], - "from": "runtime", - "field": "browsers" - }, - { - "value": null, - "from": "default", - "field": "hosts" - }, - { - "value": true, - "from": "default", - "field": "isInteractive" - } - ], - "savedState": { - "firstOpened": 1674605493218, - "lastOpened": 1675053721981, - "lastProjectId": "vgqrwp", - "specFilter": "" - }, - "currentTestingType": "component", - "branch": "main", - "packageManager": "yarn", - "activeBrowser": { - "id": "QnJvd3NlcjpjaHJvbWUtY2hyb21pdW0tc3RhYmxl", - "displayName": "Chrome", - "majorVersion": "109", - "__typename": "Browser" - }, - "browsers": [ - { - "id": "QnJvd3NlcjpjaHJvbWUtY2hyb21pdW0tc3RhYmxl", - "isSelected": true, - "displayName": "Chrome", - "version": "109.0.5414.119", - "majorVersion": "109", - "isVersionSupported": true, - "warning": null, - "disabled": null, - "__typename": "Browser" - }, - { - "id": "QnJvd3NlcjpmaXJlZm94LWZpcmVmb3gtc3RhYmxl", - "isSelected": false, - "displayName": "Firefox", - "version": "107.0.1", - "majorVersion": "107", - "isVersionSupported": true, - "warning": null, - "disabled": null, - "__typename": "Browser" - }, - { - "id": "QnJvd3NlcjplbGVjdHJvbi1jaHJvbWl1bS1zdGFibGU=", - "isSelected": false, - "displayName": "Electron", - "version": "106.0.5249.51", - "majorVersion": "106", - "isVersionSupported": true, - "warning": null, - "disabled": null, - "__typename": "Browser" - } - ], - "projectId": "vgqrwp", - "cloudProject": { - "__typename": "CloudProject", - "id": "Q2xvdWRQcm9qZWN0OnZncXJ3cA==" - }, - "__typename": "CurrentProject" - }, - "isGlobalMode": true, - "versions": { - "current": { - "id": "12.4.0", - "version": "12.4.0", - "released": "2023-01-24T18:40:53.125Z", - "__typename": "Version" - }, - "latest": { - "id": "12.4.1", - "version": "12.4.1", - "released": "2023-01-27T15:00:32.366Z", - "__typename": "Version" - }, - "__typename": "VersionData" - }, - "cloudViewer": { - "id": "Q2xvdWRVc2VyOjcxYTM3NmVhLTdlMGUtNDBhOS1hMTAzLWMwM2NmNTMyMmQyZg==", - "cloudOrganizationsUrl": "https://cloud.cypress.io/organizations", - "organizations": { - "nodes": [ - { - "id": "Q2xvdWRPcmdhbml6YXRpb246NjE5ODJiMmItOTRmNy00ZjYzLTlmYjctNGI1MTc4NjQ5OWJh", - "name": "Org 2", - "projects": { - "nodes": [], - "__typename": "CloudProjectConnection" - }, - "__typename": "CloudOrganization" - }, - { - "id": "Q2xvdWRPcmdhbml6YXRpb246MDIxZmVhNjctZDYwOC00YWIyLWFmMTctM2Y4YTJhMjNkMDE5", - "name": "Lachlan's Personal Projects", - "projects": { - "nodes": [ - { - "id": "Q2xvdWRQcm9qZWN0OnZncXJ3cA==", - "slug": "vgqrwp", - "name": "Rhythm Game", - "__typename": "CloudProject" - } - ], - "__typename": "CloudProjectConnection" - }, - "__typename": "CloudOrganization" - }, - { - "id": "Q2xvdWRPcmdhbml6YXRpb246ODllYmMwOTktNzhjMS00YjIzLWIwYzMtNjAzMGY0MjAxNDBj", - "name": "Lachlan Miller", - "projects": { - "nodes": [ - { - "id": "Q2xvdWRQcm9qZWN0Om9mODhoNQ==", - "slug": "of88h5", - "name": "baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0Onp5N2dzZQ==", - "slug": "zy7gse", - "name": "express", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmZ1aDkzOQ==", - "slug": "fuh939", - "name": "bannerjs", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OjVicHF0MQ==", - "slug": "5bpqt1", - "name": "baretest88", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OjJ5dm1odQ==", - "slug": "2yvmhu", - "name": "baretest414141", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0Ojk4dzhveQ==", - "slug": "98w8oy", - "name": "desktop-gui-testing", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmJqdWJjYQ==", - "slug": "bjubca", - "name": "baretest58", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmQ4ZjM5bQ==", - "slug": "d8f39m", - "name": "baretest00", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmR3am5vMg==", - "slug": "dwjno2", - "name": "baretest66", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmZ3ZHZ1Mw==", - "slug": "fwdvu3", - "name": "31baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OnVxNHhyYg==", - "slug": "uq4xrb", - "name": "baretest33331", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0Ong5Y3BzOQ==", - "slug": "x9cps9", - "name": "555baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmZ6bW53Yw==", - "slug": "fzmnwc", - "name": "baretestdd", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OnU5Y3d2Zg==", - "slug": "u9cwvf", - "name": "baretest-41", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0Om9rZDQ3OA==", - "slug": "okd478", - "name": "baretest-1231", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OjkxNTZiMw==", - "slug": "9156b3", - "name": "baretest555", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmlvbmNhbg==", - "slug": "ioncan", - "name": "baretest-asdf", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OnpuYm9qOQ==", - "slug": "znboj9", - "name": "baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmljczdteA==", - "slug": "ics7mx", - "name": "baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OnN1cjRidw==", - "slug": "sur4bw", - "name": "baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OjF1b2c1eA==", - "slug": "1uog5x", - "name": "baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0Om52MXJ0OA==", - "slug": "nv1rt8", - "name": "baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmlnM2Nzaw==", - "slug": "ig3csk", - "name": "baretest-1", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OjhlbWU2MQ==", - "slug": "8eme61", - "name": "rhythm-frontendddd", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0Ojk4anA1Ng==", - "slug": "98jp56", - "name": "rhythm-frontend", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OjNlNWJwYg==", - "slug": "3e5bpb", - "name": "Lachlan Miller Testing", - "__typename": "CloudProject" - } - ], - "__typename": "CloudProjectConnection" - }, - "__typename": "CloudOrganization" - } - ], - "__typename": "CloudOrganizationConnection" - }, - "email": "lachlan.miller.1990@outlook.com", - "fullName": "Lachlan Miller", - "firstOrganization": { - "nodes": [ - { - "id": "Q2xvdWRPcmdhbml6YXRpb246NjE5ODJiMmItOTRmNy00ZjYzLTlmYjctNGI1MTc4NjQ5OWJh", - "__typename": "CloudOrganization" - } - ], - "__typename": "CloudOrganizationConnection" - }, - "__typename": "CloudUser" - }, - "authState": { - "browserOpened": false, - "name": null, - "message": null, - "__typename": "AuthState" - }, - "cachedUser": { - "id": "Q2FjaGVkVXNlcjpsYWNobGFuLm1pbGxlci4xOTkwQG91dGxvb2suY29t", - "fullName": "Lachlan Miller", - "email": "lachlan.miller.1990@outlook.com", - "__typename": "CachedUser" - } - } -} \ No newline at end of file diff --git a/packages/app/cypress/fixtures/debug-Failing/gql-MainAppQuery.json b/packages/app/cypress/fixtures/debug-Failing/gql-MainAppQuery.json deleted file mode 100644 index ef32a1eb918f..000000000000 --- a/packages/app/cypress/fixtures/debug-Failing/gql-MainAppQuery.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "data": { - "baseError": null, - "currentProject": { - "id": "debug-test-project-id", - "isLoadingConfigFile": false, - "isLoadingNodeEvents": false, - "__typename": "CurrentProject" - } - } -} \ No newline at end of file diff --git a/packages/app/cypress/fixtures/debug-Failing/gql-SideBarNavigationContainer.json b/packages/app/cypress/fixtures/debug-Failing/gql-SideBarNavigationContainer.json deleted file mode 100644 index f5e46728364f..000000000000 --- a/packages/app/cypress/fixtures/debug-Failing/gql-SideBarNavigationContainer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "data": { - "localSettings": { - "preferences": { - "isSideNavigationOpen": true, - "isSpecsListOpen": false, - "autoScrollingEnabled": true, - "reporterWidth": 787, - "specListWidth": null, - "__typename": "LocalSettingsPreferences" - }, - "__typename": "LocalSettings" - }, - "currentProject": { - "id": "debug-test-project-id", - "cloudProject": { - "__typename": "CloudProject", - "id": "cloud-project-test-id", - "runByNumber": { - "id": "Q2xvdWRSdW46TUdWZXhvQkRPNg==", - "status": "FAILED", - "totalFailed": 1, - "__typename": "CloudRun" - } - }, - "isCTConfigured": true, - "isE2EConfigured": true, - "currentTestingType": "component", - "title": "frontend", - "branch": "main", - "__typename": "CurrentProject" - }, - "invokedFromCli": true - } -} \ No newline at end of file diff --git a/packages/app/cypress/fixtures/debug-Failing/gql-SpecsPageContainer.json b/packages/app/cypress/fixtures/debug-Failing/gql-SpecsPageContainer.json deleted file mode 100644 index 9ffbedf671a2..000000000000 --- a/packages/app/cypress/fixtures/debug-Failing/gql-SpecsPageContainer.json +++ /dev/null @@ -1,819 +0,0 @@ -{ - "data": { - "currentProject": { - "id": "debug-test-project-id", - "projectRoot": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend", - "currentTestingType": "component", - "cloudProject": { - "__typename": "CloudProject", - "id": "cloud-project-test-id" - }, - "specs": [ - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9EaWZmaWN1bHR5SXRlbS5jeS50cw==", - "name": "src/components/DifficultyItem.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/DifficultyItem.cy.ts", - "baseName": "DifficultyItem.cy.ts", - "fileName": "DifficultyItem", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/components/DifficultyItem.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2022-07-21 19:00:38 +1000", - "lastModifiedHumanReadable": "6 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "a33f7f4", - "subject": "feat: cover (#7)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaWRtZHhjbmR3SWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5RWFXWm1hV04xYkhSNVNYUmxiUzVqZVM1MGN5Sjk=", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzp2Z3Fyd3A6YzNKakwyTnZiWEJ2Ym1WdWRITXZSR2xtWm1samRXeDBlVWwwWlcwdVkza3VkSE09", - "retrievedAt": "2023-01-30T04:42:05.607Z", - "averageDuration": 200, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOmY0YzE3OGIxLWRlZjktNGI1NC1hOTU1LWQ3MGU0NDhjMTg5MTpaalU0TnpJeFltSXROek13T1Mxa05XWXlMV05pT1dNdE5UVTRZemRsTVdKak9HUTE=", - "runNumber": 136, - "basename": "DifficultyItem.cy.ts", - "path": "src/components/DifficultyItem.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T01:44:09.040Z", - "groupCount": 1, - "specDuration": { - "min": 107, - "max": 107, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/136/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22418f4eed-fcaf-4305-9624-d93ceed654a4%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FDifficultyItem.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - }, - { - "id": "Q2xvdWRTcGVjUnVuOjMzMjBlMjI0LWFmODktNGEyOS04OWM2LTRkZGUxNWFhZDYwMDpaalU0TnpJeFltSXROek13T1Mxa05XWXlMV05pT1dNdE5UVTRZemRsTVdKak9HUTE=", - "runNumber": 134, - "basename": "DifficultyItem.cy.ts", - "path": "src/components/DifficultyItem.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-29T07:08:42.978Z", - "groupCount": 1, - "specDuration": { - "min": 191, - "max": 191, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/134/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22d77709c2-aeb6-4ee3-9ae6-eaa452b56c2a%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FDifficultyItem.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - }, - { - "id": "Q2xvdWRTcGVjUnVuOmIxYWFlZTNlLWY2N2UtNDYxYS05MDM1LTk2ODBlYzY2YmJmYTpaalU0TnpJeFltSXROek13T1Mxa05XWXlMV05pT1dNdE5UVTRZemRsTVdKak9HUTE=", - "runNumber": 133, - "basename": "DifficultyItem.cy.ts", - "path": "src/components/DifficultyItem.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-26T07:23:21.660Z", - "groupCount": 1, - "specDuration": { - "min": 285, - "max": 285, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/133/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22753121da-5f8c-4ba6-91ae-2a16c3a52440%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FDifficultyItem.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - }, - { - "id": "Q2xvdWRTcGVjUnVuOjJlZWQ5NjY0LWQxNTMtNDEzYS04YmQzLWM2NjA5ZWRkOWIzNzpaalU0TnpJeFltSXROek13T1Mxa05XWXlMV05pT1dNdE5UVTRZemRsTVdKak9HUTE=", - "runNumber": 132, - "basename": "DifficultyItem.cy.ts", - "path": "src/components/DifficultyItem.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-26T05:25:07.357Z", - "groupCount": 1, - "specDuration": { - "min": 181, - "max": 181, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/132/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22be24810d-940c-4dc0-b9e8-a3d65eee64f5%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FDifficultyItem.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9JbmZvUGFuZWwvSW5mb1BhbmVsLmN5LnRz", - "name": "src/components/InfoPanel/InfoPanel.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/InfoPanel/InfoPanel.cy.ts", - "baseName": "InfoPanel.cy.ts", - "fileName": "InfoPanel", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/components/InfoPanel/InfoPanel.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2023-01-30 11:01:22 +1000", - "lastModifiedHumanReadable": "4 hours ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "commit1", - "subject": "chore: testing cypress", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaWRtZHhjbmR3SWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5SmJtWnZVR0Z1Wld3dlNXNW1iMUJoYm1Wc0xtTjVMblJ6SW4wPQ==", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzp2Z3Fyd3A6YzNKakwyTnZiWEJ2Ym1WdWRITXZTVzVtYjFCaGJtVnNMMGx1Wm05UVlXNWxiQzVqZVM1MGN3PT0=", - "retrievedAt": "2023-01-30T04:42:05.608Z", - "averageDuration": 1440.3, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOmY0YzE3OGIxLWRlZjktNGI1NC1hOTU1LWQ3MGU0NDhjMTg5MTpNekExTlRVNE1UWXRNalZqTmkxak0yWmlMVEU0WWpFdFkyWTVaV1JrWkRFM05qTmk=", - "runNumber": 136, - "basename": "InfoPanel.cy.ts", - "path": "src/components/InfoPanel/InfoPanel.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T01:44:09.040Z", - "groupCount": 1, - "specDuration": { - "min": 4509, - "max": 4509, - "__typename": "SpecDataAggregate" - }, - "status": "FAILED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/136/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%229728b4a7-b420-403f-92e2-e07ea8506efc%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FInfoPanel%2FInfoPanel.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - }, - { - "id": "Q2xvdWRTcGVjUnVuOjMzMjBlMjI0LWFmODktNGEyOS04OWM2LTRkZGUxNWFhZDYwMDpNekExTlRVNE1UWXRNalZqTmkxak0yWmlMVEU0WWpFdFkyWTVaV1JrWkRFM05qTmk=", - "runNumber": 134, - "basename": "InfoPanel.cy.ts", - "path": "src/components/InfoPanel/InfoPanel.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-29T07:08:42.978Z", - "groupCount": 1, - "specDuration": { - "min": 83, - "max": 83, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/134/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%2222a9f323-7052-46ec-ab0e-fa923cf3d705%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FInfoPanel%2FInfoPanel.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - }, - { - "id": "Q2xvdWRTcGVjUnVuOmIxYWFlZTNlLWY2N2UtNDYxYS05MDM1LTk2ODBlYzY2YmJmYTpNekExTlRVNE1UWXRNalZqTmkxak0yWmlMVEU0WWpFdFkyWTVaV1JrWkRFM05qTmk=", - "runNumber": 133, - "basename": "InfoPanel.cy.ts", - "path": "src/components/InfoPanel/InfoPanel.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-26T07:23:21.660Z", - "groupCount": 1, - "specDuration": { - "min": 68, - "max": 68, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/133/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22d8cd0724-591b-4f77-ad75-7209d5c8902e%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FInfoPanel%2FInfoPanel.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - }, - { - "id": "Q2xvdWRTcGVjUnVuOjJlZWQ5NjY0LWQxNTMtNDEzYS04YmQzLWM2NjA5ZWRkOWIzNzpNekExTlRVNE1UWXRNalZqTmkxak0yWmlMVEU0WWpFdFkyWTVaV1JrWkRFM05qTmk=", - "runNumber": 132, - "basename": "InfoPanel.cy.ts", - "path": "src/components/InfoPanel/InfoPanel.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-26T05:25:07.357Z", - "groupCount": 1, - "specDuration": { - "min": 93, - "max": 93, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/vgqrwp/runs/132/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22a895b0f2-aef4-4d8b-aa5b-4b3fba8abccc%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FInfoPanel%2FInfoPanel.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - } - ], - "config": [ - { - "value": 5, - "from": "default", - "field": "animationDistanceThreshold" - }, - { - "value": "arm64", - "from": "default", - "field": "arch" - }, - { - "value": null, - "from": "default", - "field": "baseUrl" - }, - { - "value": null, - "from": "default", - "field": "blockHosts" - }, - { - "value": true, - "from": "default", - "field": "chromeWebSecurity" - }, - { - "value": [], - "from": "default", - "field": "clientCertificates" - }, - { - "value": 4000, - "from": "default", - "field": "defaultCommandTimeout" - }, - { - "value": "cypress/downloads", - "from": "default", - "field": "downloadsFolder" - }, - { - "value": { - "INTERNAL_CLOUD_ENV": "production", - "INTERNAL_GRAPHQL_PORT": 4444, - "INTERNAL_EVENT_COLLECTOR_ENV": "staging", - "CONFIG_ENV": "production" - }, - "field": "env", - "from": "env" - }, - { - "value": 60000, - "from": "default", - "field": "execTimeout" - }, - { - "value": false, - "from": "default", - "field": "experimentalCspAllowList" - }, - { - "value": false, - "from": "default", - "field": "experimentalFetchPolyfill" - }, - { - "value": false, - "from": "default", - "field": "experimentalInteractiveRunEvents" - }, - { - "value": false, - "from": "default", - "field": "experimentalRunAllSpecs" - }, - { - "value": false, - "from": "default", - "field": "experimentalMemoryManagement" - }, - { - "value": false, - "from": "default", - "field": "experimentalModifyObstructiveThirdPartyCode" - }, - { - "value": null, - "from": "default", - "field": "experimentalSkipDomainInjection" - }, - { - "value": false, - "from": "default", - "field": "experimentalOriginDependencies" - }, - { - "value": false, - "from": "default", - "field": "experimentalSourceRewriting" - }, - { - "value": true, - "from": "config", - "field": "experimentalSingleTabRunMode" - }, - { - "value": false, - "from": "default", - "field": "experimentalStudio" - }, - { - "value": false, - "from": "default", - "field": "experimentalWebKitSupport" - }, - { - "value": "", - "from": "default", - "field": "fileServerFolder" - }, - { - "value": "cypress/fixtures", - "from": "default", - "field": "fixturesFolder" - }, - { - "value": [ - "**/__snapshots__/*", - "**/__image_snapshots__/*" - ], - "from": "default", - "field": "excludeSpecPattern" - }, - { - "value": false, - "from": "default", - "field": "includeShadowDom" - }, - { - "value": 0, - "from": "default", - "field": "keystrokeDelay" - }, - { - "value": true, - "from": "default", - "field": "modifyObstructiveCode" - }, - { - "from": "default", - "field": "nodeVersion" - }, - { - "value": 50, - "from": "default", - "field": "numTestsKeptInMemory" - }, - { - "value": "darwin", - "from": "default", - "field": "platform" - }, - { - "value": 60000, - "from": "default", - "field": "pageLoadTimeout" - }, - { - "value": null, - "from": "default", - "field": "port" - }, - { - "value": "vgqrwp", - "from": "config", - "field": "projectId" - }, - { - "value": 20, - "from": "default", - "field": "redirectionLimit" - }, - { - "value": "spec", - "from": "default", - "field": "reporter" - }, - { - "value": null, - "from": "default", - "field": "reporterOptions" - }, - { - "value": 5000, - "from": "default", - "field": "requestTimeout" - }, - { - "value": null, - "from": "default", - "field": "resolvedNodePath" - }, - { - "value": null, - "from": "default", - "field": "resolvedNodeVersion" - }, - { - "value": 30000, - "from": "default", - "field": "responseTimeout" - }, - { - "value": { - "runMode": 0, - "openMode": 0 - }, - "from": "default", - "field": "retries" - }, - { - "value": true, - "from": "default", - "field": "screenshotOnRunFailure" - }, - { - "value": "cypress/screenshots", - "from": "default", - "field": "screenshotsFolder" - }, - { - "value": 250, - "from": "default", - "field": "slowTestThreshold" - }, - { - "value": "top", - "from": "default", - "field": "scrollBehavior" - }, - { - "value": "cypress/support/component.{js,jsx,ts,tsx}", - "from": "default", - "field": "supportFile" - }, - { - "value": false, - "from": "default", - "field": "supportFolder" - }, - { - "value": 60000, - "from": "default", - "field": "taskTimeout" - }, - { - "value": true, - "from": "default", - "field": "testIsolation" - }, - { - "value": true, - "from": "default", - "field": "trashAssetsBeforeRuns" - }, - { - "value": null, - "from": "default", - "field": "userAgent" - }, - { - "value": true, - "from": "default", - "field": "video" - }, - { - "value": 32, - "from": "default", - "field": "videoCompression" - }, - { - "value": "cypress/videos", - "from": "default", - "field": "videosFolder" - }, - { - "value": true, - "from": "default", - "field": "videoUploadOnPasses" - }, - { - "value": 500, - "from": "default", - "field": "viewportHeight" - }, - { - "value": 500, - "from": "default", - "field": "viewportWidth" - }, - { - "value": true, - "from": "default", - "field": "waitForAnimations" - }, - { - "value": true, - "from": "default", - "field": "watchForFileChanges" - }, - { - "value": "**/*.cy.{js,jsx,ts,tsx}", - "from": "default", - "field": "specPattern" - }, - { - "value": [ - { - "name": "chrome", - "family": "chromium", - "channel": "stable", - "displayName": "Chrome", - "version": "109.0.5414.119", - "path": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome", - "minSupportedVersion": 64, - "majorVersion": "109" - }, - { - "name": "firefox", - "family": "firefox", - "channel": "stable", - "displayName": "Firefox", - "version": "107.0.1", - "path": "/Applications/Firefox.app/Contents/MacOS/firefox", - "minSupportedVersion": 86, - "majorVersion": "107" - }, - { - "name": "electron", - "channel": "stable", - "family": "chromium", - "displayName": "Electron", - "version": "106.0.5249.51", - "path": "", - "majorVersion": 106 - } - ], - "from": "runtime", - "field": "browsers" - }, - { - "value": null, - "from": "default", - "field": "hosts" - }, - { - "value": true, - "from": "default", - "field": "isInteractive" - } - ], - "savedState": { - "firstOpened": 1674605493218, - "lastOpened": 1675053721981, - "lastProjectId": "vgqrwp", - "specFilter": "" - }, - "configFile": "cypress.config.ts", - "configFileAbsolutePath": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/cypress.config.ts", - "projectId": "vgqrwp", - "branch": "main", - "codeGenGlobs": { - "id": "Q29kZUdlbkdsb2JzOioudnVl", - "component": "*.vue", - "__typename": "CodeGenGlobs" - }, - "fileExtensionToUse": "ts", - "defaultSpecFileName": "cypress/component/ComponentName.cy.tsx", - "codeGenFramework": "vue", - "isDefaultSpecPattern": true, - "__typename": "CurrentProject" - }, - "cloudViewer": { - "id": "Q2xvdWRVc2VyOjcxYTM3NmVhLTdlMGUtNDBhOS1hMTAzLWMwM2NmNTMyMmQyZg==", - "firstOrganization": { - "nodes": [ - { - "id": "Q2xvdWRPcmdhbml6YXRpb246NjE5ODJiMmItOTRmNy00ZjYzLTlmYjctNGI1MTc4NjQ5OWJh", - "__typename": "CloudOrganization" - } - ], - "__typename": "CloudOrganizationConnection" - }, - "__typename": "CloudUser" - }, - "cachedUser": { - "id": "Q2FjaGVkVXNlcjpsYWNobGFuLm1pbGxlci4xOTkwQG91dGxvb2suY29t", - "__typename": "CachedUser" - }, - "localSettings": { - "availableEditors": [ - { - "id": "computer", - "name": "Finder", - "binary": "computer", - "__typename": "Editor" - }, - { - "id": "code", - "name": "Visual Studio Code", - "binary": "code", - "__typename": "Editor" - }, - { - "id": "vim", - "name": "Vim", - "binary": "vim", - "__typename": "Editor" - } - ], - "preferences": { - "preferredEditorBinary": null, - "__typename": "LocalSettingsPreferences" - }, - "__typename": "LocalSettings" - } - } -} \ No newline at end of file diff --git a/packages/app/cypress/fixtures/debug-Failing/gql-SpecsPageContainer_BranchInfo.json b/packages/app/cypress/fixtures/debug-Failing/gql-SpecsPageContainer_BranchInfo.json deleted file mode 100644 index d3c582336d4d..000000000000 --- a/packages/app/cypress/fixtures/debug-Failing/gql-SpecsPageContainer_BranchInfo.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "data": { - "currentProject": { - "id": "debug-test-project-id", - "branch": "main", - "projectId": "vgqrwp", - "__typename": "CurrentProject" - } - } -} \ No newline at end of file diff --git a/packages/app/cypress/fixtures/debug-Passing/gql-CloudViewerAndProject_RequiredData.json b/packages/app/cypress/fixtures/debug-Passing/gql-CloudViewerAndProject_RequiredData.json deleted file mode 100644 index 1f982a1f7a95..000000000000 --- a/packages/app/cypress/fixtures/debug-Passing/gql-CloudViewerAndProject_RequiredData.json +++ /dev/null @@ -1,429 +0,0 @@ -{ - "data": { - "cloudViewer": { - "id": "Q2xvdWRVc2VyOjcxYTM3NmVhLTdlMGUtNDBhOS1hMTAzLWMwM2NmNTMyMmQyZg==", - "fullName": "Lachlan Miller", - "email": "lachlan.miller.1990@outlook.com", - "firstOrganization": { - "nodes": [ - { - "id": "Q2xvdWRPcmdhbml6YXRpb246NjE5ODJiMmItOTRmNy00ZjYzLTlmYjctNGI1MTc4NjQ5OWJh", - "__typename": "CloudOrganization" - } - ], - "__typename": "CloudOrganizationConnection" - }, - "__typename": "CloudUser" - }, - "cachedUser": { - "id": "Q2FjaGVkVXNlcjpsYWNobGFuLm1pbGxlci4xOTkwQG91dGxvb2suY29t", - "fullName": "Lachlan Miller", - "email": "lachlan.miller.1990@outlook.com", - "__typename": "CachedUser" - }, - "authState": { - "name": null, - "__typename": "AuthState" - }, - "currentProject": { - "id": "Q3VycmVudFByb2plY3Q6L1VzZXJzL2xhY2hsYW5taWxsZXIvY29kZS9kdW1wL2VsZXV0aGVyaWEvcGFja2FnZXMvZnJvbnRlbmQ=", - "config": [ - { - "value": 5, - "from": "default", - "field": "animationDistanceThreshold" - }, - { - "value": "arm64", - "from": "default", - "field": "arch" - }, - { - "value": null, - "from": "default", - "field": "baseUrl" - }, - { - "value": null, - "from": "default", - "field": "blockHosts" - }, - { - "value": true, - "from": "default", - "field": "chromeWebSecurity" - }, - { - "value": [], - "from": "default", - "field": "clientCertificates" - }, - { - "value": 4000, - "from": "default", - "field": "defaultCommandTimeout" - }, - { - "value": "cypress/downloads", - "from": "default", - "field": "downloadsFolder" - }, - { - "value": { - "INTERNAL_CLOUD_ENV": "production", - "INTERNAL_GRAPHQL_PORT": 4444, - "INTERNAL_EVENT_COLLECTOR_ENV": "staging", - "CONFIG_ENV": "production" - }, - "field": "env", - "from": "env" - }, - { - "value": 60000, - "from": "default", - "field": "execTimeout" - }, - { - "value": false, - "from": "default", - "field": "experimentalCspAllowList" - }, - { - "value": false, - "from": "default", - "field": "experimentalFetchPolyfill" - }, - { - "value": false, - "from": "default", - "field": "experimentalInteractiveRunEvents" - }, - { - "value": false, - "from": "default", - "field": "experimentalRunAllSpecs" - }, - { - "value": false, - "from": "default", - "field": "experimentalMemoryManagement" - }, - { - "value": false, - "from": "default", - "field": "experimentalModifyObstructiveThirdPartyCode" - }, - { - "value": null, - "from": "default", - "field": "experimentalSkipDomainInjection" - }, - { - "value": false, - "from": "default", - "field": "experimentalOriginDependencies" - }, - { - "value": false, - "from": "default", - "field": "experimentalSourceRewriting" - }, - { - "value": true, - "from": "config", - "field": "experimentalSingleTabRunMode" - }, - { - "value": false, - "from": "default", - "field": "experimentalStudio" - }, - { - "value": false, - "from": "default", - "field": "experimentalWebKitSupport" - }, - { - "value": "", - "from": "default", - "field": "fileServerFolder" - }, - { - "value": "cypress/fixtures", - "from": "default", - "field": "fixturesFolder" - }, - { - "value": [ - "**/__snapshots__/*", - "**/__image_snapshots__/*" - ], - "from": "default", - "field": "excludeSpecPattern" - }, - { - "value": false, - "from": "default", - "field": "includeShadowDom" - }, - { - "value": 0, - "from": "default", - "field": "keystrokeDelay" - }, - { - "value": true, - "from": "default", - "field": "modifyObstructiveCode" - }, - { - "from": "default", - "field": "nodeVersion" - }, - { - "value": 50, - "from": "default", - "field": "numTestsKeptInMemory" - }, - { - "value": "darwin", - "from": "default", - "field": "platform" - }, - { - "value": 60000, - "from": "default", - "field": "pageLoadTimeout" - }, - { - "value": null, - "from": "default", - "field": "port" - }, - { - "value": "7p5uce", - "from": "config", - "field": "projectId" - }, - { - "value": 20, - "from": "default", - "field": "redirectionLimit" - }, - { - "value": "spec", - "from": "default", - "field": "reporter" - }, - { - "value": null, - "from": "default", - "field": "reporterOptions" - }, - { - "value": 5000, - "from": "default", - "field": "requestTimeout" - }, - { - "value": null, - "from": "default", - "field": "resolvedNodePath" - }, - { - "value": null, - "from": "default", - "field": "resolvedNodeVersion" - }, - { - "value": 30000, - "from": "default", - "field": "responseTimeout" - }, - { - "value": { - "runMode": 0, - "openMode": 0 - }, - "from": "default", - "field": "retries" - }, - { - "value": true, - "from": "default", - "field": "screenshotOnRunFailure" - }, - { - "value": "cypress/screenshots", - "from": "default", - "field": "screenshotsFolder" - }, - { - "value": 250, - "from": "default", - "field": "slowTestThreshold" - }, - { - "value": "top", - "from": "default", - "field": "scrollBehavior" - }, - { - "value": "cypress/support/component.{js,jsx,ts,tsx}", - "from": "default", - "field": "supportFile" - }, - { - "value": false, - "from": "default", - "field": "supportFolder" - }, - { - "value": 60000, - "from": "default", - "field": "taskTimeout" - }, - { - "value": true, - "from": "default", - "field": "testIsolation" - }, - { - "value": true, - "from": "default", - "field": "trashAssetsBeforeRuns" - }, - { - "value": null, - "from": "default", - "field": "userAgent" - }, - { - "value": true, - "from": "default", - "field": "video" - }, - { - "value": 32, - "from": "default", - "field": "videoCompression" - }, - { - "value": "cypress/videos", - "from": "default", - "field": "videosFolder" - }, - { - "value": true, - "from": "default", - "field": "videoUploadOnPasses" - }, - { - "value": 500, - "from": "default", - "field": "viewportHeight" - }, - { - "value": 500, - "from": "default", - "field": "viewportWidth" - }, - { - "value": true, - "from": "default", - "field": "waitForAnimations" - }, - { - "value": true, - "from": "default", - "field": "watchForFileChanges" - }, - { - "value": "**/*.cy.{js,jsx,ts,tsx}", - "from": "default", - "field": "specPattern" - }, - { - "value": [ - { - "name": "chrome", - "family": "chromium", - "channel": "stable", - "displayName": "Chrome", - "version": "109.0.5414.119", - "path": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome", - "minSupportedVersion": 64, - "majorVersion": "109" - }, - { - "name": "firefox", - "family": "firefox", - "channel": "stable", - "displayName": "Firefox", - "version": "107.0.1", - "path": "/Applications/Firefox.app/Contents/MacOS/firefox", - "minSupportedVersion": 86, - "majorVersion": "107" - }, - { - "name": "electron", - "channel": "stable", - "family": "chromium", - "displayName": "Electron", - "version": "106.0.5249.51", - "path": "", - "majorVersion": 106 - } - ], - "from": "runtime", - "field": "browsers" - }, - { - "value": null, - "from": "default", - "field": "hosts" - }, - { - "value": true, - "from": "default", - "field": "isInteractive" - } - ], - "isFullConfigReady": true, - "hasNonExampleSpec": true, - "savedState": { - "firstOpened": 1674605493218, - "lastOpened": 1675067256771, - "lastProjectId": "7p5uce", - "specFilter": "", - "banners": { - "aci_082022_record": { - "lastShown": 1675061062102 - } - } - }, - "cloudProject": { - "__typename": "CloudProject", - "id": "Q2xvdWRQcm9qZWN0OjdwNXVjZQ==", - "runs": { - "nodes": [ - { - "id": "Q2xvdWRSdW46bkdudmx5d3BHWg==", - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2", - "__typename": "CloudRun" - }, - { - "id": "Q2xvdWRSdW46YkxtdnhXWmpPUA==", - "status": "FAILED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/1", - "__typename": "CloudRun" - } - ], - "__typename": "CloudRunConnection" - } - }, - "__typename": "CurrentProject" - } - } -} \ No newline at end of file diff --git a/packages/app/cypress/fixtures/debug-Passing/gql-HeaderBar_HeaderBarQuery.json b/packages/app/cypress/fixtures/debug-Passing/gql-HeaderBar_HeaderBarQuery.json deleted file mode 100644 index c9c094137b66..000000000000 --- a/packages/app/cypress/fixtures/debug-Passing/gql-HeaderBar_HeaderBarQuery.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "data": { - "currentProject": { - "id": "Q3VycmVudFByb2plY3Q6L1VzZXJzL2xhY2hsYW5taWxsZXIvY29kZS9kdW1wL2VsZXV0aGVyaWEvcGFja2FnZXMvZnJvbnRlbmQ=", - "title": "frontend", - "config": [ - { - "value": 5, - "from": "default", - "field": "animationDistanceThreshold" - }, - { - "value": "arm64", - "from": "default", - "field": "arch" - }, - { - "value": null, - "from": "default", - "field": "baseUrl" - }, - { - "value": null, - "from": "default", - "field": "blockHosts" - }, - { - "value": true, - "from": "default", - "field": "chromeWebSecurity" - }, - { - "value": [], - "from": "default", - "field": "clientCertificates" - }, - { - "value": 4000, - "from": "default", - "field": "defaultCommandTimeout" - }, - { - "value": "cypress/downloads", - "from": "default", - "field": "downloadsFolder" - }, - { - "value": { - "INTERNAL_CLOUD_ENV": "production", - "INTERNAL_GRAPHQL_PORT": 4444, - "INTERNAL_EVENT_COLLECTOR_ENV": "staging", - "CONFIG_ENV": "production" - }, - "field": "env", - "from": "env" - }, - { - "value": 60000, - "from": "default", - "field": "execTimeout" - }, - { - "value": false, - "from": "default", - "field": "experimentalCspAllowList" - }, - { - "value": false, - "from": "default", - "field": "experimentalFetchPolyfill" - }, - { - "value": false, - "from": "default", - "field": "experimentalInteractiveRunEvents" - }, - { - "value": false, - "from": "default", - "field": "experimentalRunAllSpecs" - }, - { - "value": false, - "from": "default", - "field": "experimentalMemoryManagement" - }, - { - "value": false, - "from": "default", - "field": "experimentalModifyObstructiveThirdPartyCode" - }, - { - "value": null, - "from": "default", - "field": "experimentalSkipDomainInjection" - }, - { - "value": false, - "from": "default", - "field": "experimentalOriginDependencies" - }, - { - "value": false, - "from": "default", - "field": "experimentalSourceRewriting" - }, - { - "value": true, - "from": "config", - "field": "experimentalSingleTabRunMode" - }, - { - "value": false, - "from": "default", - "field": "experimentalStudio" - }, - { - "value": false, - "from": "default", - "field": "experimentalWebKitSupport" - }, - { - "value": "", - "from": "default", - "field": "fileServerFolder" - }, - { - "value": "cypress/fixtures", - "from": "default", - "field": "fixturesFolder" - }, - { - "value": [ - "**/__snapshots__/*", - "**/__image_snapshots__/*" - ], - "from": "default", - "field": "excludeSpecPattern" - }, - { - "value": false, - "from": "default", - "field": "includeShadowDom" - }, - { - "value": 0, - "from": "default", - "field": "keystrokeDelay" - }, - { - "value": true, - "from": "default", - "field": "modifyObstructiveCode" - }, - { - "from": "default", - "field": "nodeVersion" - }, - { - "value": 50, - "from": "default", - "field": "numTestsKeptInMemory" - }, - { - "value": "darwin", - "from": "default", - "field": "platform" - }, - { - "value": 60000, - "from": "default", - "field": "pageLoadTimeout" - }, - { - "value": null, - "from": "default", - "field": "port" - }, - { - "value": "vgqrwp", - "from": "config", - "field": "projectId" - }, - { - "value": 20, - "from": "default", - "field": "redirectionLimit" - }, - { - "value": "spec", - "from": "default", - "field": "reporter" - }, - { - "value": null, - "from": "default", - "field": "reporterOptions" - }, - { - "value": 5000, - "from": "default", - "field": "requestTimeout" - }, - { - "value": null, - "from": "default", - "field": "resolvedNodePath" - }, - { - "value": null, - "from": "default", - "field": "resolvedNodeVersion" - }, - { - "value": 30000, - "from": "default", - "field": "responseTimeout" - }, - { - "value": { - "runMode": 0, - "openMode": 0 - }, - "from": "default", - "field": "retries" - }, - { - "value": true, - "from": "default", - "field": "screenshotOnRunFailure" - }, - { - "value": "cypress/screenshots", - "from": "default", - "field": "screenshotsFolder" - }, - { - "value": 250, - "from": "default", - "field": "slowTestThreshold" - }, - { - "value": "top", - "from": "default", - "field": "scrollBehavior" - }, - { - "value": "cypress/support/component.{js,jsx,ts,tsx}", - "from": "default", - "field": "supportFile" - }, - { - "value": false, - "from": "default", - "field": "supportFolder" - }, - { - "value": 60000, - "from": "default", - "field": "taskTimeout" - }, - { - "value": true, - "from": "default", - "field": "testIsolation" - }, - { - "value": true, - "from": "default", - "field": "trashAssetsBeforeRuns" - }, - { - "value": null, - "from": "default", - "field": "userAgent" - }, - { - "value": true, - "from": "default", - "field": "video" - }, - { - "value": 32, - "from": "default", - "field": "videoCompression" - }, - { - "value": "cypress/videos", - "from": "default", - "field": "videosFolder" - }, - { - "value": true, - "from": "default", - "field": "videoUploadOnPasses" - }, - { - "value": 500, - "from": "default", - "field": "viewportHeight" - }, - { - "value": 500, - "from": "default", - "field": "viewportWidth" - }, - { - "value": true, - "from": "default", - "field": "waitForAnimations" - }, - { - "value": true, - "from": "default", - "field": "watchForFileChanges" - }, - { - "value": "**/*.cy.{js,jsx,ts,tsx}", - "from": "default", - "field": "specPattern" - }, - { - "value": [ - { - "name": "chrome", - "family": "chromium", - "channel": "stable", - "displayName": "Chrome", - "version": "109.0.5414.119", - "path": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome", - "minSupportedVersion": 64, - "majorVersion": "109" - }, - { - "name": "firefox", - "family": "firefox", - "channel": "stable", - "displayName": "Firefox", - "version": "107.0.1", - "path": "/Applications/Firefox.app/Contents/MacOS/firefox", - "minSupportedVersion": 86, - "majorVersion": "107" - }, - { - "name": "electron", - "channel": "stable", - "family": "chromium", - "displayName": "Electron", - "version": "106.0.5249.51", - "path": "", - "majorVersion": 106 - } - ], - "from": "runtime", - "field": "browsers" - }, - { - "value": null, - "from": "default", - "field": "hosts" - }, - { - "value": true, - "from": "default", - "field": "isInteractive" - } - ], - "savedState": { - "firstOpened": 1674605493218, - "lastOpened": 1675053721981, - "lastProjectId": "vgqrwp", - "specFilter": "" - }, - "currentTestingType": "component", - "branch": "main", - "packageManager": "yarn", - "activeBrowser": { - "id": "QnJvd3NlcjpjaHJvbWUtY2hyb21pdW0tc3RhYmxl", - "displayName": "Chrome", - "majorVersion": "109", - "__typename": "Browser" - }, - "browsers": [ - { - "id": "QnJvd3NlcjpjaHJvbWUtY2hyb21pdW0tc3RhYmxl", - "isSelected": true, - "displayName": "Chrome", - "version": "109.0.5414.119", - "majorVersion": "109", - "isVersionSupported": true, - "warning": null, - "disabled": null, - "__typename": "Browser" - }, - { - "id": "QnJvd3NlcjpmaXJlZm94LWZpcmVmb3gtc3RhYmxl", - "isSelected": false, - "displayName": "Firefox", - "version": "107.0.1", - "majorVersion": "107", - "isVersionSupported": true, - "warning": null, - "disabled": null, - "__typename": "Browser" - }, - { - "id": "QnJvd3NlcjplbGVjdHJvbi1jaHJvbWl1bS1zdGFibGU=", - "isSelected": false, - "displayName": "Electron", - "version": "106.0.5249.51", - "majorVersion": "106", - "isVersionSupported": true, - "warning": null, - "disabled": null, - "__typename": "Browser" - } - ], - "projectId": "vgqrwp", - "cloudProject": { - "__typename": "CloudProject", - "id": "Q2xvdWRQcm9qZWN0OnZncXJ3cA==" - }, - "__typename": "CurrentProject" - }, - "isGlobalMode": true, - "versions": { - "current": { - "id": "12.4.0", - "version": "12.4.0", - "released": "2023-01-24T18:40:53.125Z", - "__typename": "Version" - }, - "latest": { - "id": "12.4.1", - "version": "12.4.1", - "released": "2023-01-27T15:00:32.366Z", - "__typename": "Version" - }, - "__typename": "VersionData" - }, - "cloudViewer": { - "id": "Q2xvdWRVc2VyOjcxYTM3NmVhLTdlMGUtNDBhOS1hMTAzLWMwM2NmNTMyMmQyZg==", - "cloudOrganizationsUrl": "https://cloud.cypress.io/organizations", - "organizations": { - "nodes": [ - { - "id": "Q2xvdWRPcmdhbml6YXRpb246NjE5ODJiMmItOTRmNy00ZjYzLTlmYjctNGI1MTc4NjQ5OWJh", - "name": "Org 2", - "projects": { - "nodes": [], - "__typename": "CloudProjectConnection" - }, - "__typename": "CloudOrganization" - }, - { - "id": "Q2xvdWRPcmdhbml6YXRpb246MDIxZmVhNjctZDYwOC00YWIyLWFmMTctM2Y4YTJhMjNkMDE5", - "name": "Lachlan's Personal Projects", - "projects": { - "nodes": [ - { - "id": "Q2xvdWRQcm9qZWN0OnZncXJ3cA==", - "slug": "vgqrwp", - "name": "Rhythm Game", - "__typename": "CloudProject" - } - ], - "__typename": "CloudProjectConnection" - }, - "__typename": "CloudOrganization" - }, - { - "id": "Q2xvdWRPcmdhbml6YXRpb246ODllYmMwOTktNzhjMS00YjIzLWIwYzMtNjAzMGY0MjAxNDBj", - "name": "Lachlan Miller", - "projects": { - "nodes": [ - { - "id": "Q2xvdWRQcm9qZWN0Om9mODhoNQ==", - "slug": "of88h5", - "name": "baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0Onp5N2dzZQ==", - "slug": "zy7gse", - "name": "express", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmZ1aDkzOQ==", - "slug": "fuh939", - "name": "bannerjs", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OjVicHF0MQ==", - "slug": "5bpqt1", - "name": "baretest88", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OjJ5dm1odQ==", - "slug": "2yvmhu", - "name": "baretest414141", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0Ojk4dzhveQ==", - "slug": "98w8oy", - "name": "desktop-gui-testing", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmJqdWJjYQ==", - "slug": "bjubca", - "name": "baretest58", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmQ4ZjM5bQ==", - "slug": "d8f39m", - "name": "baretest00", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmR3am5vMg==", - "slug": "dwjno2", - "name": "baretest66", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmZ3ZHZ1Mw==", - "slug": "fwdvu3", - "name": "31baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OnVxNHhyYg==", - "slug": "uq4xrb", - "name": "baretest33331", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0Ong5Y3BzOQ==", - "slug": "x9cps9", - "name": "555baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmZ6bW53Yw==", - "slug": "fzmnwc", - "name": "baretestdd", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OnU5Y3d2Zg==", - "slug": "u9cwvf", - "name": "baretest-41", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0Om9rZDQ3OA==", - "slug": "okd478", - "name": "baretest-1231", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OjkxNTZiMw==", - "slug": "9156b3", - "name": "baretest555", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmlvbmNhbg==", - "slug": "ioncan", - "name": "baretest-asdf", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OnpuYm9qOQ==", - "slug": "znboj9", - "name": "baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmljczdteA==", - "slug": "ics7mx", - "name": "baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OnN1cjRidw==", - "slug": "sur4bw", - "name": "baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OjF1b2c1eA==", - "slug": "1uog5x", - "name": "baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0Om52MXJ0OA==", - "slug": "nv1rt8", - "name": "baretest", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OmlnM2Nzaw==", - "slug": "ig3csk", - "name": "baretest-1", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OjhlbWU2MQ==", - "slug": "8eme61", - "name": "rhythm-frontendddd", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0Ojk4anA1Ng==", - "slug": "98jp56", - "name": "rhythm-frontend", - "__typename": "CloudProject" - }, - { - "id": "Q2xvdWRQcm9qZWN0OjNlNWJwYg==", - "slug": "3e5bpb", - "name": "Lachlan Miller Testing", - "__typename": "CloudProject" - } - ], - "__typename": "CloudProjectConnection" - }, - "__typename": "CloudOrganization" - } - ], - "__typename": "CloudOrganizationConnection" - }, - "email": "lachlan.miller.1990@outlook.com", - "fullName": "Lachlan Miller", - "firstOrganization": { - "nodes": [ - { - "id": "Q2xvdWRPcmdhbml6YXRpb246NjE5ODJiMmItOTRmNy00ZjYzLTlmYjctNGI1MTc4NjQ5OWJh", - "__typename": "CloudOrganization" - } - ], - "__typename": "CloudOrganizationConnection" - }, - "__typename": "CloudUser" - }, - "authState": { - "browserOpened": false, - "name": null, - "message": null, - "__typename": "AuthState" - }, - "cachedUser": { - "id": "Q2FjaGVkVXNlcjpsYWNobGFuLm1pbGxlci4xOTkwQG91dGxvb2suY29t", - "fullName": "Lachlan Miller", - "email": "lachlan.miller.1990@outlook.com", - "__typename": "CachedUser" - } - } -} \ No newline at end of file diff --git a/packages/app/cypress/fixtures/debug-Passing/gql-MainAppQuery.json b/packages/app/cypress/fixtures/debug-Passing/gql-MainAppQuery.json deleted file mode 100644 index 5e37c261c6b1..000000000000 --- a/packages/app/cypress/fixtures/debug-Passing/gql-MainAppQuery.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "data": { - "baseError": null, - "currentProject": { - "id": "Q3VycmVudFByb2plY3Q6L1VzZXJzL2xhY2hsYW5taWxsZXIvY29kZS9kdW1wL2VsZXV0aGVyaWEvcGFja2FnZXMvZnJvbnRlbmQ=", - "isLoadingConfigFile": false, - "isLoadingNodeEvents": false, - "__typename": "CurrentProject" - } - } -} \ No newline at end of file diff --git a/packages/app/cypress/fixtures/debug-Passing/gql-SideBarNavigationContainer.json b/packages/app/cypress/fixtures/debug-Passing/gql-SideBarNavigationContainer.json deleted file mode 100644 index ea6cd32793be..000000000000 --- a/packages/app/cypress/fixtures/debug-Passing/gql-SideBarNavigationContainer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "data": { - "localSettings": { - "preferences": { - "isSideNavigationOpen": true, - "isSpecsListOpen": false, - "autoScrollingEnabled": false, - "reporterWidth": 618, - "specListWidth": null, - "__typename": "LocalSettingsPreferences" - }, - "__typename": "LocalSettings" - }, - "currentProject": { - "id": "Q3VycmVudFByb2plY3Q6L1VzZXJzL2xhY2hsYW5taWxsZXIvY29kZS9kdW1wL2VsZXV0aGVyaWEvcGFja2FnZXMvZnJvbnRlbmQ=", - "cloudProject": { - "__typename": "CloudProject", - "id": "Q2xvdWRQcm9qZWN0OjdwNXVjZQ==", - "runByNumber": { - "id": "Q2xvdWRSdW46bkdudmx5d3BHWg==", - "status": "PASSED", - "totalFailed": 0, - "__typename": "CloudRun" - } - }, - "isCTConfigured": true, - "isE2EConfigured": true, - "currentTestingType": "component", - "title": "frontend", - "branch": "main", - "__typename": "CurrentProject" - }, - "invokedFromCli": true - } -} \ No newline at end of file diff --git a/packages/app/cypress/fixtures/debug-Passing/gql-SpecsPageContainer.json b/packages/app/cypress/fixtures/debug-Passing/gql-SpecsPageContainer.json deleted file mode 100644 index 81ff604e8629..000000000000 --- a/packages/app/cypress/fixtures/debug-Passing/gql-SpecsPageContainer.json +++ /dev/null @@ -1,1825 +0,0 @@ -{ - "data": { - "currentProject": { - "id": "Q3VycmVudFByb2plY3Q6L1VzZXJzL2xhY2hsYW5taWxsZXIvY29kZS9kdW1wL2VsZXV0aGVyaWEvcGFja2FnZXMvZnJvbnRlbmQ=", - "projectRoot": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend", - "currentTestingType": "component", - "cloudProject": { - "__typename": "CloudProject", - "id": "Q2xvdWRQcm9qZWN0OjdwNXVjZQ==" - }, - "specs": [ - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9EaWZmaWN1bHR5SXRlbS5jeS50cw==", - "name": "src/components/DifficultyItem.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/DifficultyItem.cy.ts", - "baseName": "DifficultyItem.cy.ts", - "fileName": "DifficultyItem", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/components/DifficultyItem.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2022-07-21 19:00:38 +1000", - "lastModifiedHumanReadable": "6 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "a33f7f4", - "subject": "feat: cover (#7)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5RWFXWm1hV04xYkhSNVNYUmxiUzVqZVM1MGN5Sjk=", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZSR2xtWm1samRXeDBlVWwwWlcwdVkza3VkSE09", - "retrievedAt": "2023-01-30T08:27:41.958Z", - "averageDuration": 143.5, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpaalU0TnpJeFltSXROek13T1Mxa05XWXlMV05pT1dNdE5UVTRZemRsTVdKak9HUTE=", - "runNumber": 2, - "basename": "DifficultyItem.cy.ts", - "path": "src/components/DifficultyItem.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 163, - "max": 163, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22417c1c76-266a-4919-90c3-80bd7c54a079%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FDifficultyItem.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - }, - { - "id": "Q2xvdWRTcGVjUnVuOmUyYTdjYWQ2LWU1NDgtNDdjMy05YTI0LWIyMTQ5MWM0NDViMzpaalU0TnpJeFltSXROek13T1Mxa05XWXlMV05pT1dNdE5UVTRZemRsTVdKak9HUTE=", - "runNumber": 1, - "basename": "DifficultyItem.cy.ts", - "path": "src/components/DifficultyItem.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T06:46:21.899Z", - "groupCount": 1, - "specDuration": { - "min": 124, - "max": 124, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/1/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22a6f04b21-1469-4c83-8eab-3bf3e27bd5d9%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FDifficultyItem.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9EaWZmaWN1bHR5TGFiZWwuY3kudHM=", - "name": "src/components/DifficultyLabel.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/DifficultyLabel.cy.ts", - "baseName": "DifficultyLabel.cy.ts", - "fileName": "DifficultyLabel", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/components/DifficultyLabel.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2022-11-11 17:54:50 +1000", - "lastModifiedHumanReadable": "3 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "c878ac4", - "subject": "chore: fix build", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5RWFXWm1hV04xYkhSNVRHRmlaV3d1WTNrdWRITWlmUT09", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZSR2xtWm1samRXeDBlVXhoWW1Wc0xtTjVMblJ6", - "retrievedAt": "2023-01-30T08:27:41.963Z", - "averageDuration": 82, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpZV1ExTmpCalptUXRNRE16WXkweE1HVXpMV0l3WXpNdFlqQXhaVGswTnpZMU5qVTQ=", - "runNumber": 2, - "basename": "DifficultyLabel.cy.ts", - "path": "src/components/DifficultyLabel.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 82, - "max": 82, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%2270ca1044-12a0-4d2e-8f19-09fe8b204a33%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FDifficultyLabel.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9EaWZmaWN1bHR5UGFuZWwuY3kudHM=", - "name": "src/components/DifficultyPanel.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/DifficultyPanel.cy.ts", - "baseName": "DifficultyPanel.cy.ts", - "fileName": "DifficultyPanel", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/components/DifficultyPanel.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2022-11-11 11:49:31 +1000", - "lastModifiedHumanReadable": "3 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "3d3969b", - "subject": "wip: animation (#42)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5RWFXWm1hV04xYkhSNVVHRnVaV3d1WTNrdWRITWlmUT09", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZSR2xtWm1samRXeDBlVkJoYm1Wc0xtTjVMblJ6", - "retrievedAt": "2023-01-30T08:27:41.963Z", - "averageDuration": 63, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpORGM0WkRBMVpXWXRPRFJqTWkxa1pEQXdMVE0yWlRJdE9EYzVNREV6WmpSa05XVmo=", - "runNumber": 2, - "basename": "DifficultyPanel.cy.ts", - "path": "src/components/DifficultyPanel.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 63, - "max": 63, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22e4a26572-8cc4-4748-b46b-6227a54d5efe%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FDifficultyPanel.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9QbGF5U3ltYm9sLmN5LnRz", - "name": "src/components/PlaySymbol.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/PlaySymbol.cy.ts", - "baseName": "PlaySymbol.cy.ts", - "fileName": "PlaySymbol", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/components/PlaySymbol.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2022-07-21 19:00:38 +1000", - "lastModifiedHumanReadable": "6 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "a33f7f4", - "subject": "feat: cover (#7)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5UWJHRjVVM2x0WW05c0xtTjVMblJ6SW4wPQ==", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZVR3hoZVZONWJXSnZiQzVqZVM1MGN3PT0=", - "retrievedAt": "2023-01-30T08:27:41.963Z", - "averageDuration": 86, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpOakJtTkdObU9URXRORFF4WkMwek5qRmlMV0V3TTJFdE5qazJZVFpqWldZelpUa3g=", - "runNumber": 2, - "basename": "PlaySymbol.cy.ts", - "path": "src/components/PlaySymbol.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 86, - "max": 86, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%225d57972d-7c46-4d6a-8ed0-6b3758fbe601%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FPlaySymbol.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9Tb25nSW5mby5jeS50c3g=", - "name": "src/components/SongInfo.cy.tsx", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/SongInfo.cy.tsx", - "baseName": "SongInfo.cy.tsx", - "fileName": "SongInfo", - "specFileExtension": ".cy.tsx", - "fileExtension": ".tsx", - "relative": "src/components/SongInfo.cy.tsx", - "gitInfo": { - "lastModifiedTimestamp": "2022-10-17 15:36:42 +1000", - "lastModifiedHumanReadable": "4 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "8d26364", - "subject": "feat: redesign non gameplay screens (#26)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5VGIyNW5TVzVtYnk1amVTNTBjM2dpZlE9PQ==", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZVMjl1WjBsdVptOHVZM2t1ZEhONA==", - "retrievedAt": "2023-01-30T08:27:41.963Z", - "averageDuration": 150, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpOelpqTmpnMk5XTXRNVFJrWkMxa1pHSmxMVFU0T0dZdE5qSTVOMkV4WmpnM01tVXc=", - "runNumber": 2, - "basename": "SongInfo.cy.tsx", - "path": "src/components/SongInfo.cy.tsx", - "extension": ".cy.tsx", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 150, - "max": 150, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22ea0a04b3-a565-4a38-b628-c83ea1dd5fae%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FSongInfo.cy.tsx%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9Tb25nVGlsZS5jeS50c3g=", - "name": "src/components/SongTile.cy.tsx", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/SongTile.cy.tsx", - "baseName": "SongTile.cy.tsx", - "fileName": "SongTile", - "specFileExtension": ".cy.tsx", - "fileExtension": ".tsx", - "relative": "src/components/SongTile.cy.tsx", - "gitInfo": { - "lastModifiedTimestamp": "2022-12-01 22:21:22 +1000", - "lastModifiedHumanReadable": "9 weeks ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "2617bc6", - "subject": "feat: overlay while images load to avoid layout repaint (#46)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5VGIyNW5WR2xzWlM1amVTNTBjM2dpZlE9PQ==", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZVMjl1WjFScGJHVXVZM2t1ZEhONA==", - "retrievedAt": "2023-01-30T08:27:41.963Z", - "averageDuration": 42, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpabUUyT1RBMk16VXRZVEJoTnkxaFpUSm1MV1JpWm1NdE1HTXdObU5qWkRCaVkyVmg=", - "runNumber": 2, - "basename": "SongTile.cy.tsx", - "path": "src/components/SongTile.cy.tsx", - "extension": ".cy.tsx", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 42, - "max": 42, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%2296490e8f-cc33-4fdc-96ef-3b33fd0b62cc%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FSongTile.cy.tsx%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9Nb2RpZmllclBhbmVsL01vZGlmaWVyUGFuZWwuY3kudHM=", - "name": "src/components/ModifierPanel/ModifierPanel.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/ModifierPanel/ModifierPanel.cy.ts", - "baseName": "ModifierPanel.cy.ts", - "fileName": "ModifierPanel", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/components/ModifierPanel/ModifierPanel.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2022-07-21 19:00:38 +1000", - "lastModifiedHumanReadable": "6 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "a33f7f4", - "subject": "feat: cover (#7)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5TmIyUnBabWxsY2xCaGJtVnNMMDF2WkdsbWFXVnlVR0Z1Wld3dVkza3VkSE1pZlE9PQ==", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZUVzlrYVdacFpYSlFZVzVsYkM5TmIyUnBabWxsY2xCaGJtVnNMbU41TG5Seg==", - "retrievedAt": "2023-01-30T08:27:41.962Z", - "averageDuration": 343, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpOemRtT1RGaU9XSXRPREJrTmkwM05tWmpMVE14T0RRdFlXUXlZVE13T1RGalpXRTA=", - "runNumber": 2, - "basename": "ModifierPanel.cy.ts", - "path": "src/components/ModifierPanel/ModifierPanel.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 343, - "max": 343, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22424504f8-bb4b-4c60-89de-06fefe74fc94%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FModifierPanel%2FModifierPanel.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9JbnB1dC9JbnB1dC5jeS50cw==", - "name": "src/components/Input/Input.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/Input/Input.cy.ts", - "baseName": "Input.cy.ts", - "fileName": "Input", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/components/Input/Input.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2022-09-14 17:48:14 +1000", - "lastModifiedHumanReadable": "5 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "b0f0bd8", - "subject": "wip: authentication (#19)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5SmJuQjFkQzlKYm5CMWRDNWplUzUwY3lKOQ==", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZTVzV3ZFhRdlNXNXdkWFF1WTNrdWRITT0=", - "retrievedAt": "2023-01-30T08:27:41.962Z", - "averageDuration": 134, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpZall4TWpFeE9Ua3RZMlkzWVMxaVpEUTVMV016TUdNdE9HRTVaVFV4Tnpsa09EZG0=", - "runNumber": 2, - "basename": "Input.cy.ts", - "path": "src/components/Input/Input.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 134, - "max": 134, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22b792a8db-ef62-4e58-b0cb-48539857e6e7%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FInput%2FInput.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9JbmZvUGFuZWwvSW5mb1BhbmVsLmN5LnRz", - "name": "src/components/InfoPanel/InfoPanel.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/InfoPanel/InfoPanel.cy.ts", - "baseName": "InfoPanel.cy.ts", - "fileName": "InfoPanel", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/components/InfoPanel/InfoPanel.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2022-09-14 17:48:14 +1000", - "lastModifiedHumanReadable": "5 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "b0f0bd8", - "subject": "wip: authentication (#19)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5SmJtWnZVR0Z1Wld3dlNXNW1iMUJoYm1Wc0xtTjVMblJ6SW4wPQ==", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZTVzVtYjFCaGJtVnNMMGx1Wm05UVlXNWxiQzVqZVM1MGN3PT0=", - "retrievedAt": "2023-01-30T08:27:41.961Z", - "averageDuration": 2293.5, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpNekExTlRVNE1UWXRNalZqTmkxak0yWmlMVEU0WWpFdFkyWTVaV1JrWkRFM05qTmk=", - "runNumber": 2, - "basename": "InfoPanel.cy.ts", - "path": "src/components/InfoPanel/InfoPanel.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 56, - "max": 56, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%222bfc18aa-1f0b-4c98-801e-5128fa1d89ed%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FInfoPanel%2FInfoPanel.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - }, - { - "id": "Q2xvdWRTcGVjUnVuOmUyYTdjYWQ2LWU1NDgtNDdjMy05YTI0LWIyMTQ5MWM0NDViMzpNekExTlRVNE1UWXRNalZqTmkxak0yWmlMVEU0WWpFdFkyWTVaV1JrWkRFM05qTmk=", - "runNumber": 1, - "basename": "InfoPanel.cy.ts", - "path": "src/components/InfoPanel/InfoPanel.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T06:46:21.899Z", - "groupCount": 1, - "specDuration": { - "min": 4531, - "max": 4531, - "__typename": "SpecDataAggregate" - }, - "status": "FAILED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/1/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22e4130238-90c7-4331-9ab8-308c101c1095%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FInfoPanel%2FInfoPanel.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9Ob25HYW1lcGxheVNjcmVlbi9Ob25HYW1lcGxheVNjcmVlbi5jeS50cw==", - "name": "src/components/NonGameplayScreen/NonGameplayScreen.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/NonGameplayScreen/NonGameplayScreen.cy.ts", - "baseName": "NonGameplayScreen.cy.ts", - "fileName": "NonGameplayScreen", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/components/NonGameplayScreen/NonGameplayScreen.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2023-01-29 17:06:20 +1000", - "lastModifiedHumanReadable": "25 hours ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "37fa5bf", - "subject": "chore: fix types", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5T2IyNUhZVzFsY0d4aGVWTmpjbVZsYmk5T2IyNUhZVzFsY0d4aGVWTmpjbVZsYmk1amVTNTBjeUo5", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZUbTl1UjJGdFpYQnNZWGxUWTNKbFpXNHZUbTl1UjJGdFpYQnNZWGxUWTNKbFpXNHVZM2t1ZEhNPQ==", - "retrievedAt": "2023-01-30T08:27:41.962Z", - "averageDuration": 156, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpaVFF6TURSak1EY3RNekZqWkMxaE1qWTJMV1UwTVRFdE1tTTBObVUyWldRMU9USXc=", - "runNumber": 2, - "basename": "NonGameplayScreen.cy.ts", - "path": "src/components/NonGameplayScreen/NonGameplayScreen.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 156, - "max": 156, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%2228cc2158-81b5-4974-b16f-cc31d9b04743%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FNonGameplayScreen%2FNonGameplayScreen.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9QbGFpblBhbmVsL1BsYWluUGFuZWwuY3kudHM=", - "name": "src/components/PlainPanel/PlainPanel.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/PlainPanel/PlainPanel.cy.ts", - "baseName": "PlainPanel.cy.ts", - "fileName": "PlainPanel", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/components/PlainPanel/PlainPanel.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2022-09-14 17:48:14 +1000", - "lastModifiedHumanReadable": "5 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "b0f0bd8", - "subject": "wip: authentication (#19)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5UWJHRnBibEJoYm1Wc0wxQnNZV2x1VUdGdVpXd3VZM2t1ZEhNaWZRPT0=", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZVR3hoYVc1UVlXNWxiQzlRYkdGcGJsQmhibVZzTG1ONUxuUno=", - "retrievedAt": "2023-01-30T08:27:41.963Z", - "averageDuration": 84, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpPV1F4TlRoak1UZ3RaamhpTWkwd1ptSm1MVGMyTTJVdFptSmhNemd5WkdRM05XRTE=", - "runNumber": 2, - "basename": "PlainPanel.cy.ts", - "path": "src/components/PlainPanel/PlainPanel.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 84, - "max": 84, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22d6a84337-f91a-4ac1-aa99-44258686a8db%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FPlainPanel%2FPlainPanel.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9TY29yZUJhZGdlL1Njb3JlQmFkZ2UuY3kudHM=", - "name": "src/components/ScoreBadge/ScoreBadge.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/ScoreBadge/ScoreBadge.cy.ts", - "baseName": "ScoreBadge.cy.ts", - "fileName": "ScoreBadge", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/components/ScoreBadge/ScoreBadge.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2022-07-21 19:00:38 +1000", - "lastModifiedHumanReadable": "6 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "a33f7f4", - "subject": "feat: cover (#7)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5VFkyOXlaVUpoWkdkbEwxTmpiM0psUW1Ga1oyVXVZM2t1ZEhNaWZRPT0=", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZVMk52Y21WQ1lXUm5aUzlUWTI5eVpVSmhaR2RsTG1ONUxuUno=", - "retrievedAt": "2023-01-30T08:27:41.963Z", - "averageDuration": 36, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpPVGswT1dNM09HTXRZams1WmkwM01XWTFMV1JoTjJRdFlqYzBaRE5tWVRkbFpUUTI=", - "runNumber": 2, - "basename": "ScoreBadge.cy.ts", - "path": "src/components/ScoreBadge/ScoreBadge.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 36, - "max": 36, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%2268d839b4-003c-4fd2-af26-736c429c71aa%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FScoreBadge%2FScoreBadge.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9TaWduSW5Gb3JtL1NpZ25JbkZvcm0uY3kudHN4", - "name": "src/components/SignInForm/SignInForm.cy.tsx", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/SignInForm/SignInForm.cy.tsx", - "baseName": "SignInForm.cy.tsx", - "fileName": "SignInForm", - "specFileExtension": ".cy.tsx", - "fileExtension": ".tsx", - "relative": "src/components/SignInForm/SignInForm.cy.tsx", - "gitInfo": { - "lastModifiedTimestamp": "2022-10-20 21:42:48 +1000", - "lastModifiedHumanReadable": "3 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "54ed885", - "subject": "feat: track and display scores (#31)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5VGFXZHVTVzVHYjNKdEwxTnBaMjVKYmtadmNtMHVZM2t1ZEhONEluMD0=", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZVMmxuYmtsdVJtOXliUzlUYVdkdVNXNUdiM0p0TG1ONUxuUnplQT09", - "retrievedAt": "2023-01-30T08:27:41.963Z", - "averageDuration": 85, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpZamMxWlRFeE1HTXRNREl6T1MxaFpUaGtMVEF4WmpjdFpUQmtZelkxWkRrM09UY3g=", - "runNumber": 2, - "basename": "SignInForm.cy.tsx", - "path": "src/components/SignInForm/SignInForm.cy.tsx", - "extension": ".cy.tsx", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 85, - "max": 85, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22f0d81de4-5455-459a-a0aa-654ec07ffe89%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FSignInForm%2FSignInForm.cy.tsx%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvY29tcG9uZW50cy9TaWduVXBGb3JtL1NpZ25VcEZvcm0uY3kudHM=", - "name": "src/components/SignUpForm/SignUpForm.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/components/SignUpForm/SignUpForm.cy.ts", - "baseName": "SignUpForm.cy.ts", - "fileName": "SignUpForm", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/components/SignUpForm/SignUpForm.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2022-09-14 17:48:14 +1000", - "lastModifiedHumanReadable": "5 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "b0f0bd8", - "subject": "wip: authentication (#19)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12WTI5dGNHOXVaVzUwY3k5VGFXZHVWWEJHYjNKdEwxTnBaMjVWY0VadmNtMHVZM2t1ZEhNaWZRPT0=", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwyTnZiWEJ2Ym1WdWRITXZVMmxuYmxWd1JtOXliUzlUYVdkdVZYQkdiM0p0TG1ONUxuUno=", - "retrievedAt": "2023-01-30T08:27:41.963Z", - "averageDuration": 37, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpOMll3TWpFMk5tVXRPV1kxTkMwd09UY3pMVE16TWpndE1EY3dObVptTnpnMk1XUTU=", - "runNumber": 2, - "basename": "SignUpForm.cy.ts", - "path": "src/components/SignUpForm/SignUpForm.cy.ts", - "extension": ".cy.ts", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 37, - "max": 37, - "__typename": "SpecDataAggregate" - }, - "status": "NOTESTS", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%2274934d6b-ae18-4e0f-84c2-638b3e80acb5%5C%22%5D%22%2C%22label%22%3A%22src%2Fcomponents%2FSignUpForm%2FSignUpForm.cy.ts%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvc2NyZWVucy9Tb25nU2VsZWN0U2NyZWVuL0xvYWRpbmdTY3JlZW4uY3kudHN4", - "name": "src/screens/SongSelectScreen/LoadingScreen.cy.tsx", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/screens/SongSelectScreen/LoadingScreen.cy.tsx", - "baseName": "LoadingScreen.cy.tsx", - "fileName": "LoadingScreen", - "specFileExtension": ".cy.tsx", - "fileExtension": ".tsx", - "relative": "src/screens/SongSelectScreen/LoadingScreen.cy.tsx", - "gitInfo": { - "lastModifiedTimestamp": "2022-12-01 22:21:22 +1000", - "lastModifiedHumanReadable": "9 weeks ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "2617bc6", - "subject": "feat: overlay while images load to avoid layout repaint (#46)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12YzJOeVpXVnVjeTlUYjI1blUyVnNaV04wVTJOeVpXVnVMMHh2WVdScGJtZFRZM0psWlc0dVkza3VkSE40SW4wPQ==", - "fetchingStatus": "FETCHED", - "data": { - "__typename": "CloudProjectSpec", - "id": "Q2xvdWRQcm9qZWN0U3BlYzo3cDV1Y2U6YzNKakwzTmpjbVZsYm5NdlUyOXVaMU5sYkdWamRGTmpjbVZsYmk5TWIyRmthVzVuVTJOeVpXVnVMbU41TG5SemVBPT0=", - "retrievedAt": "2023-01-30T08:27:41.963Z", - "averageDuration": 108, - "isConsideredFlaky": false, - "flakyStatus": { - "__typename": "CloudFeatureNotEnabled" - }, - "specRuns": { - "nodes": [ - { - "id": "Q2xvdWRTcGVjUnVuOjBjOGM2NzJlLTQ4MjItNGIyYS05MjVhLTc1MDhlMmM0MmRiZjpNV1JqWW1FMVpXTXRNVEUwTUMxallqY3dMVEppTkRndE9HWXhObUV5TnpVeVpqRXc=", - "runNumber": 2, - "basename": "LoadingScreen.cy.tsx", - "path": "src/screens/SongSelectScreen/LoadingScreen.cy.tsx", - "extension": ".cy.tsx", - "testsFailed": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsPassed": { - "min": 1, - "max": 1, - "__typename": "SpecDataAggregate" - }, - "testsPending": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "testsSkipped": { - "min": 0, - "max": 0, - "__typename": "SpecDataAggregate" - }, - "createdAt": "2023-01-30T08:10:59.720Z", - "groupCount": 1, - "specDuration": { - "min": 108, - "max": 108, - "__typename": "SpecDataAggregate" - }, - "status": "PASSED", - "url": "https://cloud.cypress.io/projects/7p5uce/runs/2/test-results?specs=%5B%7B%22value%22%3A%22%5B%5C%22da1c0015-ebfe-4be1-8da1-f56c5a09ba26%5C%22%5D%22%2C%22label%22%3A%22src%2Fscreens%2FSongSelectScreen%2FLoadingScreen.cy.tsx%22%7D%5D", - "__typename": "CloudSpecRun" - } - ], - "__typename": "CloudSpecRunConnection" - } - }, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvc2NyZWVucy9Tb25nU2VsZWN0U2NyZWVuL09wdGlvbnNQYW5lLmN5LnRzeA==", - "name": "src/screens/SongSelectScreen/OptionsPane.cy.tsx", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/screens/SongSelectScreen/OptionsPane.cy.tsx", - "baseName": "OptionsPane.cy.tsx", - "fileName": "OptionsPane", - "specFileExtension": ".cy.tsx", - "fileExtension": ".tsx", - "relative": "src/screens/SongSelectScreen/OptionsPane.cy.tsx", - "gitInfo": { - "lastModifiedTimestamp": "2022-10-24 23:57:29 +1000", - "lastModifiedHumanReadable": "3 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "0558bd9", - "subject": "feat: gameplay modifiers (#32)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12YzJOeVpXVnVjeTlUYjI1blUyVnNaV04wVTJOeVpXVnVMMDl3ZEdsdmJuTlFZVzVsTG1ONUxuUnplQ0o5", - "fetchingStatus": "NOT_FETCHED", - "data": null, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvc2NyZWVucy9zdW1tYXJ5L1N1bW1hcnlTY3JlZW4uY3kudHN4", - "name": "src/screens/summary/SummaryScreen.cy.tsx", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/screens/summary/SummaryScreen.cy.tsx", - "baseName": "SummaryScreen.cy.tsx", - "fileName": "SummaryScreen", - "specFileExtension": ".cy.tsx", - "fileExtension": ".tsx", - "relative": "src/screens/summary/SummaryScreen.cy.tsx", - "gitInfo": { - "lastModifiedTimestamp": "2022-11-09 20:22:48 +1000", - "lastModifiedHumanReadable": "3 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "7712c95", - "subject": "chore: update to Cypress 11", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12YzJOeVpXVnVjeTl6ZFcxdFlYSjVMMU4xYlcxaGNubFRZM0psWlc0dVkza3VkSE40SW4wPQ==", - "fetchingStatus": "NOT_FETCHED", - "data": null, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvc2NyZWVucy9nYW1lcGxheS9HYW1lcGxheUxvYWRpbmcuY3kudHN4", - "name": "src/screens/gameplay/GameplayLoading.cy.tsx", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/screens/gameplay/GameplayLoading.cy.tsx", - "baseName": "GameplayLoading.cy.tsx", - "fileName": "GameplayLoading", - "specFileExtension": ".cy.tsx", - "fileExtension": ".tsx", - "relative": "src/screens/gameplay/GameplayLoading.cy.tsx", - "gitInfo": { - "lastModifiedTimestamp": "2022-11-01 21:26:36 +1000", - "lastModifiedHumanReadable": "3 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "6623c5c", - "subject": "feat: add loading screen when streaming song (#40)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12YzJOeVpXVnVjeTluWVcxbGNHeGhlUzlIWVcxbGNHeGhlVXh2WVdScGJtY3VZM2t1ZEhONEluMD0=", - "fetchingStatus": "NOT_FETCHED", - "data": null, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvc2NyZWVucy9nYW1lcGxheS9jb21wb25lbnRzL0dhbWVwbGF5L0dhbWVwbGF5LmN5LnRz", - "name": "src/screens/gameplay/components/Gameplay/Gameplay.cy.ts", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/screens/gameplay/components/Gameplay/Gameplay.cy.ts", - "baseName": "Gameplay.cy.ts", - "fileName": "Gameplay", - "specFileExtension": ".cy.ts", - "fileExtension": ".ts", - "relative": "src/screens/gameplay/components/Gameplay/Gameplay.cy.ts", - "gitInfo": { - "lastModifiedTimestamp": "2022-11-09 20:22:48 +1000", - "lastModifiedHumanReadable": "3 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "7712c95", - "subject": "chore: update to Cypress 11", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12YzJOeVpXVnVjeTluWVcxbGNHeGhlUzlqYjIxd2IyNWxiblJ6TDBkaGJXVndiR0Y1TDBkaGJXVndiR0Y1TG1ONUxuUnpJbjA9", - "fetchingStatus": "NOT_FETCHED", - "data": null, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - }, - { - "id": "U3BlYzovVXNlcnMvbGFjaGxhbm1pbGxlci9jb2RlL2R1bXAvZWxldXRoZXJpYS9wYWNrYWdlcy9mcm9udGVuZC9zcmMvc2NyZWVucy9nYW1lcGxheS9jb21wb25lbnRzL0dhbWVwbGF5L0dhbWVwbGF5U2NvcmUuY3kudHN4", - "name": "src/screens/gameplay/components/Gameplay/GameplayScore.cy.tsx", - "specType": "component", - "absolute": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/src/screens/gameplay/components/Gameplay/GameplayScore.cy.tsx", - "baseName": "GameplayScore.cy.tsx", - "fileName": "GameplayScore", - "specFileExtension": ".cy.tsx", - "fileExtension": ".tsx", - "relative": "src/screens/gameplay/components/Gameplay/GameplayScore.cy.tsx", - "gitInfo": { - "lastModifiedTimestamp": "2022-11-11 11:49:31 +1000", - "lastModifiedHumanReadable": "3 months ago", - "author": "Lachlan Miller", - "statusType": "unmodified", - "shortHash": "3d3969b", - "subject": "wip: animation (#42)", - "__typename": "GitInfo" - }, - "cloudSpec": { - "id": "UmVtb3RlRmV0Y2hhYmxlQ2xvdWRQcm9qZWN0U3BlY1Jlc3VsdDo3YWNkNDI4YzFlMmExMGU2ZWU4YmRhMWZjMTQ4OTE5NzdmZTI0ZTk5OmV5Sm1jbTl0UW5KaGJtTm9Jam9pYldGcGJpSXNJbkJ5YjJwbFkzUlRiSFZuSWpvaU4zQTFkV05sSWl3aWMzQmxZMUJoZEdnaU9pSnpjbU12YzJOeVpXVnVjeTluWVcxbGNHeGhlUzlqYjIxd2IyNWxiblJ6TDBkaGJXVndiR0Y1TDBkaGJXVndiR0Y1VTJOdmNtVXVZM2t1ZEhONEluMD0=", - "fetchingStatus": "NOT_FETCHED", - "data": null, - "__typename": "RemoteFetchableCloudProjectSpecResult" - }, - "__typename": "Spec" - } - ], - "config": [ - { - "value": 5, - "from": "default", - "field": "animationDistanceThreshold" - }, - { - "value": "arm64", - "from": "default", - "field": "arch" - }, - { - "value": null, - "from": "default", - "field": "baseUrl" - }, - { - "value": null, - "from": "default", - "field": "blockHosts" - }, - { - "value": true, - "from": "default", - "field": "chromeWebSecurity" - }, - { - "value": [], - "from": "default", - "field": "clientCertificates" - }, - { - "value": 4000, - "from": "default", - "field": "defaultCommandTimeout" - }, - { - "value": "cypress/downloads", - "from": "default", - "field": "downloadsFolder" - }, - { - "value": { - "INTERNAL_CLOUD_ENV": "production", - "INTERNAL_GRAPHQL_PORT": 4444, - "INTERNAL_EVENT_COLLECTOR_ENV": "staging", - "CONFIG_ENV": "production" - }, - "field": "env", - "from": "env" - }, - { - "value": 60000, - "from": "default", - "field": "execTimeout" - }, - { - "value": false, - "from": "default", - "field": "experimentalCspAllowList" - }, - { - "value": false, - "from": "default", - "field": "experimentalFetchPolyfill" - }, - { - "value": false, - "from": "default", - "field": "experimentalInteractiveRunEvents" - }, - { - "value": false, - "from": "default", - "field": "experimentalRunAllSpecs" - }, - { - "value": false, - "from": "default", - "field": "experimentalMemoryManagement" - }, - { - "value": false, - "from": "default", - "field": "experimentalModifyObstructiveThirdPartyCode" - }, - { - "value": null, - "from": "default", - "field": "experimentalSkipDomainInjection" - }, - { - "value": false, - "from": "default", - "field": "experimentalOriginDependencies" - }, - { - "value": false, - "from": "default", - "field": "experimentalSourceRewriting" - }, - { - "value": true, - "from": "config", - "field": "experimentalSingleTabRunMode" - }, - { - "value": false, - "from": "default", - "field": "experimentalStudio" - }, - { - "value": false, - "from": "default", - "field": "experimentalWebKitSupport" - }, - { - "value": "", - "from": "default", - "field": "fileServerFolder" - }, - { - "value": "cypress/fixtures", - "from": "default", - "field": "fixturesFolder" - }, - { - "value": [ - "**/__snapshots__/*", - "**/__image_snapshots__/*" - ], - "from": "default", - "field": "excludeSpecPattern" - }, - { - "value": false, - "from": "default", - "field": "includeShadowDom" - }, - { - "value": 0, - "from": "default", - "field": "keystrokeDelay" - }, - { - "value": true, - "from": "default", - "field": "modifyObstructiveCode" - }, - { - "from": "default", - "field": "nodeVersion" - }, - { - "value": 50, - "from": "default", - "field": "numTestsKeptInMemory" - }, - { - "value": "darwin", - "from": "default", - "field": "platform" - }, - { - "value": 60000, - "from": "default", - "field": "pageLoadTimeout" - }, - { - "value": null, - "from": "default", - "field": "port" - }, - { - "value": "7p5uce", - "from": "config", - "field": "projectId" - }, - { - "value": 20, - "from": "default", - "field": "redirectionLimit" - }, - { - "value": "spec", - "from": "default", - "field": "reporter" - }, - { - "value": null, - "from": "default", - "field": "reporterOptions" - }, - { - "value": 5000, - "from": "default", - "field": "requestTimeout" - }, - { - "value": null, - "from": "default", - "field": "resolvedNodePath" - }, - { - "value": null, - "from": "default", - "field": "resolvedNodeVersion" - }, - { - "value": 30000, - "from": "default", - "field": "responseTimeout" - }, - { - "value": { - "runMode": 0, - "openMode": 0 - }, - "from": "default", - "field": "retries" - }, - { - "value": true, - "from": "default", - "field": "screenshotOnRunFailure" - }, - { - "value": "cypress/screenshots", - "from": "default", - "field": "screenshotsFolder" - }, - { - "value": 250, - "from": "default", - "field": "slowTestThreshold" - }, - { - "value": "top", - "from": "default", - "field": "scrollBehavior" - }, - { - "value": "cypress/support/component.{js,jsx,ts,tsx}", - "from": "default", - "field": "supportFile" - }, - { - "value": false, - "from": "default", - "field": "supportFolder" - }, - { - "value": 60000, - "from": "default", - "field": "taskTimeout" - }, - { - "value": true, - "from": "default", - "field": "testIsolation" - }, - { - "value": true, - "from": "default", - "field": "trashAssetsBeforeRuns" - }, - { - "value": null, - "from": "default", - "field": "userAgent" - }, - { - "value": true, - "from": "default", - "field": "video" - }, - { - "value": 32, - "from": "default", - "field": "videoCompression" - }, - { - "value": "cypress/videos", - "from": "default", - "field": "videosFolder" - }, - { - "value": true, - "from": "default", - "field": "videoUploadOnPasses" - }, - { - "value": 500, - "from": "default", - "field": "viewportHeight" - }, - { - "value": 500, - "from": "default", - "field": "viewportWidth" - }, - { - "value": true, - "from": "default", - "field": "waitForAnimations" - }, - { - "value": true, - "from": "default", - "field": "watchForFileChanges" - }, - { - "value": "**/*.cy.{js,jsx,ts,tsx}", - "from": "default", - "field": "specPattern" - }, - { - "value": [ - { - "name": "chrome", - "family": "chromium", - "channel": "stable", - "displayName": "Chrome", - "version": "109.0.5414.119", - "path": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome", - "minSupportedVersion": 64, - "majorVersion": "109" - }, - { - "name": "firefox", - "family": "firefox", - "channel": "stable", - "displayName": "Firefox", - "version": "107.0.1", - "path": "/Applications/Firefox.app/Contents/MacOS/firefox", - "minSupportedVersion": 86, - "majorVersion": "107" - }, - { - "name": "electron", - "channel": "stable", - "family": "chromium", - "displayName": "Electron", - "version": "106.0.5249.51", - "path": "", - "majorVersion": 106 - } - ], - "from": "runtime", - "field": "browsers" - }, - { - "value": null, - "from": "default", - "field": "hosts" - }, - { - "value": true, - "from": "default", - "field": "isInteractive" - } - ], - "savedState": { - "firstOpened": 1674605493218, - "lastOpened": 1675067256771, - "lastProjectId": "7p5uce", - "specFilter": "", - "banners": { - "aci_082022_record": { - "lastShown": 1675061062102 - } - } - }, - "configFile": "cypress.config.ts", - "configFileAbsolutePath": "/Users/lachlanmiller/code/dump/eleutheria/packages/frontend/cypress.config.ts", - "projectId": "7p5uce", - "branch": "main", - "codeGenGlobs": { - "id": "Q29kZUdlbkdsb2JzOioudnVl", - "component": "*.vue", - "__typename": "CodeGenGlobs" - }, - "fileExtensionToUse": "ts", - "defaultSpecFileName": "cypress/component/ComponentName.cy.tsx", - "codeGenFramework": "vue", - "isDefaultSpecPattern": true, - "__typename": "CurrentProject" - }, - "cloudViewer": { - "id": "Q2xvdWRVc2VyOjcxYTM3NmVhLTdlMGUtNDBhOS1hMTAzLWMwM2NmNTMyMmQyZg==", - "firstOrganization": { - "nodes": [ - { - "id": "Q2xvdWRPcmdhbml6YXRpb246NjE5ODJiMmItOTRmNy00ZjYzLTlmYjctNGI1MTc4NjQ5OWJh", - "__typename": "CloudOrganization" - } - ], - "__typename": "CloudOrganizationConnection" - }, - "__typename": "CloudUser" - }, - "cachedUser": { - "id": "Q2FjaGVkVXNlcjpsYWNobGFuLm1pbGxlci4xOTkwQG91dGxvb2suY29t", - "__typename": "CachedUser" - }, - "localSettings": { - "availableEditors": [ - { - "id": "computer", - "name": "Finder", - "binary": "computer", - "__typename": "Editor" - }, - { - "id": "code", - "name": "Visual Studio Code", - "binary": "code", - "__typename": "Editor" - }, - { - "id": "vim", - "name": "Vim", - "binary": "vim", - "__typename": "Editor" - } - ], - "preferences": { - "preferredEditorBinary": null, - "__typename": "LocalSettingsPreferences" - }, - "__typename": "LocalSettings" - } - } -} \ No newline at end of file diff --git a/packages/app/cypress/fixtures/debug-Passing/gql-SpecsPageContainer_BranchInfo.json b/packages/app/cypress/fixtures/debug-Passing/gql-SpecsPageContainer_BranchInfo.json deleted file mode 100644 index 515d68773c62..000000000000 --- a/packages/app/cypress/fixtures/debug-Passing/gql-SpecsPageContainer_BranchInfo.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "data": { - "currentProject": { - "id": "Q3VycmVudFByb2plY3Q6L1VzZXJzL2xhY2hsYW5taWxsZXIvY29kZS9kdW1wL2VsZXV0aGVyaWEvcGFja2FnZXMvZnJvbnRlbmQ=", - "branch": "main", - "projectId": "7p5uce", - "__typename": "CurrentProject" - } - } -} \ No newline at end of file diff --git a/packages/app/src/composables/useCloudSpecData.ts b/packages/app/src/composables/useCloudSpecData.ts index c0e0ba7122a9..ed0756c0da11 100644 --- a/packages/app/src/composables/useCloudSpecData.ts +++ b/packages/app/src/composables/useCloudSpecData.ts @@ -27,7 +27,6 @@ type NonNullCloudSpec = Exclude, isOffline: Ref, - projectId: string | null | undefined, mostRecentUpdate: Ref, displayedSpecs: Ref<(SpecsListFragment | undefined)[]>, allSpecs: (SpecsListFragment | undefined)[], diff --git a/packages/app/src/composables/useRelevantRun.ts b/packages/app/src/composables/useRelevantRun.ts index 549fbf8acdf7..9327e86762aa 100644 --- a/packages/app/src/composables/useRelevantRun.ts +++ b/packages/app/src/composables/useRelevantRun.ts @@ -13,9 +13,15 @@ import { uniq } from 'lodash' * subscriptions had ended when the component it was registered in was unmounted. */ gql` - fragment UseRelevantRun on RelevantRun { all { + runId + runNumber + sha + status + } + latest { + runId runNumber sha status @@ -42,7 +48,7 @@ gql` ` -export function useRelevantRun (location: 'SIDEBAR' | 'DEBUG') { +export function useRelevantRun (location: 'SIDEBAR' | 'DEBUG' | 'RUNS' | 'SPECS') { const userProjectStatusStore = useUserProjectStatusStore() const shouldPause = computed(() => { @@ -68,6 +74,7 @@ export function useRelevantRun (location: 'SIDEBAR' | 'DEBUG') { return { all: subscriptionResponse.data.value?.relevantRuns?.all, + latest: subscriptionResponse.data.value?.relevantRuns?.latest, commitsAhead: subscriptionResponse.data.value?.relevantRuns?.commitsAhead, selectedRun, commitShas, diff --git a/packages/app/src/pages/Runs.vue b/packages/app/src/pages/Runs.vue index 3595f50c4fa3..6edb245b75d7 100644 --- a/packages/app/src/pages/Runs.vue +++ b/packages/app/src/pages/Runs.vue @@ -5,6 +5,7 @@ diff --git a/packages/app/src/pages/Specs/Index.vue b/packages/app/src/pages/Specs/Index.vue index 7bf70f8095d5..b9eb524adc0e 100644 --- a/packages/app/src/pages/Specs/Index.vue +++ b/packages/app/src/pages/Specs/Index.vue @@ -21,18 +21,27 @@ :is-default-spec-pattern="isDefaultSpecPattern" @showCreateSpecModal="showCreateSpecModal" /> + diff --git a/packages/app/src/specs/flaky-badge/FlakyInformation.cy.tsx b/packages/app/src/specs/flaky-badge/FlakyInformation.cy.tsx index a138e70971ce..531ef9b0fff1 100644 --- a/packages/app/src/specs/flaky-badge/FlakyInformation.cy.tsx +++ b/packages/app/src/specs/flaky-badge/FlakyInformation.cy.tsx @@ -22,10 +22,14 @@ describe('', () => { data: { __typename: 'CloudProjectSpec', id: '3', - isConsideredFlaky: flaky, - flakyStatus: { + isConsideredFlakyForRunIds: flaky, + flakyStatusForRunIds: { __typename: 'CloudProjectSpecFlakyStatus', dashboardUrl: '#', + flakyRuns: 1, + flakyRunsWindow: 5, + lastFlaky: 3, + severity: 'LOW', }, }, } diff --git a/packages/app/src/specs/flaky-badge/FlakyInformation.vue b/packages/app/src/specs/flaky-badge/FlakyInformation.vue index 341ef822ff15..289cede099a7 100644 --- a/packages/app/src/specs/flaky-badge/FlakyInformation.vue +++ b/packages/app/src/specs/flaky-badge/FlakyInformation.vue @@ -20,12 +20,13 @@ :href="cloudUrl" class="hocus:no-underline" > - @@ -39,8 +40,8 @@ import type { FlakyInformationProjectFragment, FlakyInformationSpecFragment, Fla import { gql } from '@urql/vue' import { computed } from 'vue' import Tooltip from '@packages/frontend-shared/src/components/Tooltip.vue' -import FlakySpecSummaryAdapter from './FlakySpecSummaryAdapter.vue' import FlakyBadge from './FlakyBadge.vue' +import FlakySpecSummary from './FlakySpecSummary.vue' import { getUrlWithParams } from '@packages/frontend-shared/src/utils/getUrlWithParams' gql` @@ -66,11 +67,15 @@ fragment FlakyInformationCloudSpec on RemoteFetchableCloudProjectSpecResult { data { ... on CloudProjectSpec { id - isConsideredFlaky(fromBranch: $fromBranch) - flakyStatus(fromBranch: $fromBranch, flakyRunsWindow: 50) { + isConsideredFlakyForRunIds(cloudRunIds: $runIds) + flakyStatusForRunIds(cloudRunIds: $runIds) { __typename ... on CloudProjectSpecFlakyStatus { dashboardUrl + severity + flakyRuns + flakyRunsWindow + lastFlaky } } } @@ -84,13 +89,12 @@ const props = defineProps<{ cloudSpecGql: FlakyInformationCloudSpecFragment | null | undefined }>() -const isFlaky = computed(() => props.cloudSpecGql?.data?.__typename === 'CloudProjectSpec' && !!props.cloudSpecGql?.data?.isConsideredFlaky) +const cloudSpec = computed(() => props.cloudSpecGql?.data?.__typename === 'CloudProjectSpec' ? props.cloudSpecGql.data : null) +const isFlaky = computed(() => !!cloudSpec.value?.isConsideredFlakyForRunIds) +const flakyStatus = computed(() => cloudSpec.value?.flakyStatusForRunIds?.__typename === 'CloudProjectSpecFlakyStatus' ? cloudSpec.value?.flakyStatusForRunIds : null) const cloudUrl = computed(() => { - const cloudSpec = props.cloudSpecGql?.data?.__typename === 'CloudProjectSpec' ? props.cloudSpecGql.data : null - const flakyStatus = cloudSpec?.flakyStatus?.__typename === 'CloudProjectSpecFlakyStatus' ? cloudSpec.flakyStatus : null - return getUrlWithParams({ - url: flakyStatus?.dashboardUrl || '#', + url: flakyStatus.value?.dashboardUrl || '#', params: { utm_medium: 'Specs Flake Annotation Badge', utm_campaign: 'Flaky', diff --git a/packages/app/src/specs/flaky-badge/FlakySpecSummaryAdapter.vue b/packages/app/src/specs/flaky-badge/FlakySpecSummaryAdapter.vue deleted file mode 100644 index a7a0e0f28eab..000000000000 --- a/packages/app/src/specs/flaky-badge/FlakySpecSummaryAdapter.vue +++ /dev/null @@ -1,86 +0,0 @@ - - - diff --git a/packages/data-context/src/DataContext.ts b/packages/data-context/src/DataContext.ts index 22d6bbe8066f..52c965fe45bd 100644 --- a/packages/data-context/src/DataContext.ts +++ b/packages/data-context/src/DataContext.ts @@ -44,7 +44,6 @@ import { ErrorDataSource } from './sources/ErrorDataSource' import { GraphQLDataSource } from './sources/GraphQLDataSource' import { RemoteRequestDataSource } from './sources/RemoteRequestDataSource' import { resetIssuedWarnings } from '@packages/config' -import { RemotePollingDataSource } from './sources/RemotePollingDataSource' const IS_DEV_ENV = process.env.CYPRESS_INTERNAL_ENV !== 'production' @@ -220,11 +219,6 @@ export class DataContext { return new ProjectDataSource(this) } - @cached - get remotePolling () { - return new RemotePollingDataSource(this) - } - @cached get relevantRuns () { return new RelevantRunsDataSource(this) diff --git a/packages/data-context/src/sources/GitDataSource.ts b/packages/data-context/src/sources/GitDataSource.ts index f3bd23e8e96e..3f7ab8caa576 100644 --- a/packages/data-context/src/sources/GitDataSource.ts +++ b/packages/data-context/src/sources/GitDataSource.ts @@ -467,6 +467,7 @@ export class GitDataSource { } __setGitHashesForTesting (hashes: string[]) { + debug('Setting git hashes for testing', hashes) this.#gitHashes = hashes } } diff --git a/packages/data-context/src/sources/RelevantRunSpecsDataSource.ts b/packages/data-context/src/sources/RelevantRunSpecsDataSource.ts index 87fe378869a2..2f618a2efb12 100644 --- a/packages/data-context/src/sources/RelevantRunSpecsDataSource.ts +++ b/packages/data-context/src/sources/RelevantRunSpecsDataSource.ts @@ -91,7 +91,7 @@ export class RelevantRunSpecsDataSource { debug('subscriptions', subscriptions) const runIds = uniq(compact(subscriptions?.map((sub) => sub.meta?.runId))) - debug('Polling for specs for runs: %o - runIds: %o', runIds) + debug('Polling for specs for runs: %o', runIds) const query = this.createQuery(compact(subscriptions.map((sub) => sub.meta?.info))) @@ -104,6 +104,10 @@ export class RelevantRunSpecsDataSource { debug(`Run data is `, runs) runs.forEach(async (run) => { + if (!run) { + return + } + const cachedRun = this.#cached.get(run.id) if (!cachedRun || !isEqual(run, cachedRun)) { diff --git a/packages/data-context/src/sources/RelevantRunsDataSource.ts b/packages/data-context/src/sources/RelevantRunsDataSource.ts index a0c1cd6e7f22..bce910659dc7 100644 --- a/packages/data-context/src/sources/RelevantRunsDataSource.ts +++ b/packages/data-context/src/sources/RelevantRunsDataSource.ts @@ -1,7 +1,7 @@ import { gql } from '@urql/core' import { print } from 'graphql' import debugLib from 'debug' -import { isEqual, takeWhile } from 'lodash' +import { isEqual, take, takeWhile } from 'lodash' import type { DataContext } from '../DataContext' import type { Query, RelevantRun, RelevantRunInfo, RelevantRunLocationEnum } from '../gen/graphcache-config.gen' @@ -37,7 +37,7 @@ const RELEVANT_RUN_OPERATION_DOC = gql` const RELEVANT_RUN_UPDATE_OPERATION = print(RELEVANT_RUN_OPERATION_DOC) -export const RUNS_EMPTY_RETURN: RelevantRun = { commitsAhead: -1, all: [] } +export const RUNS_EMPTY_RETURN: RelevantRun = { commitsAhead: -1, all: [], latest: [] } /** * DataSource to encapsulate querying Cypress Cloud for runs that match a list of local Git commit shas @@ -118,6 +118,7 @@ export class RelevantRunsDataSource { return run != null && !!run.runNumber && !!run.status && !!run.commitInfo?.sha }).map((run) => { return { + runId: run.id, runNumber: run.runNumber!, status: run.status!, sha: run.commitInfo?.sha!, @@ -140,8 +141,9 @@ export class RelevantRunsDataSource { if (run) { //filter relevant runs in case moving causes the previously selected run to no longer be relevant const relevantRuns = this.#takeRelevantRuns(this.#cached.all) + const latestRuns = this.#cached.latest - await this.#emitRelevantRunsIfChanged({ relevantRuns, selectedRun: run, shas }) + await this.#emitRelevantRunsIfChanged({ relevantRuns, selectedRun: run, shas, latestRuns }) } } @@ -181,6 +183,8 @@ export class RelevantRunsDataSource { const relevantRuns: RelevantRunInfo[] = this.#takeRelevantRuns(runs) + const latestRuns: RelevantRunInfo[] = this.#takeLatestRuns(runs) + // If there is a selected run that is no longer considered relevant, // make sure to still add it to the list of runs const selectedRunNumber = selectedRun?.runNumber @@ -196,7 +200,7 @@ export class RelevantRunsDataSource { } } - await this.#emitRelevantRunsIfChanged({ relevantRuns, selectedRun, shas }) + await this.#emitRelevantRunsIfChanged({ relevantRuns, selectedRun, shas, latestRuns }) } #takeRelevantRuns (runs: RelevantRunInfo[]) { @@ -210,20 +214,30 @@ export class RelevantRunsDataSource { return run.status === 'RUNNING' || run.sha === firstShaWithCompletedRun }) - debug('runs after take', relevantRuns) + debug('relevant runs after take', relevantRuns) return relevantRuns } - async #emitRelevantRunsIfChanged ({ relevantRuns, selectedRun, shas }: { + #takeLatestRuns (runs: RelevantRunInfo[]) { + const latestRuns = take(runs, 10) + + debug('latest runs after take', latestRuns) + + return latestRuns + } + + async #emitRelevantRunsIfChanged ({ relevantRuns, selectedRun, shas, latestRuns }: { relevantRuns: RelevantRunInfo[] selectedRun: RelevantRunInfo | undefined shas: string[] + latestRuns: RelevantRunInfo[] }) { const commitsAhead = selectedRun?.sha ? shas.indexOf(selectedRun.sha) : -1 const toCache: RelevantRun = { all: relevantRuns, + latest: latestRuns, commitsAhead, selectedRunNumber: selectedRun?.runNumber, } diff --git a/packages/data-context/src/sources/RemotePollingDataSource.ts b/packages/data-context/src/sources/RemotePollingDataSource.ts deleted file mode 100644 index 598d839ee4cb..000000000000 --- a/packages/data-context/src/sources/RemotePollingDataSource.ts +++ /dev/null @@ -1,101 +0,0 @@ -import { gql } from '@urql/core' -import { print } from 'graphql' -import debugLib from 'debug' - -import type { DataContext } from '../DataContext' -import type { Query } from '../gen/graphcache-config.gen' - -const debug = debugLib('cypress:data-context:sources:RemotePollingDataSource') - -const LATEST_RUN_UPDATE_OPERATION_DOC = gql` - query RemotePollingDataSource_latestRunUpdateSpecData( - $commitBranch: String! - $projectSlug: String! - # sinceDateTime: DateTime - ) { - cloudLatestRunUpdateSpecData(commitBranch: $commitBranch, projectSlug: $projectSlug) { - mostRecentUpdate - pollingInterval - } - } -` -const LATEST_RUN_UPDATE_OPERATION = print(LATEST_RUN_UPDATE_OPERATION_DOC) - -export class RemotePollingDataSource { - #subscribedCount = 0 - #specPolling?: NodeJS.Timeout - constructor (private ctx: DataContext) {} - - #startPollingForSpecs (branch: string, projectSlug: string) { - // when the page refreshes, a previously started subscription may be running - // this will reset it and start a new one - if (this.#specPolling) { - clearTimeout(this.#specPolling) - } - - debug(`Sending initial request for startPollingForSpecs`) - - // Send the spec polling request - this.#sendSpecPollingRequest(branch, projectSlug).catch((e) => { - debug(`Error executing specPollingRequest %o`, e) - }) - } - - #stopPolling () { - if (this.#specPolling) { - clearTimeout(this.#specPolling) - this.#specPolling = undefined - } - } - - async #sendSpecPollingRequest (commitBranch: string, projectSlug: string) { - const result = await this.ctx.cloud.executeRemoteGraphQL>({ - fieldName: 'cloudLatestRunUpdateSpecData', - operationDoc: LATEST_RUN_UPDATE_OPERATION_DOC, - operation: LATEST_RUN_UPDATE_OPERATION, - operationVariables: { - commitBranch, - projectSlug, - }, - requestPolicy: 'network-only', // we never want to hit local cache for this request - }) - - debug(`%s Response for startPollingForSpecs %o`, new Date().toISOString(), result) - - const secondsToPollNext = (result.data?.cloudLatestRunUpdateSpecData?.pollingInterval ?? 30) - const mostRecentUpdate = result.data?.cloudLatestRunUpdateSpecData?.mostRecentUpdate ?? null - - this.ctx.emitter.specPollingUpdate(mostRecentUpdate) - - this.#specPolling = setTimeout(async () => { - await this.#sendSpecPollingRequest(commitBranch, projectSlug) - }, secondsToPollNext * 1000) - - return result - } - - subscribeAndPoll (branch?: string | null, projectSlug?: string | null) { - if (!branch || !projectSlug) { - return this.ctx.emitter.subscribeTo('noopChange', { sendInitial: false }) - } - - debug('Subscribing, subscribed count %d', this.#subscribedCount) - if (this.#subscribedCount === 0) { - debug('Starting polling') - this.#startPollingForSpecs(branch, projectSlug) - } - - this.#subscribedCount++ - - return this.ctx.emitter.subscribeTo('specPollingUpdate', { - sendInitial: false, - onUnsubscribe: () => { - debug('Unsubscribing, subscribed count %d', this.#subscribedCount) - this.#subscribedCount-- - if (this.#subscribedCount === 0) { - this.#stopPolling() - } - }, - }) - } -} diff --git a/packages/data-context/src/sources/index.ts b/packages/data-context/src/sources/index.ts index 0ee2b9a4b9ac..6662e1d20907 100644 --- a/packages/data-context/src/sources/index.ts +++ b/packages/data-context/src/sources/index.ts @@ -13,7 +13,6 @@ export * from './MigrationDataSource' export * from './ProjectDataSource' export * from './RelevantRunSpecsDataSource' export * from './RelevantRunsDataSource' -export * from './RemotePollingDataSource' export * from './RemoteRequestDataSource' export * from './UtilDataSource' export * from './VersionsDataSource' diff --git a/packages/data-context/test/unit/sources/RelevantRunsDataSource.spec.ts b/packages/data-context/test/unit/sources/RelevantRunsDataSource.spec.ts index 286c4e19cdb3..78363d088dfb 100644 --- a/packages/data-context/test/unit/sources/RelevantRunsDataSource.spec.ts +++ b/packages/data-context/test/unit/sources/RelevantRunsDataSource.spec.ts @@ -17,8 +17,8 @@ type TestProject = typeof _PROJECTS[number] function formatRun (project: TestProject, index: number) { const run = project.data.cloudProjectBySlug.runsByCommitShas?.[index] - return (({ status, runNumber, commitInfo }) => { - return { status, runNumber, sha: commitInfo.sha } + return (({ status, runNumber, commitInfo, id }) => { + return { status, runNumber, sha: commitInfo.sha, runId: id } })(run) } @@ -160,6 +160,7 @@ describe('RelevantRunsDataSource', () => { expect(subValues[0], 'should emit first result of running').to.eql({ all: [formatRun(FAKE_PROJECT_ONE_RUNNING_RUN, 0)], commitsAhead: 0, + latest: [formatRun(FAKE_PROJECT_ONE_RUNNING_RUN, 0)], selectedRunNumber: 1, }) @@ -168,12 +169,20 @@ describe('RelevantRunsDataSource', () => { formatRun(FAKE_PROJECT_MULTIPLE_COMPLETED, 0), formatRun(FAKE_PROJECT_MULTIPLE_COMPLETED, 1), ], + latest: [ + formatRun(FAKE_PROJECT_MULTIPLE_COMPLETED, 0), + formatRun(FAKE_PROJECT_MULTIPLE_COMPLETED, 1), + ], commitsAhead: 1, selectedRunNumber: 1, }) expect(subValues[2], 'should emit selected run after moving').to.eql({ all: [formatRun(FAKE_PROJECT_MULTIPLE_COMPLETED, 0)], + latest: [ + formatRun(FAKE_PROJECT_MULTIPLE_COMPLETED, 0), + formatRun(FAKE_PROJECT_MULTIPLE_COMPLETED, 1), + ], commitsAhead: 0, selectedRunNumber: 4, }) @@ -213,12 +222,17 @@ describe('RelevantRunsDataSource', () => { expect(subValues[0], 'should emit first result of running').to.eql({ all: [formatRun(FAKE_PROJECT_ONE_RUNNING_RUN, 0)], + latest: [formatRun(FAKE_PROJECT_ONE_RUNNING_RUN, 0)], commitsAhead: 0, selectedRunNumber: 1, }) expect(subValues[1], 'should emit newer completed run on different sha').to.eql({ all: [formatRun(FAKE_PROJECT_MULTIPLE_COMPLETED, 0)], + latest: [ + formatRun(FAKE_PROJECT_MULTIPLE_COMPLETED, 0), + formatRun(FAKE_PROJECT_MULTIPLE_COMPLETED, 1), + ], commitsAhead: 0, selectedRunNumber: 4, }) diff --git a/packages/graphql/schemas/schema.graphql b/packages/graphql/schemas/schema.graphql index b9562d0b0f0e..fede6f0c64ea 100644 --- a/packages/graphql/schemas/schema.graphql +++ b/packages/graphql/schemas/schema.graphql @@ -1704,9 +1704,6 @@ type Mutation { """Ping configured Base URL""" pingBaseUrl: Query - """Removes the cache entries for specified cloudSpecByPath query records""" - purgeCloudSpecByPathCache(projectSlug: String!, specPaths: [String!]!): Boolean - """show the launchpad windows""" reconfigureProject: Boolean! @@ -2057,12 +2054,18 @@ type RelevantRun { """Information about the current commit for the local project""" currentCommitInfo: CommitInfo + """Latest relevant runs to fetch for the specs and runs page""" + latest: [RelevantRunInfo!]! + """Run number of the selected run in use on the Debug page""" selectedRunNumber: Int } """runNumber and commitSha for a given run""" type RelevantRunInfo { + """The run id""" + runId: ID! + """The runNumber that these spec counts belong to""" runNumber: Int! @@ -2075,7 +2078,9 @@ type RelevantRunInfo { enum RelevantRunLocationEnum { DEBUG + RUNS SIDEBAR + SPECS } """ @@ -2347,11 +2352,6 @@ type Subscription { """Issued when the watched specs for the project changes""" specsChange: CurrentProject - - """ - Initiates the polling mechanism with the Cypress Cloud to check if we should refetch specs, and mark specs as stale if we have updates - """ - startPollingForSpecs(branchName: String, projectId: String): String } enum SupportStatusEnum { diff --git a/packages/graphql/src/plugins/nexusSlowGuardPlugin.ts b/packages/graphql/src/plugins/nexusSlowGuardPlugin.ts index d87cf7cc8765..9c592a961b87 100644 --- a/packages/graphql/src/plugins/nexusSlowGuardPlugin.ts +++ b/packages/graphql/src/plugins/nexusSlowGuardPlugin.ts @@ -22,12 +22,15 @@ export const nexusSlowGuardPlugin = plugin({ if (isPromiseLike(result) && threshold !== false) { const resolvePath = pathToArray(info.path) + const start = process.hrtime.bigint() const hanging = setTimeout(() => { const operationId = `${info.operation.operation} ${info.operation.name?.value ?? `(anonymous)`}` if (process.env.CYPRESS_INTERNAL_ENV !== 'production') { + const totalMS = (process.hrtime.bigint() - start) / BigInt(1000000) + // eslint-disable-next-line no-console - console.error(chalk.red(`\n\nNexusSlowGuard: Taking more than ${threshold}ms to execute ${JSON.stringify(resolvePath)} for ${operationId}\n\n`)) + console.error(chalk.red(`\n\nNexusSlowGuard: Taking more than ${threshold}ms to execute ${JSON.stringify(resolvePath)} for ${operationId} (total time ${totalMS}ms)\n\n`)) } }, threshold) diff --git a/packages/graphql/src/schemaTypes/objectTypes/gql-Mutation.ts b/packages/graphql/src/schemaTypes/objectTypes/gql-Mutation.ts index cb3c61285902..323d96d727e7 100644 --- a/packages/graphql/src/schemaTypes/objectTypes/gql-Mutation.ts +++ b/packages/graphql/src/schemaTypes/objectTypes/gql-Mutation.ts @@ -8,13 +8,10 @@ import { GenerateSpecResponse } from './gql-GenerateSpecResponse' import { Cohort, CohortInput } from './gql-Cohorts' import { Query } from './gql-Query' import { ScaffoldedFile } from './gql-ScaffoldedFile' -import debugLib from 'debug' import { ReactComponentResponse } from './gql-ReactComponentResponse' import { TestsBySpecInput } from '../inputTypes' import { RunSpecResult } from '../unions' -const debug = debugLib('cypress:graphql:mutation') - export const mutation = mutationType({ definition (t) { t.field('copyTextToClipboard', { @@ -681,25 +678,6 @@ export const mutation = mutationType({ }, }) - t.field('purgeCloudSpecByPathCache', { - type: 'Boolean', - args: { - projectSlug: nonNull(stringArg({})), - specPaths: nonNull(list(nonNull(stringArg({})))), - }, - description: 'Removes the cache entries for specified cloudSpecByPath query records', - resolve: async (source, args, ctx) => { - const { projectSlug, specPaths } = args - - debug('Purging %d `cloudSpecByPath` cache records for project %s: %o', specPaths.length, projectSlug, specPaths) - for (let specPath of specPaths) { - await ctx.cloud.invalidate('Query', 'cloudSpecByPath', { projectSlug, specPath }) - } - - return true - }, - }) - t.field('refetchRemote', { type: Query, description: 'Signal that we are explicitly refetching remote data and should not use the server cache', diff --git a/packages/graphql/src/schemaTypes/objectTypes/gql-RelevantRun.ts b/packages/graphql/src/schemaTypes/objectTypes/gql-RelevantRun.ts index 64834f5bb5bf..4c6526a2074e 100644 --- a/packages/graphql/src/schemaTypes/objectTypes/gql-RelevantRun.ts +++ b/packages/graphql/src/schemaTypes/objectTypes/gql-RelevantRun.ts @@ -4,6 +4,10 @@ export const RelevantRunInfo = objectType({ name: 'RelevantRunInfo', description: 'runNumber and commitSha for a given run', definition (t) { + t.nonNull.id('runId', { + description: 'The run id', + }) + t.nonNull.int('runNumber', { description: 'The runNumber that these spec counts belong to', }) @@ -28,6 +32,11 @@ export const RelevantRun = objectType({ description: 'All relevant runs to fetch for the debug page prior to the latest completed run', }) + t.nonNull.list.nonNull.field('latest', { + type: RelevantRunInfo, + description: 'Latest relevant runs to fetch for the specs and runs page', + }) + t.nonNull.int('commitsAhead', { description: 'How many commits ahead the current local commit is from the commit of the current run', }) diff --git a/packages/graphql/src/schemaTypes/objectTypes/gql-Subscription.ts b/packages/graphql/src/schemaTypes/objectTypes/gql-Subscription.ts index 67a4d2ba3d40..02eac2e07465 100644 --- a/packages/graphql/src/schemaTypes/objectTypes/gql-Subscription.ts +++ b/packages/graphql/src/schemaTypes/objectTypes/gql-Subscription.ts @@ -1,5 +1,5 @@ import type { PushFragmentData } from '@packages/data-context/src/actions' -import { enumType, idArg, list, nonNull, objectType, stringArg, subscriptionType } from 'nexus' +import { enumType, idArg, list, nonNull, objectType, subscriptionType } from 'nexus' import { CurrentProject, DevState, Query, Wizard } from '.' import { Spec } from './gql-Spec' import { RelevantRun } from './gql-RelevantRun' @@ -114,25 +114,13 @@ export const Subscription = subscriptionType({ resolve: (source: PushFragmentData[], args, ctx) => source, }) - t.string('startPollingForSpecs', { - args: { - projectId: stringArg(), - branchName: stringArg(), - }, - description: 'Initiates the polling mechanism with the Cypress Cloud to check if we should refetch specs, and mark specs as stale if we have updates', - subscribe: (source, args, ctx) => { - return ctx.remotePolling.subscribeAndPoll(args.branchName, args.projectId) - }, - resolve: (o: string | null) => o, - }) - t.field('relevantRuns', { type: RelevantRun, description: 'Subscription that polls the cloud for new relevant runs that match local git commit hashes', args: { location: nonNull(enumType({ name: 'RelevantRunLocationEnum', - members: ['DEBUG', 'SIDEBAR'], + members: ['DEBUG', 'SIDEBAR', 'RUNS', 'SPECS'], })), }, subscribe: (source, args, ctx) => { diff --git a/packages/graphql/test/stubCloudTypes.ts b/packages/graphql/test/stubCloudTypes.ts index 28cb5205ad0a..f73bb3c945ca 100644 --- a/packages/graphql/test/stubCloudTypes.ts +++ b/packages/graphql/test/stubCloudTypes.ts @@ -26,6 +26,7 @@ import type { CloudSpecRun, CloudTestResult, CloudRunGroup, + CloudProjectRunsByCommitShasArgs, } from '../src/gen/test-cloud-graphql-types.gen' import type { GraphQLResolveInfo } from 'graphql' import type { DebugTestingProgress_SpecsSubscription } from '@packages/app/src/generated/graphql' @@ -135,6 +136,22 @@ export function createCloudProject (config: Partial>) { nodes: connectionData.edges.map((e) => e.node), } }, + runsByCommitShas (args: CloudProjectRunsByCommitShasArgs) { + return args.commitShas?.map((sha, i) => { + const statusIndex = i % STATUS_ARRAY.length + const status = STATUS_ARRAY[statusIndex] + + return createCloudRun({ + status, + totalPassed: i, + url: `http://dummy.cypress.io/runs/${i}`, + commitInfo: createCloudRunCommitInfo({ + sha, + summary: `fix: using Git data ${status}`, + }), + }) + }) + }, ...config, } as CloudProject @@ -356,7 +373,10 @@ export function createCloudProjectSpecResult (config: Partial) }, specRunsForRunIds: [], averageDurationForRunIds: 1234, - flakyStatusForRunIds: null, + flakyStatusForRunIds: { + __typename: 'CloudProjectSpecFlakyStatus', + severity: 'NONE', + }, isConsideredFlakyForRunIds: false, ...config, }