From 99510ab7d4f52fc9ed64356c62e2fc22a98bce1b Mon Sep 17 00:00:00 2001 From: Frostebite Date: Thu, 16 Feb 2023 20:19:22 +0000 Subject: [PATCH] fixes --- .../tests/cloud-runner-locking.test.ts | 24 ++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/src/model/cloud-runner/tests/cloud-runner-locking.test.ts b/src/model/cloud-runner/tests/cloud-runner-locking.test.ts index e751e851..2c7536c1 100644 --- a/src/model/cloud-runner/tests/cloud-runner-locking.test.ts +++ b/src/model/cloud-runner/tests/cloud-runner-locking.test.ts @@ -142,16 +142,38 @@ describe('Cloud Runner Locking', () => { const newWorkspaceName = `test-workspace-${uuidv4()}`; const runId = uuidv4(); + const runId2 = uuidv4(); CloudRunner.buildParameters = buildParameters; expect(await SharedWorkspaceLocking.CreateWorkspace(newWorkspaceName, buildParameters)).toBeTruthy(); expect(await SharedWorkspaceLocking.LockWorkspace(newWorkspaceName, runId, buildParameters)).toBeTruthy(); expect(await SharedWorkspaceLocking.HasWorkspaceLock(newWorkspaceName, runId, buildParameters)).toBeTruthy(); expect(await SharedWorkspaceLocking.DoesWorkspaceExist(newWorkspaceName, buildParameters)).toBeTruthy(); expect( - await SharedWorkspaceLocking.GetOrCreateLockedWorkspace(newWorkspaceName, runId, buildParameters), + await SharedWorkspaceLocking.GetOrCreateLockedWorkspace(newWorkspaceName, runId2, buildParameters), ).toBeTruthy(); expect(CloudRunner.lockedWorkspace).not.toMatch(newWorkspaceName); }, 150000); + it(`0 free workspaces after locking`, async () => { + Cli.options.retainWorkspaces = true; + const overrides: any = { + versioning: 'None', + projectPath: 'test-project', + unityVersion: UnityVersioning.determineUnityVersion('test-project', UnityVersioning.read('test-project')), + targetPlatform: 'StandaloneLinux64', + cacheKey: `test-case-${uuidv4()}`, + retainWorkspaces: true, + }; + const buildParameters = await CreateParameters(overrides); + + const newWorkspaceName = `test-workspace-${uuidv4()}`; + const runId = uuidv4(); + CloudRunner.buildParameters = buildParameters; + expect(await SharedWorkspaceLocking.CreateWorkspace(newWorkspaceName, buildParameters)).toBeTruthy(); + expect(await SharedWorkspaceLocking.LockWorkspace(newWorkspaceName, runId, buildParameters)).toBeTruthy(); + expect(await SharedWorkspaceLocking.HasWorkspaceLock(newWorkspaceName, runId, buildParameters)).toBeTruthy(); + expect(await SharedWorkspaceLocking.DoesWorkspaceExist(newWorkspaceName, buildParameters)).toBeTruthy(); + expect(await SharedWorkspaceLocking.GetFreeWorkspaces(buildParameters)).toBe(0); + }, 150000); it(`Get Or Create From Unlocked Was Locked`, async () => { Cli.options.retainWorkspaces = true; const overrides: any = {