diff --git a/extensions/ql-vscode/src/databases/db-item-expansion.ts b/extensions/ql-vscode/src/databases/db-item-expansion.ts index e8375923930..39b3960e2b0 100644 --- a/extensions/ql-vscode/src/databases/db-item-expansion.ts +++ b/extensions/ql-vscode/src/databases/db-item-expansion.ts @@ -31,7 +31,7 @@ export interface RemoteUserDefinedListExpandedDbItem { listName: string; } -export function updateItemInExpandedState( +export function updateExpandedItem( currentExpandedItems: ExpandedDbItem[], dbItem: DbItem, itemExpanded: boolean, @@ -50,7 +50,7 @@ export function updateItemInExpandedState( } } -export function replaceItemInExpandedState( +export function replaceExpandedItem( currentExpandedItems: ExpandedDbItem[], currentDbItem: DbItem, newDbItem: DbItem, @@ -108,7 +108,10 @@ function isDbItemEqualToExpandedDbItem( expandedDbItem.kind === ExpandedDbItemKind.RemoteUserDefinedList && expandedDbItem.listName === dbItem.listName ); - default: - throw Error(`Unknown db item kind ${dbItem.kind}`); + case DbItemKind.LocalDatabase: + case DbItemKind.RemoteSystemDefinedList: + case DbItemKind.RemoteOwner: + case DbItemKind.RemoteRepo: + return false; } } diff --git a/extensions/ql-vscode/src/databases/db-manager.ts b/extensions/ql-vscode/src/databases/db-manager.ts index c86af8eb670..855db35575c 100644 --- a/extensions/ql-vscode/src/databases/db-manager.ts +++ b/extensions/ql-vscode/src/databases/db-manager.ts @@ -11,8 +11,8 @@ import { RemoteUserDefinedListDbItem, } from "./db-item"; import { - updateItemInExpandedState, - replaceItemInExpandedState, + updateExpandedItem, + replaceExpandedItem, ExpandedDbItem, } from "./db-item-expansion"; import { @@ -80,7 +80,7 @@ export class DbManager { ): Promise { const currentExpandedItems = this.getExpandedItems(); - const newExpandedItems = updateItemInExpandedState( + const newExpandedItems = updateExpandedItem( currentExpandedItems, dbItem, itemExpanded, @@ -127,7 +127,7 @@ export class DbManager { } const newDbItem = { ...currentDbItem, listName: newName }; - const newExpandedItems = replaceItemInExpandedState( + const newExpandedItems = replaceExpandedItem( this.getExpandedItems(), currentDbItem, newDbItem, diff --git a/extensions/ql-vscode/test/unit-tests/databases/db-item-expansion.test.ts b/extensions/ql-vscode/test/unit-tests/databases/db-item-expansion.test.ts index ce6df26d034..b6ef1690dfc 100644 --- a/extensions/ql-vscode/test/unit-tests/databases/db-item-expansion.test.ts +++ b/extensions/ql-vscode/test/unit-tests/databases/db-item-expansion.test.ts @@ -1,12 +1,8 @@ import { - RemoteUserDefinedListDbItem, - RootRemoteDbItem, -} from "../../../src/databases/db-item"; -import { - updateItemInExpandedState, + updateExpandedItem, ExpandedDbItem, ExpandedDbItemKind, - replaceItemInExpandedState, + replaceExpandedItem, } from "../../../src/databases/db-item-expansion"; import { createRemoteUserDefinedListDbItem, @@ -14,7 +10,7 @@ import { } from "../../factories/db-item-factories"; describe("db item expansion", () => { - describe("updateItemInExpandedState", () => { + describe("updateExpandedItem", () => { it("should add an expanded item to an existing list", () => { const currentExpandedItems: ExpandedDbItem[] = [ { @@ -26,12 +22,11 @@ describe("db item expansion", () => { }, ]; - const dbItem: RemoteUserDefinedListDbItem = - createRemoteUserDefinedListDbItem({ - listName: "list2", - }); + const dbItem = createRemoteUserDefinedListDbItem({ + listName: "list2", + }); - const newExpandedItems = updateItemInExpandedState( + const newExpandedItems = updateExpandedItem( currentExpandedItems, dbItem, true, @@ -47,12 +42,11 @@ describe("db item expansion", () => { }); it("should add an expanded item to an empty list", () => { - const dbItem: RemoteUserDefinedListDbItem = - createRemoteUserDefinedListDbItem({ - listName: "list2", - }); + const dbItem = createRemoteUserDefinedListDbItem({ + listName: "list2", + }); - const newExpandedItems = updateItemInExpandedState([], dbItem, true); + const newExpandedItems = updateExpandedItem([], dbItem, true); expect(newExpandedItems).toEqual([ { @@ -73,12 +67,11 @@ describe("db item expansion", () => { }, ]; - const dbItem: RemoteUserDefinedListDbItem = - createRemoteUserDefinedListDbItem({ - listName: "list1", - }); + const dbItem = createRemoteUserDefinedListDbItem({ + listName: "list1", + }); - const newExpandedItems = updateItemInExpandedState( + const newExpandedItems = updateExpandedItem( currentExpandedItems, dbItem, false, @@ -98,9 +91,9 @@ describe("db item expansion", () => { }, ]; - const dbItem: RootRemoteDbItem = createRootRemoteDbItem(); + const dbItem = createRootRemoteDbItem(); - const newExpandedItems = updateItemInExpandedState( + const newExpandedItems = updateExpandedItem( currentExpandedItems, dbItem, false, @@ -110,7 +103,7 @@ describe("db item expansion", () => { }); }); - describe("replaceItemInExpandedState", () => { + describe("replaceExpandedItem", () => { it("should replace the db item", () => { const currentExpandedItems: ExpandedDbItem[] = [ { @@ -134,12 +127,12 @@ describe("db item expansion", () => { listName: "list1", }); - const newDbItem: RemoteUserDefinedListDbItem = { + const newDbItem = { ...currentDbItem, listName: "list1 (renamed)", }; - const newExpandedItems = replaceItemInExpandedState( + const newExpandedItems = replaceExpandedItem( currentExpandedItems, currentDbItem, newDbItem,