Skip to content

Commit 3ef1516

Browse files
authored
build(definitelytyped): ensure d ts without module can be mocked by definitely typed (#263)
* build(definitelytyped): ensure d ts without module can be mocked by definitely type
1 parent 5cd5036 commit 3ef1516

File tree

22 files changed

+270
-86
lines changed

22 files changed

+270
-86
lines changed

.github/workflows/definitelyTyped.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ jobs:
2727
run: |
2828
npm install
2929
npm run build
30+
npm run build:transformer:definitelyTyped
3031
- name: definitelyTyped
3132
run: |
3233
cd definitelyTypedTests

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
node_modules
22
dist
3+
definitelyTypedTests/build
34
.idea
45
DefinitelyTyped

config/modules/definitelyTypedTransformer/index.ts

Whitespace-only changes.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"extends": "../../../tsconfig.base.json",
3+
"compilerOptions": {
4+
"declaration": true,
5+
"outDir": "../../../definitelyTypedTests/dist"
6+
}
7+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
const path = require("path");
2+
const merge = require("webpack-merge");
3+
const base = require("../base/webpack.base");
4+
5+
module.exports = merge(base({
6+
tsConfigFile: 'config/modules/definitelyTypedTransformer/tsconfig.json'
7+
}), {
8+
entry: {
9+
index: './definitelyTypedTests/src/index.ts'
10+
},
11+
output: {
12+
path: path.resolve(__dirname, "../../../definitelyTypedTests/dist")
13+
}
14+
});
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
const webpackNodeExternals = require("webpack-node-externals");
2+
const path = require("path");
3+
const merge = require("webpack-merge");
4+
const base = require("../base/webpack.base");
5+
6+
module.exports = merge(base({
7+
tsConfigFile: 'config/modules/definitelyTypedTransformer/tsconfig.json'
8+
}), {
9+
target: "node",
10+
node: {
11+
__dirname: false
12+
},
13+
externals: [
14+
webpackNodeExternals()
15+
],
16+
entry: {
17+
index: './definitelyTypedTests/src/transformer/index.ts',
18+
},
19+
output: {
20+
path: path.resolve(__dirname, "../../../definitelyTypedTests/dist/transformer"),
21+
}
22+
});

data/definitelyTyped/list.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
[{"id":"756c5f8d-be26-43fc-8831-0a12df4c972e.json","initialDate":"2020-01-11T17:17:58.333Z","lastUpdatedDate":"2020-01-16T00:31:39.270Z","typesProcessed":9999},{"id":"9749238a-cba9-4abd-9fac-f9d0d4ef90e3.json","initialDate":"2020-01-17T20:34:24.904Z","lastUpdatedDate":"2020-02-01T00:40:31.064Z","typesProcessed":9999},{"id":"45e2213b-fa9c-40d1-b066-89413f063ee3.json","initialDate":"2020-02-01T17:11:06.944Z","lastUpdatedDate":"2020-03-07T00:20:59.201Z","typesProcessed":6549},{"id":"532444dd-7414-42ad-8d30-3da2d2e6c9af.json","initialDate":"2020-03-08T08:08:21.638Z","lastUpdatedDate":"2020-03-17T00:55:23.522Z","typesProcessed":3500}]
1+
[{"id":"756c5f8d-be26-43fc-8831-0a12df4c972e.json","initialDate":"2020-01-11T17:17:58.333Z","lastUpdatedDate":"2020-01-16T00:31:39.270Z","typesProcessed":9999},{"id":"9749238a-cba9-4abd-9fac-f9d0d4ef90e3.json","initialDate":"2020-01-17T20:34:24.904Z","lastUpdatedDate":"2020-02-01T00:40:31.064Z","typesProcessed":9999},{"id":"45e2213b-fa9c-40d1-b066-89413f063ee3.json","initialDate":"2020-02-01T17:11:06.944Z","lastUpdatedDate":"2020-03-07T00:20:59.201Z","typesProcessed":6549},{"id":"532444dd-7414-42ad-8d30-3da2d2e6c9af.json","initialDate":"2020-03-08T08:08:21.638Z","lastUpdatedDate":"2020-03-17T00:55:23.522Z","typesProcessed":3500}]
2+

definitelyTypedTests/index.js

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ async function run(dir, processId) {
8888
'noEmit': false,
8989
'plugins': [
9090
{
91-
'transform': '../dist/transformer',
91+
'transform': './dist/transformer',
9292
'debug': true
9393
}
9494
],
@@ -120,10 +120,11 @@ async function run(dir, processId) {
120120

121121
fs.writeFileSync(`tsconfig.types.${processId}.json`, JSON.stringify(config));
122122
fs.writeFileSync(`${processId}.index.ts`, `
123-
import pak = require('${typePath}/');
124-
import { createMock } from '../dist';
125123
// @ts-ignore
126-
createMock<typeof pak>();
124+
import pak = require('${typePath}');
125+
import { createDefinitelyTypedMock } from './dist';
126+
// @ts-ignore
127+
createDefinitelyTypedMock<typeof pak>();
127128
`);
128129

129130
return execPromise(`npx ttsc --project tsconfig.types.${processId}.json`)

definitelyTypedTests/package-lock.json

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

definitelyTypedTests/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,6 @@
1717
"dependencies": {
1818
"dotenv": "^8.2.0",
1919
"ttypescript": "^1.5.8",
20-
"typescript": "^3.7.4"
20+
"typescript": "^3.8.3"
2121
}
2222
}

0 commit comments

Comments
 (0)