59 lines · 1.8 KB · TypeScript
RawDownload
import { describe, expect, it } from "vite-plus/test"; import { cloudCloneDestination, cloudEnvironmentProvider } from "./cloudEnvironment"; describe("cloudEnvironmentProvider", () => {  it("uses advertised Render metadata", () => {    expect(      cloudEnvironmentProvider({        displayUrl: null,        serverConfig: {          environment: {            environmentId: "environment-1",            label: "Render cloud environment",            platform: { os: "linux", arch: "x64" },            cloud: { provider: "render", workspaceRoot: "/data/workspace" },            serverVersion: "1.0.0",            capabilities: { repositoryIdentity: true },          },        } as never,      }),    ).toBe("render");  });   it("recognizes disconnected onrender.com environments", () => {    expect(      cloudEnvironmentProvider({        displayUrl: "https://t3code-cloud-demo.onrender.com",        serverConfig: null,      }),    ).toBe("render");  });}); describe("cloudCloneDestination", () => {  it("clones provider repositories under the cloud workspace root", () => {    expect(      cloudCloneDestination({        workspaceRoot: "/data/workspace/",        repository: {          provider: "github",          nameWithOwner: "shivamhwp/render-ad",          url: "https://github.com/shivamhwp/render-ad",          sshUrl: "git@github.com:shivamhwp/render-ad.git",        },        remoteUrl: "git@github.com:shivamhwp/render-ad.git",      }),    ).toBe("/data/workspace/render-ad");  });   it("derives a directory from arbitrary Git URLs", () => {    expect(      cloudCloneDestination({        workspaceRoot: "/data/workspace",        repository: null,        remoteUrl: "https://example.com/team/project.git?ref=main",      }),    ).toBe("/data/workspace/project");  });});