Skip to content

Commit 5c3b2e6

Browse files
committed
Failed attempt to get web e2e tests running
1 parent 5832756 commit 5c3b2e6

11 files changed

+2336
-1943
lines changed

.vscode/launch.json

+10-15
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,7 @@
1616
"--extensionDevelopmentPath=${workspaceFolder}/packages/foam-vscode",
1717
"--extensionTestsPath=${workspaceFolder}/packages/foam-vscode/out/test/suite"
1818
],
19-
"outFiles": [
20-
"${workspaceFolder}/packages/foam-vscode/out/**/*.js"
21-
],
19+
"outFiles": ["${workspaceFolder}/packages/foam-vscode/out/**/*.js"],
2220
"preLaunchTask": "${defaultBuildTask}"
2321
},
2422
{
@@ -29,22 +27,23 @@
2927
"args": [
3028
"--extensionDevelopmentPath=${workspaceFolder}/packages/foam-vscode"
3129
],
32-
"outFiles": [
33-
"${workspaceFolder}/packages/foam-vscode/out/**/*.js"
34-
],
30+
"outFiles": ["${workspaceFolder}/packages/foam-vscode/out/**/*.js"],
3531
"preLaunchTask": "${defaultBuildTask}"
3632
},
3733
{
3834
"name": "Run Foam Web extension",
39-
"type": "pwa-extensionHost",
35+
"type": "extensionHost",
4036
"debugWebWorkerHost": true,
4137
"request": "launch",
4238
"args": [
4339
"--extensionDevelopmentPath=${workspaceFolder}/packages/foam-vscode",
44-
"--extensionDevelopmentKind=web"
40+
"--extensionDevelopmentKind=web",
41+
"--extensionTestsPath=${workspaceFolder}/packages/foam-vscode/out/web/test/suite-web.js",
42+
"${workspaceFolder}/packages/foam-vscode/.test-workspace"
4543
],
46-
"outFiles": ["${workspaceFolder}/packages/foam-vscode/dist/web/**/*.js"],
47-
"preLaunchTask": "npm: watch-web"
44+
"outFiles": ["${workspaceFolder}/packages/foam-vscode/out/web/**/*.js"],
45+
"preLaunchTask": "npm: watch-web",
46+
"sourceMaps": true
4847
},
4948
{
5049
"type": "node",
@@ -55,11 +54,7 @@
5554
"disableOptimisticBPs": true,
5655
"cwd": "${workspaceFolder}/packages/foam-vscode",
5756
"runtimeExecutable": "yarn",
58-
"args": [
59-
"jest",
60-
"--runInBand",
61-
"--watchAll=false"
62-
]
57+
"args": ["jest", "--runInBand", "--watchAll=false"]
6358
}
6459
]
6560
}

packages/foam-vscode/package.json

+15-8
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
"workspaceContains:.vscode/foam.json"
2323
],
2424
"main": "./out/extension.js",
25-
"browser": "./dist/web/extension.js",
25+
"browser": "./out/web/extension.js",
2626
"capabilities": {
2727
"untrustedWorkspaces": {
2828
"supported": "limited",
@@ -657,6 +657,8 @@
657657
"test:unit": "node ./out/test/run-tests.js --unit",
658658
"pretest:e2e": "yarn build",
659659
"test:e2e": "node ./out/test/run-tests.js --e2e",
660+
"pretest:e2e-web": "npm run compile-web && tsc -p tsconfig.webTest.json",
661+
"test:e2e-web": "node ./out/web/test/run-tests-web.js --e2e",
660662
"lint": "dts lint src",
661663
"clean": "rimraf out",
662664
"watch": "tsc --build ./tsconfig.json --watch",
@@ -668,25 +670,27 @@
668670
"publish-extension-openvsx": "npx ovsx publish foam-vscode-$npm_package_version.vsix -p $OPENVSX_TOKEN",
669671
"publish-extension-vscode": "npx vsce publish --packagePath foam-vscode-$npm_package_version.vsix",
670672
"publish-extension": "yarn publish-extension-vscode && yarn publish-extension-openvsx",
671-
"compile-web": "webpack --config web/webpack.config.js",
672-
"watch-web": "webpack --config web/webpack.config.js --watch",
673-
"package-web": "webpack --config web/webpack.config.js --mode production --devtool hidden-source-map",
674-
"open-in-browser": "vscode-test-web --browser=chromium --extensionDevelopmentPath=."
673+
"compile-web": "webpack --config web/webpack.config.cjs",
674+
"watch-web": "webpack --config web/webpack.config.cjs --watch",
675+
"package-web": "webpack --config web/webpack.config.cjs --mode production --devtool hidden-source-map",
676+
"open-in-browser": "vscode-test-web --verbose --browser=chromium --extensionDevelopmentPath=. .test-workspace"
675677
},
676678
"devDependencies": {
677679
"@types/dateformat": "^3.0.1",
678-
"@types/jest": "^29.5.3",
680+
"@types/jest": "^29.5.5",
679681
"@types/lodash": "^4.14.157",
680682
"@types/markdown-it": "^12.0.1",
681683
"@types/micromatch": "^4.0.1",
682-
"@types/node": "^13.11.0",
684+
"@types/mocha": "^10.0.2",
685+
"@types/node": "^13.13.52",
683686
"@types/picomatch": "^2.2.1",
684687
"@types/remove-markdown": "^0.1.1",
685688
"@types/vscode": "^1.70.0",
686689
"@types/webpack-env": "1.16.0",
687690
"@typescript-eslint/eslint-plugin": "^5.51.0",
688691
"@typescript-eslint/parser": "^5.51.0",
689692
"@vscode/test-web": "^0.0.45",
693+
"assert": "^2.1.0",
690694
"crypto-browserify": "^3.12.0",
691695
"dts-cli": "^1.6.3",
692696
"esbuild": "^0.17.7",
@@ -699,14 +703,17 @@
699703
"jest-extended": "^3.2.3",
700704
"markdown-it": "^12.0.4",
701705
"micromatch": "^4.0.2",
706+
"mocha": "^10.2.0",
707+
"os-browserify": "^0.3.0",
702708
"path-browserify": "^1.0.1",
703709
"process": "^0.11.10",
704710
"rimraf": "^3.0.2",
705711
"stream-browserify": "^3.0.0",
706-
"ts-jest": "^29.1.1",
707712
"ts-loader": "9.4.4",
708713
"tslib": "^2.0.0",
714+
"tty-browserify": "^0.0.1",
709715
"typescript": "^4.9.5",
716+
"util": "^0.12.5",
710717
"vscode-test": "^1.3.0",
711718
"wait-for-expect": "^3.0.2",
712719
"webpack": "5.88.2",

packages/foam-vscode/src/features/preview/wikilink-embed.ts

+6-1
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,12 @@ function contentExtractor(
193193
parser: ResourceParser,
194194
workspace: FoamWorkspace
195195
): string {
196-
let noteText = vsWorkspace.fs.readFile(toVsCodeUri(note.uri)).toString();
196+
let noteText;
197+
198+
vsWorkspace.fs
199+
.readFile(toVsCodeUri(note.uri))
200+
.then(f => (noteText = f.toString()));
201+
197202
let section = Resource.findSection(note, note.uri.fragment);
198203
if (!note.uri.fragment) {
199204
// if there's no fragment(section), the wikilink is linking to the entire note,

0 commit comments

Comments
 (0)