private-registry-mock
Version:
Simple mocked server and package of an npm private registry.
24 lines (23 loc) • 792 B
JavaScript
import getPort from "get-port";
import { configureServer } from "./server.js";
export default async function mockPrivateRegistry(packageOrOptions) {
if (typeof packageOrOptions === "string") {
packageOrOptions = {
package: { name: packageOrOptions, version: "1.0.0" },
};
}
const options = {
port: packageOrOptions?.port ?? await getPort({ port: [63142, 63143, 63144] }),
hostname: packageOrOptions?.hostname ?? "localhost",
token: {
type: packageOrOptions?.token?.type ?? "bearer",
value: packageOrOptions?.token?.value ?? "SecretToken",
},
package: {
name: packageOrOptions?.package?.name ?? "@mockscope/foobar",
version: packageOrOptions?.package?.version ?? "1.0.0",
},
};
const close = await configureServer(options);
return { ...options, close };
}