Use new factories
This commit is contained in:
@@ -1,90 +1,29 @@
|
||||
import { DbItem, DbItemKind } from "../../../src/databases/db-item";
|
||||
import { getSelectedDbItem } from "../../../src/databases/db-item-selection";
|
||||
import {
|
||||
createLocalDatabaseDbItem,
|
||||
createLocalListDbItem,
|
||||
createRemoteOwnerDbItem,
|
||||
createRemoteRepoDbItem,
|
||||
createRemoteSystemDefinedListDbItem,
|
||||
createRemoteUserDefinedListDbItem,
|
||||
createRootLocalDbItem,
|
||||
createRootRemoteDbItem,
|
||||
} from "../../factories/db-item-factories";
|
||||
|
||||
describe("db item selection", () => {
|
||||
it("should return undefined if no item is selected", () => {
|
||||
const dbItems: DbItem[] = [
|
||||
{
|
||||
kind: DbItemKind.RootRemote,
|
||||
expanded: false,
|
||||
createRootRemoteDbItem({
|
||||
children: [
|
||||
{
|
||||
kind: DbItemKind.RemoteSystemDefinedList,
|
||||
listName: "top_10",
|
||||
listDisplayName: "Top 10 repositories",
|
||||
listDescription: "Top 10 repositories of a language",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RemoteSystemDefinedList,
|
||||
listName: "top_100",
|
||||
listDisplayName: "Top 100 repositories",
|
||||
listDescription: "Top 100 repositories of a language",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RemoteOwner,
|
||||
ownerName: "github",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RemoteUserDefinedList,
|
||||
expanded: false,
|
||||
listName: "my list",
|
||||
repos: [
|
||||
{
|
||||
kind: DbItemKind.RemoteRepo,
|
||||
repoFullName: "owner1/repo2",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RemoteRepo,
|
||||
repoFullName: "owner1/repo3",
|
||||
selected: false,
|
||||
},
|
||||
createRemoteSystemDefinedListDbItem({}),
|
||||
createRemoteOwnerDbItem({}),
|
||||
createRemoteUserDefinedListDbItem({}),
|
||||
],
|
||||
selected: false,
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RootLocal,
|
||||
expanded: false,
|
||||
children: [
|
||||
{
|
||||
kind: DbItemKind.LocalList,
|
||||
expanded: false,
|
||||
listName: "list-1",
|
||||
databases: [
|
||||
{
|
||||
kind: DbItemKind.LocalDatabase,
|
||||
databaseName: "db1",
|
||||
dateAdded: 1234,
|
||||
language: "javascript",
|
||||
storagePath: "/foo/bar",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.LocalDatabase,
|
||||
databaseName: "db2",
|
||||
dateAdded: 1234,
|
||||
language: "javascript",
|
||||
storagePath: "/foo/bar",
|
||||
selected: false,
|
||||
},
|
||||
],
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.LocalDatabase,
|
||||
databaseName: "db3",
|
||||
dateAdded: 1234,
|
||||
language: "javascript",
|
||||
storagePath: "/foo/bar",
|
||||
selected: false,
|
||||
},
|
||||
],
|
||||
},
|
||||
}),
|
||||
createRootLocalDbItem({
|
||||
children: [createLocalListDbItem({}), createLocalDatabaseDbItem({})],
|
||||
}),
|
||||
];
|
||||
|
||||
expect(getSelectedDbItem(dbItems)).toBeUndefined();
|
||||
@@ -92,44 +31,24 @@ describe("db item selection", () => {
|
||||
|
||||
it("should return correct local database item from DbItem list", () => {
|
||||
const dbItems: DbItem[] = [
|
||||
{
|
||||
kind: DbItemKind.RootLocal,
|
||||
expanded: false,
|
||||
createRootLocalDbItem({
|
||||
children: [
|
||||
{
|
||||
kind: DbItemKind.LocalList,
|
||||
expanded: false,
|
||||
listName: "list-1",
|
||||
databases: [
|
||||
{
|
||||
kind: DbItemKind.LocalDatabase,
|
||||
databaseName: "db1",
|
||||
dateAdded: 1234,
|
||||
language: "javascript",
|
||||
storagePath: "/foo/bar",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.LocalDatabase,
|
||||
createLocalDatabaseDbItem({
|
||||
databaseName: "db2",
|
||||
dateAdded: 1234,
|
||||
language: "javascript",
|
||||
storagePath: "/foo/bar",
|
||||
selected: true,
|
||||
},
|
||||
}),
|
||||
createLocalListDbItem({
|
||||
databases: [
|
||||
createLocalDatabaseDbItem({}),
|
||||
createLocalDatabaseDbItem({}),
|
||||
],
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.LocalDatabase,
|
||||
databaseName: "db3",
|
||||
dateAdded: 1234,
|
||||
language: "javascript",
|
||||
storagePath: "/foo/bar",
|
||||
selected: false,
|
||||
},
|
||||
}),
|
||||
],
|
||||
},
|
||||
expanded: false,
|
||||
}),
|
||||
];
|
||||
|
||||
expect(getSelectedDbItem(dbItems)).toEqual({
|
||||
@@ -144,42 +63,20 @@ describe("db item selection", () => {
|
||||
|
||||
it("should return correct remote database list item from DbItem list", () => {
|
||||
const dbItems: DbItem[] = [
|
||||
{
|
||||
kind: DbItemKind.RootRemote,
|
||||
expanded: false,
|
||||
createRootRemoteDbItem({
|
||||
children: [
|
||||
{
|
||||
kind: DbItemKind.RemoteSystemDefinedList,
|
||||
listName: "top_10",
|
||||
listDisplayName: "Top 10 repositories",
|
||||
listDescription: "Top 10 repositories of a language",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RemoteOwner,
|
||||
ownerName: "github",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RemoteUserDefinedList,
|
||||
expanded: false,
|
||||
createRemoteSystemDefinedListDbItem({}),
|
||||
createRemoteOwnerDbItem({}),
|
||||
createRemoteUserDefinedListDbItem({
|
||||
listName: "my list",
|
||||
repos: [
|
||||
{
|
||||
kind: DbItemKind.RemoteRepo,
|
||||
repoFullName: "owner1/repo2",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RemoteRepo,
|
||||
repoFullName: "owner1/repo3",
|
||||
selected: false,
|
||||
},
|
||||
],
|
||||
selected: true,
|
||||
},
|
||||
repos: [
|
||||
createRemoteRepoDbItem({ repoFullName: "owner1/repo2" }),
|
||||
createRemoteRepoDbItem({ repoFullName: "owner1/repo3" }),
|
||||
],
|
||||
},
|
||||
}),
|
||||
],
|
||||
}),
|
||||
];
|
||||
|
||||
expect(getSelectedDbItem(dbItems)).toEqual({
|
||||
@@ -204,49 +101,19 @@ describe("db item selection", () => {
|
||||
|
||||
it("should handle arbitrary list of db items", () => {
|
||||
const dbItems: DbItem[] = [
|
||||
{
|
||||
kind: DbItemKind.RootRemote,
|
||||
expanded: false,
|
||||
createRootRemoteDbItem({
|
||||
children: [
|
||||
{
|
||||
kind: DbItemKind.RemoteSystemDefinedList,
|
||||
listName: "top_10",
|
||||
listDisplayName: "Top 10 repositories",
|
||||
listDescription: "Top 10 repositories of a language",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RemoteOwner,
|
||||
ownerName: "github",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RemoteUserDefinedList,
|
||||
expanded: false,
|
||||
listName: "my list",
|
||||
repos: [
|
||||
{
|
||||
kind: DbItemKind.RemoteRepo,
|
||||
repoFullName: "owner1/repo2",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RemoteRepo,
|
||||
repoFullName: "owner1/repo3",
|
||||
selected: false,
|
||||
},
|
||||
createRemoteSystemDefinedListDbItem({}),
|
||||
createRemoteOwnerDbItem({}),
|
||||
createRemoteUserDefinedListDbItem({}),
|
||||
],
|
||||
selected: false,
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RemoteSystemDefinedList,
|
||||
}),
|
||||
createRemoteSystemDefinedListDbItem({
|
||||
listName: "top_10",
|
||||
listDisplayName: "Top 10 repositories",
|
||||
listDescription: "Top 10 repositories of a language",
|
||||
selected: true,
|
||||
},
|
||||
}),
|
||||
];
|
||||
|
||||
expect(getSelectedDbItem(dbItems)).toEqual({
|
||||
@@ -260,33 +127,24 @@ describe("db item selection", () => {
|
||||
|
||||
it("should handle empty db item lists", () => {
|
||||
const dbItems: DbItem[] = [
|
||||
{
|
||||
kind: DbItemKind.RootRemote,
|
||||
expanded: false,
|
||||
createRootRemoteDbItem({
|
||||
children: [
|
||||
{
|
||||
kind: DbItemKind.RemoteSystemDefinedList,
|
||||
listName: "top_10",
|
||||
listDisplayName: "Top 10 repositories",
|
||||
listDescription: "Top 10 repositories of a language",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RemoteOwner,
|
||||
ownerName: "github",
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
kind: DbItemKind.RemoteUserDefinedList,
|
||||
expanded: false,
|
||||
listName: "my list",
|
||||
createRemoteSystemDefinedListDbItem({}),
|
||||
createRemoteOwnerDbItem({}),
|
||||
createRemoteUserDefinedListDbItem({
|
||||
repos: [],
|
||||
selected: false,
|
||||
},
|
||||
selected: true,
|
||||
listName: "list84",
|
||||
}),
|
||||
],
|
||||
},
|
||||
}),
|
||||
];
|
||||
|
||||
expect(getSelectedDbItem(dbItems)).toBeUndefined();
|
||||
expect(getSelectedDbItem(dbItems)).toEqual({
|
||||
expanded: false,
|
||||
kind: DbItemKind.RemoteUserDefinedList,
|
||||
listName: "list84",
|
||||
repos: [],
|
||||
selected: true,
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user