Switch tests to new types

This commit is contained in:
Koen Vlaswinkel
2023-09-26 11:32:25 +02:00
parent 405292ecd4
commit f5fbd7f4cc
3 changed files with 19 additions and 13 deletions

View File

@@ -0,0 +1,8 @@
/**
* The qlpack lock file, either in qlpack.lock.yml or in codeql-pack.lock.yml.
*/
export interface QlPackLockFile {
lockVersion: string;
dependencies?: Record<string, string>;
compiled?: boolean;
}

View File

@@ -32,6 +32,7 @@ import { QueryLanguage } from "../../../../src/common/query-language";
import { readBundledPack } from "../../utils/bundled-pack-helpers";
import { load } from "js-yaml";
import { ExtensionPackMetadata } from "../../../../src/model-editor/extension-pack-metadata";
import { QlPackLockFile } from "../../../../src/packaging/qlpack-lock-file";
describe("Variant Analysis Manager", () => {
let cli: CodeQLCliServer;
@@ -380,9 +381,7 @@ describe("Variant Analysis Manager", () => {
: "codeql-pack.yml";
const qlpackContents = load(
packFS.fileContents(packFileName).toString("utf-8"),
) as ExtensionPackMetadata & {
dependencies: Record<string, string>;
};
) as ExtensionPackMetadata;
expect(qlpackContents.name).toEqual(expectedPackName);
if (checkVersion) {
expect(qlpackContents.version).toEqual("0.0.0");
@@ -396,11 +395,9 @@ describe("Variant Analysis Manager", () => {
}
const qlpackLockContents = load(
packFS.fileContents("codeql-pack.lock.yml").toString("utf-8"),
) as {
dependencies: Record<string, string>;
};
) as QlPackLockFile;
const actualLockKeys = Object.keys(qlpackLockContents.dependencies);
const actualLockKeys = Object.keys(qlpackLockContents.dependencies ?? {});
// The lock file should contain at least the specified dependencies.
dependenciesToCheck.forEach((dep) =>

View File

@@ -11,6 +11,7 @@ import { removeWorkspaceRefs } from "../../src/variant-analysis/run-remote-query
import { CodeQLExtensionInterface } from "../../src/extension";
import { importArchiveDatabase } from "../../src/databases/database-fetcher";
import { createMockCommandManager } from "../__mocks__/commandsMock";
import { QlPackFile } from "../../src/packaging/qlpack-file";
// This file contains helpers shared between tests that work with an activated extension.
@@ -89,9 +90,9 @@ export async function fixWorkspaceReferences(
): Promise<Record<string, string> | undefined> {
if (!(await cli.cliConstraints.supportsWorkspaceReferences())) {
// remove the workspace references from the qlpack
const qlpack = load(readFileSync(qlpackFileWithWorkspaceRefs, "utf8")) as {
dependencies: Record<string, string>;
};
const qlpack = load(
readFileSync(qlpackFileWithWorkspaceRefs, "utf8"),
) as QlPackFile;
const originalDeps = { ...qlpack.dependencies };
removeWorkspaceRefs(qlpack);
writeFileSync(qlpackFileWithWorkspaceRefs, dump(qlpack));
@@ -115,9 +116,9 @@ export async function restoreWorkspaceReferences(
if (!originalDeps) {
return;
}
const qlpack = load(readFileSync(qlpackFileWithWorkspaceRefs, "utf8")) as {
dependencies: Record<string, string>;
};
const qlpack = load(
readFileSync(qlpackFileWithWorkspaceRefs, "utf8"),
) as QlPackFile;
qlpack.dependencies = originalDeps;
writeFileSync(qlpackFileWithWorkspaceRefs, dump(qlpack));
}