|
import { describe, expect, it } from "vitest"; |
|
import { modelInfo } from "./model-info"; |
|
import type { ModelEntry } from "./list-models"; |
|
import type { ApiModelInfo } from "../types/api/api-model"; |
|
|
|
describe("modelInfo", () => { |
|
it("should return the model info", async () => { |
|
const info = await modelInfo({ |
|
name: "openai-community/gpt2", |
|
}); |
|
expect(info).toEqual({ |
|
id: "621ffdc036468d709f17434d", |
|
downloads: expect.any(Number), |
|
gated: false, |
|
name: "openai-community/gpt2", |
|
updatedAt: expect.any(Date), |
|
likes: expect.any(Number), |
|
task: "text-generation", |
|
private: false, |
|
}); |
|
}); |
|
|
|
it("should return the model info with author", async () => { |
|
const info: ModelEntry & Pick<ApiModelInfo, "author"> = await modelInfo({ |
|
name: "openai-community/gpt2", |
|
additionalFields: ["author"], |
|
}); |
|
expect(info).toEqual({ |
|
id: "621ffdc036468d709f17434d", |
|
downloads: expect.any(Number), |
|
author: "openai-community", |
|
gated: false, |
|
name: "openai-community/gpt2", |
|
updatedAt: expect.any(Date), |
|
likes: expect.any(Number), |
|
task: "text-generation", |
|
private: false, |
|
}); |
|
}); |
|
|
|
it("should return the model info for a specific revision", async () => { |
|
const info: ModelEntry & Pick<ApiModelInfo, "sha"> = await modelInfo({ |
|
name: "openai-community/gpt2", |
|
additionalFields: ["sha"], |
|
revision: "f27b190eeac4c2302d24068eabf5e9d6044389ae", |
|
}); |
|
expect(info).toEqual({ |
|
id: "621ffdc036468d709f17434d", |
|
downloads: expect.any(Number), |
|
gated: false, |
|
name: "openai-community/gpt2", |
|
updatedAt: expect.any(Date), |
|
likes: expect.any(Number), |
|
task: "text-generation", |
|
private: false, |
|
sha: "f27b190eeac4c2302d24068eabf5e9d6044389ae", |
|
}); |
|
}); |
|
}); |
|
|