Created
August 19, 2023 07:05
-
-
Save jasonLaster/a36d5024b8324dce6c3c1ac388435c57 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/packages/protocol/graphics.ts b/packages/protocol/graphics.ts | |
index 1f625051c..64e268d85 100644 | |
--- a/packages/protocol/graphics.ts | |
+++ b/packages/protocol/graphics.ts | |
@@ -144,6 +144,7 @@ export const timeIsBeyondKnownPaints = (time: number) => | |
export function setupGraphics() { | |
replayClient.waitForSession().then(async (sessionId: string) => { | |
+ console.log("session setup"); | |
let paintedGraphics = false; | |
const maybePaintGraphics = async () => { | |
if (!paintedGraphics) { | |
@@ -157,6 +158,7 @@ export function setupGraphics() { | |
const { client } = await import("./socket"); | |
client.Graphics.addPaintPointsListener(async ({ paints }) => { | |
+ console.log("Received paints", paints); | |
onPaints(paints); | |
if (gPaintPoints.length >= INITIAL_PAINT_COUNT) { | |
initialPaintsReceivedWaiter.resolve(null); | |
diff --git a/packages/shared/graphql/generated/GetTestsForWorkspace.ts b/packages/shared/graphql/generated/GetTestsForWorkspace.ts | |
index 1990c97e6..b2ac221e6 100644 | |
--- a/packages/shared/graphql/generated/GetTestsForWorkspace.ts | |
+++ b/packages/shared/graphql/generated/GetTestsForWorkspace.ts | |
@@ -42,7 +42,9 @@ export interface GetTestsForWorkspace_node_Workspace { | |
tests: GetTestsForWorkspace_node_Workspace_tests[] | null; | |
} | |
-export type GetTestsForWorkspace_node = GetTestsForWorkspace_node_Recording | GetTestsForWorkspace_node_Workspace; | |
+export type GetTestsForWorkspace_node = | |
+ | GetTestsForWorkspace_node_Recording | |
+ | GetTestsForWorkspace_node_Workspace; | |
export interface GetTestsForWorkspace { | |
node: GetTestsForWorkspace_node | null; | |
diff --git a/src/ui/actions/session.ts b/src/ui/actions/session.ts | |
index 260c7c2c0..6f9b08c7b 100644 | |
--- a/src/ui/actions/session.ts | |
+++ b/src/ui/actions/session.ts | |
@@ -192,7 +192,7 @@ export function createSocket( | |
const experimentalSettings: ExperimentalSettings = { | |
disableScanDataCache: userData.get("backend_disableScanDataCache"), | |
- disableCache: userData.get("backend_disableCache"), | |
+ disableCache: true, //userData.get("backend_disableCache"), | |
listenForMetrics: userData.get("backend_listenForMetrics"), | |
profileWorkerThreads: userData.get("backend_profileWorkerThreads"), | |
enableRoutines: userData.get("backend_enableRoutines"), | |
diff --git a/src/ui/components/Library/Team/View/TestRuns/graphql/TestRunsGraphQL.ts b/src/ui/components/Library/Team/View/TestRuns/graphql/TestRunsGraphQL.ts | |
index 8984e9dc2..c8f607656 100644 | |
--- a/src/ui/components/Library/Team/View/TestRuns/graphql/TestRunsGraphQL.ts | |
+++ b/src/ui/components/Library/Team/View/TestRuns/graphql/TestRunsGraphQL.ts | |
@@ -42,6 +42,30 @@ const GET_TEST_RUN_RECORDINGS = gql` | |
} | |
`; | |
+const GET_TESTS_FOR_WORKSPACE = gql` | |
+ query GetTestsForWorkspace($workspaceId: ID!) { | |
+ node(id: $workspaceId) { | |
+ ... on Workspace { | |
+ id | |
+ tests { | |
+ title | |
+ path | |
+ recordings { | |
+ edges { | |
+ node { | |
+ uuid | |
+ duration | |
+ createdAt | |
+ metadata | |
+ } | |
+ } | |
+ } | |
+ } | |
+ } | |
+ } | |
+ } | |
+`; | |
+ | |
const GET_TEST_RUNS = gql` | |
query GetTestsRunsForWorkspace($workspaceId: ID!) { | |
node(id: $workspaceId) { | |
@@ -129,3 +153,28 @@ export async function getTestRunsGraphQL( | |
) ?? [] | |
); | |
} | |
+ | |
+export async function getTestsGraphQL( | |
+ graphQLClient: GraphQLClientInterface, | |
+ accessToken: string | null, | |
+ workspaceId: string | |
+): Promise<GetTestsForWorkspace_node_Workspace_tests_edges_node[]> { | |
+ const response = await graphQLClient.send<GetTestsForWorkspace>( | |
+ { | |
+ operationName: "GetTestsForWorkspace", | |
+ query: GET_TESTS_FOR_WORKSPACE, | |
+ variables: { workspaceId }, | |
+ }, | |
+ accessToken | |
+ ); | |
+ | |
+ if (response?.node == null) { | |
+ return []; | |
+ } | |
+ | |
+ return ( | |
+ (response.node as GetTestsRunsForWorkspace_node_Workspace).testRuns?.edges.map( | |
+ edge => edge.node | |
+ ) ?? [] | |
+ ); | |
+} | |
diff --git a/src/ui/components/Library/Team/View/TestRuns/hooks/useTestRuns.ts b/src/ui/components/Library/Team/View/TestRuns/hooks/useTestRuns.ts | |
index 847c47e74..c8262d167 100644 | |
--- a/src/ui/components/Library/Team/View/TestRuns/hooks/useTestRuns.ts | |
+++ b/src/ui/components/Library/Team/View/TestRuns/hooks/useTestRuns.ts | |
@@ -5,6 +5,7 @@ import { GraphQLClientContext } from "replay-next/src/contexts/GraphQLClientCont | |
import { TestRun } from "shared/test-suites/TestRun"; | |
import { TeamContext } from "ui/components/Library/Team/TeamContextRoot"; | |
import { testRunsCache } from "ui/components/Library/Team/View/TestRuns/suspense/TestRunsCache"; | |
+import { testsCache } from "ui/components/Library/Team/View/TestRuns/suspense/TestsCache"; | |
import useToken from "ui/utils/useToken"; | |
const EMPTY_ARRAY: any[] = []; | |
@@ -21,5 +22,14 @@ export function useTestRuns(): TestRun[] { | |
accessToken?.token ?? null, | |
teamId | |
); | |
+ | |
+ const { value: testsResults } = useImperativeCacheValue( | |
+ testsCache, | |
+ graphQLClient, | |
+ accessToken?.token ?? null, | |
+ teamId | |
+ ); | |
+ | |
+ console.log("tests", testsResults); | |
return value; | |
} | |
diff --git a/src/ui/setup/dynamic/devtools.ts b/src/ui/setup/dynamic/devtools.ts | |
index 2bdf8a8d9..63d3c3f9f 100644 | |
--- a/src/ui/setup/dynamic/devtools.ts | |
+++ b/src/ui/setup/dynamic/devtools.ts | |
@@ -264,6 +264,11 @@ export default async function setupDevtools(store: AppStore, replayClient: Repla | |
const onPointsReceived = debounce(() => { | |
store.dispatch(pointsReceived(points.map(({ point, time }) => ({ point, time })))); | |
store.dispatch(paintsReceived(points.filter(p => "screenShots" in p))); | |
+ console.log( | |
+ "onPointsReceived", | |
+ points.filter(p => "screenShots" in p), | |
+ points | |
+ ); | |
points = []; | |
}, 1_000); | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment