Skip to content

Commit a9b2aec

Browse files
committed
Create missing factories and test adjustment
1 parent 5138831 commit a9b2aec

File tree

2 files changed

+153
-20
lines changed

2 files changed

+153
-20
lines changed
Lines changed: 149 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,167 @@
11
import {
22
DbItemKind,
3+
LocalDatabaseDbItem,
4+
LocalListDbItem,
5+
RemoteOwnerDbItem,
6+
RemoteRepoDbItem,
7+
RemoteSystemDefinedListDbItem,
38
RemoteUserDefinedListDbItem,
9+
RootLocalDbItem,
410
RootRemoteDbItem,
511
} from "../../src/databases/db-item";
612

7-
export function createRootRemoteDbItem(): RootRemoteDbItem {
13+
// Root Remote Db Items
14+
export function createRootRemoteDbItem({
15+
children = [],
16+
expanded = false,
17+
}: {
18+
children?: Array<
19+
| RemoteOwnerDbItem
20+
| RemoteSystemDefinedListDbItem
21+
| RemoteUserDefinedListDbItem
22+
>;
23+
expanded?: boolean;
24+
}): RootRemoteDbItem {
825
return {
926
kind: DbItemKind.RootRemote,
10-
children: [],
11-
expanded: false,
27+
children,
28+
expanded,
29+
};
30+
}
31+
32+
export function createRemoteOwnerDbItem({
33+
ownerName = `owner${getRandomInt()}`,
34+
selected = false,
35+
}: {
36+
ownerName?: string;
37+
selected?: boolean;
38+
}): RemoteOwnerDbItem {
39+
return {
40+
kind: DbItemKind.RemoteOwner,
41+
selected,
42+
ownerName,
43+
};
44+
}
45+
46+
export function createRemoteRepoDbItem({
47+
repoFullName = `repoFullName${getRandomInt()}`,
48+
selected = false,
49+
parentListName = undefined,
50+
}: {
51+
repoFullName?: string;
52+
selected?: boolean;
53+
parentListName?: string;
54+
}): RemoteRepoDbItem {
55+
return {
56+
kind: DbItemKind.RemoteRepo,
57+
selected,
58+
repoFullName,
59+
parentListName,
60+
};
61+
}
62+
63+
export function createRemoteSystemDefinedListDbItem({
64+
listName = `top_${getRandomInt()}`,
65+
listDisplayName = `Display Name`,
66+
listDescription = `Description`,
67+
selected = false,
68+
}: {
69+
listName?: string;
70+
listDisplayName?: string;
71+
listDescription?: string;
72+
selected?: boolean;
73+
}): RemoteSystemDefinedListDbItem {
74+
return {
75+
kind: DbItemKind.RemoteSystemDefinedList,
76+
selected,
77+
listName,
78+
listDisplayName,
79+
listDescription,
1280
};
1381
}
1482

1583
export function createRemoteUserDefinedListDbItem({
16-
name = "list1",
84+
expanded = false,
85+
selected = false,
86+
listName = `list${getRandomInt()}`,
87+
repos = [
88+
createRemoteRepoDbItem({
89+
parentListName: listName,
90+
}),
91+
],
1792
}: {
18-
name: string;
93+
listName?: string;
94+
expanded?: boolean;
95+
selected?: boolean;
96+
repos?: RemoteRepoDbItem[];
1997
}): RemoteUserDefinedListDbItem {
2098
return {
2199
kind: DbItemKind.RemoteUserDefinedList,
22-
selected: false,
23-
expanded: false,
24-
listName: name,
25-
repos: [
26-
{
27-
kind: DbItemKind.RemoteRepo,
28-
selected: false,
29-
repoFullName: "repo1",
30-
parentListName: name,
31-
},
32-
],
100+
expanded,
101+
selected,
102+
listName,
103+
repos,
33104
};
34105
}
106+
107+
// Root Local Db Items
108+
export function createRootLocalDbItem({
109+
children = [],
110+
expanded = false,
111+
}: {
112+
children?: Array<LocalDatabaseDbItem | LocalListDbItem>;
113+
expanded?: boolean;
114+
}): RootLocalDbItem {
115+
return {
116+
kind: DbItemKind.RootLocal,
117+
children,
118+
expanded,
119+
};
120+
}
121+
122+
export function createLocalDatabaseDbItem({
123+
databaseName = `database${getRandomInt()}`,
124+
dateAdded = getRandomInt(),
125+
language = `language${getRandomInt()}`,
126+
storagePath = `storagePath${getRandomInt()}`,
127+
selected = false,
128+
}: {
129+
databaseName?: string;
130+
dateAdded?: number;
131+
language?: string;
132+
storagePath?: string;
133+
selected?: boolean;
134+
}): LocalDatabaseDbItem {
135+
return {
136+
kind: DbItemKind.LocalDatabase,
137+
selected,
138+
databaseName,
139+
dateAdded,
140+
language,
141+
storagePath,
142+
};
143+
}
144+
145+
export function createLocalListDbItem({
146+
listName = `top_${getRandomInt()}`,
147+
selected = false,
148+
expanded = false,
149+
databases = [],
150+
}: {
151+
listName?: string;
152+
databases?: LocalDatabaseDbItem[];
153+
selected?: boolean;
154+
expanded?: boolean;
155+
}): LocalListDbItem {
156+
return {
157+
kind: DbItemKind.LocalList,
158+
selected,
159+
expanded,
160+
databases,
161+
listName,
162+
};
163+
}
164+
165+
function getRandomInt() {
166+
return Math.floor(Math.random() * 100);
167+
}

extensions/ql-vscode/test/pure-tests/databases/db-item-expansion.test.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ describe("db item expansion", () => {
2626

2727
const dbItem: RemoteUserDefinedListDbItem =
2828
createRemoteUserDefinedListDbItem({
29-
name: "list2",
29+
listName: "list2",
3030
});
3131

3232
const newExpandedItems = calculateNewExpandedState(
@@ -47,7 +47,7 @@ describe("db item expansion", () => {
4747
it("should add an expanded item to an empty list", () => {
4848
const dbItem: RemoteUserDefinedListDbItem =
4949
createRemoteUserDefinedListDbItem({
50-
name: "list2",
50+
listName: "list2",
5151
});
5252

5353
const newExpandedItems = calculateNewExpandedState([], dbItem, true);
@@ -73,7 +73,7 @@ describe("db item expansion", () => {
7373

7474
const dbItem: RemoteUserDefinedListDbItem =
7575
createRemoteUserDefinedListDbItem({
76-
name: "list1",
76+
listName: "list1",
7777
});
7878

7979
const newExpandedItems = calculateNewExpandedState(
@@ -96,7 +96,7 @@ describe("db item expansion", () => {
9696
},
9797
];
9898

99-
const dbItem: RootRemoteDbItem = createRootRemoteDbItem();
99+
const dbItem: RootRemoteDbItem = createRootRemoteDbItem({});
100100

101101
const newExpandedItems = calculateNewExpandedState(
102102
currentExpandedItems,

0 commit comments

Comments
 (0)