Skip to content

Commit 86996ff

Browse files
committed
test model methods
1 parent c97bd37 commit 86996ff

File tree

2 files changed

+50
-1
lines changed

2 files changed

+50
-1
lines changed

frontend/src/models.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ export class DataStore {
7373
return this.payload[key];
7474
}
7575

76-
_getKeysByType(types: ItemType[]) {
76+
private _getKeysByType(types: ItemType[]) {
7777
const filteredKeys = [];
7878
for (const [key, item] of Object.entries(this.payload)) {
7979
if (types.includes(item.type)) {

frontend/tests/models.spec.ts

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
import { DataStore, type IPayloadItem, type ItemType } from "@/models";
2+
import { describe, expect, it } from "vitest";
3+
4+
function makePayloadItem(type: ItemType, data: any = {}): IPayloadItem {
5+
const now = new Date().toISOString();
6+
return {
7+
type,
8+
data,
9+
metadata: {
10+
display_type: type,
11+
created_at: now,
12+
updated_at: now,
13+
},
14+
};
15+
}
16+
17+
describe("models", () => {
18+
it("Can access keys by type", async () => {
19+
const m = new DataStore(
20+
"/test/fixture",
21+
{
22+
boolean: makePayloadItem("boolean"),
23+
integer: makePayloadItem("integer"),
24+
number: makePayloadItem("number"),
25+
string: makePayloadItem("string"),
26+
any: makePayloadItem("any"),
27+
array: makePayloadItem("array"),
28+
date: makePayloadItem("date"),
29+
datetime: makePayloadItem("datetime"),
30+
html: makePayloadItem("html"),
31+
markdown: makePayloadItem("markdown"),
32+
dataframe: makePayloadItem("dataframe"),
33+
image: makePayloadItem("image"),
34+
cv_results: makePayloadItem("cv_results"),
35+
numpy_array: makePayloadItem("numpy_array"),
36+
sklearn_model: makePayloadItem("sklearn_model"),
37+
vega: makePayloadItem("vega"),
38+
matplotlib_figure: makePayloadItem("matplotlib_figure"),
39+
},
40+
[]
41+
);
42+
43+
expect(m.infoKeys).toHaveLength(15);
44+
expect(m.plotKeys).toHaveLength(2);
45+
expect(m.artifactKeys).toHaveLength(0);
46+
47+
expect(m.get("boolean")).toBeDefined();
48+
});
49+
});

0 commit comments

Comments
 (0)