Merge pull request #1936 from github/charisk/expansion-tidy

Some minor tidy up around db item expansion
This commit is contained in:
Charis Kyriakou
2023-01-06 14:14:56 +00:00
committed by GitHub
3 changed files with 31 additions and 35 deletions

View File

@@ -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;
}
}

View File

@@ -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<void> {
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,

View File

@@ -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,