Skip to content

Commit 37d8080

Browse files
committed
test(ses): repro 2941 errorTrapping bugs
1 parent f8aa142 commit 37d8080

17 files changed

+326
-0
lines changed
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# repro
2+
3+
---
4+
5+
# `errorTrapping: 'platform'`
6+
7+
In ses/src/test/error/issue-2941/test1/
8+
1. open error-trapping-platform.js in the browser using `file://` protocol
9+
2. see
10+
11+
Brave (likely all Chromium):
12+
13+
<img alt="errorTrapping: 'platform'" src="./error-trapping-platform.jpg" />
14+
15+
FireFox (TODO):
16+
```
17+
???
18+
```
19+
20+
---
21+
22+
# `errorTrapping: 'platform', errorTaming: 'safe'`
23+
24+
In ses/src/test/error/issue-2941/test1/
25+
1. open error-trapping-platform-safe.js in the browser using `file://` protocol
26+
2. see
27+
28+
Brave (likely all Chromium):
29+
30+
<img alt="errorTrapping: 'platform'" src="./error-trapping-platform-safe.jpg" />
31+
32+
FireFox (TODO):
33+
```
34+
???
35+
```
36+
37+
---
38+
39+
# `errorTrapping: 'none'`
40+
41+
In ses/src/test/error/issue-2941/test1/
42+
1. open error-trapping-none.js in the browser using `file://` protocol
43+
2. see
44+
45+
Brave (likely all Chromium):
46+
47+
<img alt="errorTrapping: 'none'" src="./error-trapping-none.jpg" />
48+
49+
FireFox (TODO):
50+
```
51+
???
52+
```
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
4+
<head>
5+
<meta charset="UTF-8">
6+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
7+
<title>Document</title>
8+
<script src="../../../../dist/ses.cjs"></script>
9+
<script>
10+
lockdown({
11+
errorTaming: 'unsafe',
12+
stackFiltering: 'concise',
13+
errorTrapping: 'none',
14+
})
15+
16+
</script>
17+
</head>
18+
19+
<body>
20+
<script src="./test.notjs"></script>
21+
</body>
22+
23+
</html>
8.52 KB
Loading
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
4+
<head>
5+
<meta charset="UTF-8">
6+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
7+
<title>Document</title>
8+
<script src="../../../../dist/ses.cjs"></script>
9+
<script>
10+
lockdown({
11+
errorTaming: 'safe',
12+
stackFiltering: 'concise',
13+
errorTrapping: 'platform',
14+
})
15+
16+
</script>
17+
</head>
18+
19+
<body>
20+
<script src="./test.notjs"></script>
21+
</body>
22+
23+
</html>
20.5 KB
Loading
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
4+
<head>
5+
<meta charset="UTF-8">
6+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
7+
<title>Document</title>
8+
<script src="../../../../dist/ses.cjs"></script>
9+
<script>
10+
lockdown({
11+
errorTaming: 'unsafe',
12+
stackFiltering: 'concise',
13+
errorTrapping: 'platform',
14+
})
15+
16+
</script>
17+
</head>
18+
19+
<body>
20+
<script src="./test.notjs"></script>
21+
</body>
22+
23+
</html>
19.2 KB
Loading
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
canIRunInvalidSyntax?()
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# repro
2+
3+
When a multiline message is thrown in Node.js, SES will print all lines of the message, except first, twice.
4+
5+
The problem goes away when `errorTrapping: "none"` is added to lockdown options
6+
7+
---
8+
# `errorTrapping: 'platform'`
9+
10+
```
11+
$ node error-trapping-platform.demo.js
12+
SES_UNCAUGHT_EXCEPTION: (Error#1)
13+
Error#1: Does this place have an
14+
echo?
15+
16+
echo?
17+
18+
at packages/ses/test/error/issue-2941/test2/error-trapping-platform.demo.js:9:7
19+
```
20+
21+
---
22+
# `errorTrapping: 'platform', errorTaming: 'safe'`
23+
24+
```
25+
$ node error-trapping-platform-safe.demo.js
26+
SES_UNCAUGHT_EXCEPTION: (Error#1)
27+
Error#1: Does this place have an
28+
echo?
29+
30+
31+
at packages/ses/test/error/issue-2941/test2/error-trapping-platform-safe.demo.js:9:7
32+
```
33+
34+
---
35+
36+
# `errorTrapping: 'none'`
37+
38+
```
39+
$ node error-trapping-none.demo.js
40+
file:///Users/markmiller/src/ongithub/endojs/endo/packages/ses/test/error/issue-2941/test2/error-trapping-none.demo.js:9
41+
throw Error(`Does this place have an
42+
^
43+
44+
[Error: Does this place have an
45+
echo?
46+
47+
at packages/ses/test/error/issue-2941/test2/error-trapping-none.demo.js:9:7]
48+
49+
Node.js v22.16.0
50+
```
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import '../../../../index.js';
2+
3+
lockdown({
4+
errorTaming: 'unsafe',
5+
stackFiltering: 'concise',
6+
errorTrapping: 'none',
7+
});
8+
9+
throw Error(`Does this place have an
10+
echo?
11+
`);

0 commit comments

Comments
 (0)