Merge comments

This commit is contained in:
Nora
2022-12-13 13:43:45 +00:00
parent ed9592c2d7
commit 0f1881d2bc
2 changed files with 18 additions and 14 deletions

View File

@@ -41,13 +41,15 @@ export async function getRepositorySelection(
if (selectedDbItem) {
switch (selectedDbItem.kind) {
case DbItemKind.LocalDatabase || DbItemKind.LocalList:
throw new Error("Local databases and lists are not supported yet.");
throw new UserCancellationException(
"Local databases and lists are not supported yet.",
);
case DbItemKind.RemoteSystemDefinedList:
return { repositoryLists: [selectedDbItem.listName] };
case DbItemKind.RemoteUserDefinedList:
if (selectedDbItem.repos.length === 0) {
throw new Error(
"The selected repository list is empty. Please add repositories to it before running a query on it.",
throw new UserCancellationException(
"The selected repository list is empty. Please add repositories to it before running a variant analysis.",
);
} else {
return {
@@ -62,7 +64,7 @@ export async function getRepositorySelection(
return { repositories: [selectedDbItem.repoFullName] };
}
} else {
throw new Error(
throw new UserCancellationException(
"Please select a remote database to run the query against.",
);
}

View File

@@ -5,7 +5,11 @@ import { UserCancellationException } from "../../../commandRunner";
import * as config from "../../../config";
import { getRepositorySelection } from "../../../remote-queries/repository-selection";
import { DbManager } from "../../../databases/db-manager";
import { DbItem, DbItemKind } from "../../../databases/db-item";
import {
DbItem,
DbItemKind,
RemoteRepoDbItem,
} from "../../../databases/db-item";
describe("repository selection", () => {
describe("newQueryRunExperience true", () => {
@@ -19,30 +23,28 @@ describe("repository selection", () => {
const dbManager = setUpDbManager(undefined);
await expect(getRepositorySelection(dbManager)).rejects.toThrow(
Error("Please select a remote database to run the query against."),
"Please select a remote database to run the query against.",
);
});
it("should throw error when local database item is selected", async () => {
it("should log error when local database item is selected", async () => {
const dbManager = setUpDbManager({
kind: DbItemKind.LocalDatabase,
} as DbItem);
await expect(getRepositorySelection(dbManager)).rejects.toThrow(
Error("Local databases and lists are not supported yet."),
"Local databases and lists are not supported yet.",
);
});
it("should throw an error when an empty remote user defined list is selected", async () => {
it("should log an error when an empty remote user defined list is selected", async () => {
const dbManager = setUpDbManager({
kind: DbItemKind.RemoteUserDefinedList,
repos: [],
} as any as DbItem);
repos: [] as RemoteRepoDbItem[],
} as DbItem);
await expect(getRepositorySelection(dbManager)).rejects.toThrow(
Error(
"The selected repository list is empty. Please add repositories to it before running a query on it.",
),
"The selected repository list is empty. Please add repositories to it before running a variant analysis.",
);
});