aboutsummaryrefslogtreecommitdiff
path: root/test/js/async_try_finally.t.js
blob: c78697143859ba15d6500409c39bb73d8194d03b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/*---
includes: []
flags: [async]
---*/

let stages = [];

async function af() {
    try {
        await new Promise(function(resolve, reject) {
            reject("reject");
        });

        $DONOTEVALUATE();
    }
    finally {
        await new Promise(function(resolve, reject) {
            reject("finally reject");
        });

        $DONOTEVALUATE();
    }

    return "shouldn't happen: end";
};

af()
.then(v => $DONOTEVALUATE())
.catch(v => {
    assert.sameValue(v, "finally reject");
})
.then($DONE, $DONE);