Make generate-packages tests pass

This commit is contained in:
Nathan Shively-Sanders
2023-04-03 16:21:15 -07:00
parent c30e50a932
commit ffc9fc4f3e
2 changed files with 7 additions and 25 deletions

View File

@@ -205,7 +205,7 @@ export function createReadme(typing: TypingsData, packageFS: FS): string {
lines.push("");
lines.push("### Additional Details");
lines.push(` * Last updated: ${new Date().toUTCString()}`);
const dependencies = Object.keys(typing.packageJsonDependencies).map(getFullNpmName).sort();
const dependencies = Object.keys(typing.packageJsonDependencies).sort();
lines.push(
` * Dependencies: ${
dependencies.length ? dependencies.map((d) => `[${d}](https://npmjs.com/package/${d})`).join(", ") : "none"

View File

@@ -5,25 +5,18 @@ import {
getLicenseFileText,
} from "../src/generate-packages";
import {
AllPackages,
License,
NotNeededPackage,
readNotNeededPackages,
TypesDataFile,
TypingsData,
TypingsDataRaw,
createMockDT,
} from "@definitelytyped/definitions-parser";
import { testo } from "./utils";
import { Registry, InMemoryFS, Dir, FS } from "@definitelytyped/utils";
import { InMemoryFS, Dir, FS } from "@definitelytyped/utils";
function createRawPackage(license: License): TypingsDataRaw {
return {
libraryName: "jquery",
typingsPackageName: "jquery",
dependencies: { madeira: { major: 1 } },
testDependencies: [],
pathMappings: {},
contributors: [{ name: "A", url: "b@c.d", githubUsername: "e" }],
libraryMajorVersion: 1,
libraryMinorVersion: 0,
@@ -31,23 +24,14 @@ function createRawPackage(license: License): TypingsDataRaw {
typesVersions: [],
files: ["index.d.ts", "jquery.test.ts"],
license,
packageJsonDependencies: [{ name: "balzac", version: "~3" }],
packageJsonDependencies: { "@types/madeira": "^1", "balzac": "~3" },
packageJsonDevDependencies: { "@types/jquery": "workspace:." },
contentHash: "11",
projectName: "jquery.org",
globals: [],
declaredModules: ["jquery"],
};
}
function createTypesData(): TypesDataFile {
return {
jquery: {
"1.0": createRawPackage(License.MIT),
},
madeira: {
"1.0": createRawPackage(License.Apache20),
},
};
}
function createUnneededPackage() {
return new NotNeededPackage("absalom", "alternate", "1.1.1");
}
@@ -91,8 +75,7 @@ testo({
},
readmeMultipleDependencies() {
const typing = new TypingsData(createRawPackage(License.Apache20), /*isLatest*/ true);
// @ts-expect-error - dependencies is readonly
typing.dependencies.example = { major: 2 };
typing.packageJsonDependencies["@types/example"] = "*";
expect(createReadme(typing, defaultFS())).toEqual(
expect.stringContaining(
"Dependencies: [@types/example](https://npmjs.com/package/@types/example), [@types/madeira](https://npmjs.com/package/@types/madeira)"
@@ -115,9 +98,8 @@ testo({
expect(createReadme(typing, defaultFS())).toEqual(expect.stringContaining("Global values: none"));
},
basicPackageJson() {
const packages = AllPackages.from(createTypesData(), readNotNeededPackages(createMockDT().fs));
const typing = new TypingsData(createRawPackage(License.MIT), /*isLatest*/ true);
expect(createPackageJSON(typing, "1.0", packages)).toEqual(`{
expect(createPackageJSON(typing, "1.0")).toEqual(`{
"name": "@types/jquery",
"version": "1.0",
"description": "TypeScript definitions for jquery",