test public entry point exports

This commit is contained in:
Tasnim Kabir Sadik
2026-05-16 16:23:27 +06:00
parent 1f74d48576
commit b35df41f08
2 changed files with 105 additions and 62 deletions

View File

@ -1,90 +1,90 @@
export type {
CapsuleCreateOptions,
CapsuleInfo,
CapsuleMetrics,
CapsuleMetricsOptions,
CapsuleResumeOptions,
WaitForReadyOptions,
CapsuleCreateOptions,
CapsuleInfo,
CapsuleMetrics,
CapsuleMetricsOptions,
CapsuleResumeOptions,
WaitForReadyOptions,
} from "./capsule.js";
export { Capsule, Sandbox } from "./capsule.js";
export type {
FileUploadInput,
OperationJsonBody,
OperationJsonResponse,
OperationQueryParams,
OperationRequestOptions,
FileUploadInput,
OperationJsonBody,
OperationJsonResponse,
OperationQueryParams,
OperationRequestOptions,
} from "./client.js";
export {
AccountResource,
APIKeysResource,
AuthResource,
CapsulesResource,
ChannelsResource,
FilesResource,
HostsResource,
SnapshotsResource,
TeamsResource,
UsersResource,
WrennClient,
AccountResource,
APIKeysResource,
AuthResource,
CapsulesResource,
ChannelsResource,
FilesResource,
HostsResource,
SnapshotsResource,
TeamsResource,
UsersResource,
WrennClient,
} from "./client.js";
export type {
ExecCellOptions,
ExecCellResult,
ExecCellOptions,
ExecCellResult,
} from "./code-interpreter/index.js";
export { CodeInterpreter, Notebook } from "./code-interpreter/index.js";
export type {
BackgroundCommandOptions,
BackgroundProcess,
CommandOptions,
CommandResult,
CommandStreamEvent,
CommandStreamOptions,
ProcessList,
BackgroundCommandOptions,
BackgroundProcess,
CommandOptions,
CommandResult,
CommandStreamEvent,
CommandStreamOptions,
ProcessList,
} from "./commands.js";
export { CommandManager } from "./commands.js";
export type { ClientConfig, ResolvedClientConfig } from "./config.js";
export {
DEFAULT_BASE_URL,
ENV_API_KEY,
ENV_BASE_URL,
ENV_HOST_TOKEN,
ENV_TOKEN,
resolveConfig,
DEFAULT_BASE_URL,
ENV_API_KEY,
ENV_BASE_URL,
ENV_HOST_TOKEN,
ENV_TOKEN,
resolveConfig,
} from "./config.js";
export {
AuthenticationError,
BadRequestError,
ConflictError,
ForbiddenError,
HostHasCapsulesError,
NotFoundError,
PayloadTooLargeError,
ServerError,
TimeoutError,
throwErrorFromResponse,
WrennError,
AuthenticationError,
BadRequestError,
ConflictError,
ForbiddenError,
HostHasCapsulesError,
NotFoundError,
PayloadTooLargeError,
ServerError,
TimeoutError,
throwErrorFromResponse,
WrennError,
} from "./exceptions.js";
export type {
FileContent,
FileList,
ListFilesOptions,
MakeDirectoryResult,
FileContent,
FileList,
ListFilesOptions,
MakeDirectoryResult,
} from "./files.js";
export { FileManager } from "./files.js";
export type {
GitCheckoutOptions,
GitCloneOptions,
GitLogOptions,
GitOptions,
GitRemoteBranchOptions,
GitCheckoutOptions,
GitCloneOptions,
GitLogOptions,
GitOptions,
GitRemoteBranchOptions,
} from "./git/index.js";
export { Git } from "./git/index.js";
export type {
$defs,
components,
operations,
paths,
webhooks,
$defs,
components,
operations,
paths,
webhooks,
} from "./models/generated.js";
export type { PtyEvent, PtyStartOptions } from "./pty.js";
export { PtyManager, PtySession } from "./pty.js";

43
tests/index.test.ts Normal file
View File

@ -0,0 +1,43 @@
import { describe, expect, it } from "vitest";
import type { components, operations, paths } from "../src/index.js";
import * as sdk from "../src/index.js";
type CapsuleSchema = components["schemas"]["Capsule"];
type GetCapsuleOperation = operations["getCapsule"];
type CapsulePath = paths["/v1/capsules/{id}"];
function acceptsGeneratedTypes(
_capsule: CapsuleSchema,
_operation: GetCapsuleOperation,
_path: CapsulePath,
): void {}
describe("public entry point", () => {
it("exports the supported runtime API from the package root", () => {
expect(sdk.Capsule).toBeTypeOf("function");
expect(sdk.Sandbox).toBe(sdk.Capsule);
expect(sdk.WrennClient).toBeTypeOf("function");
expect(sdk.CodeInterpreter).toBeTypeOf("function");
expect(sdk.Notebook).toBeTypeOf("function");
expect(sdk.CommandManager).toBeTypeOf("function");
expect(sdk.FileManager).toBeTypeOf("function");
expect(sdk.Git).toBeTypeOf("function");
expect(sdk.PtyManager).toBeTypeOf("function");
expect(sdk.PtySession).toBeTypeOf("function");
expect(sdk.WrennError).toBeTypeOf("function");
expect(sdk.NotFoundError).toBeTypeOf("function");
});
it("keeps internal shared helpers out of the public runtime API", () => {
expect("HttpClient" in sdk).toBe(false);
expect("WsConnection" in sdk).toBe(false);
});
it("exposes generated OpenAPI types from the package root", () => {
acceptsGeneratedTypes(
{} as CapsuleSchema,
{} as GetCapsuleOperation,
{} as CapsulePath,
);
});
});