Skip to content

Commit 6af24fd

Browse files
authored
Merge pull request #150 from nolanlawson/sort-manifest
Sort manifest during generation
2 parents 21171cc + c2b1bf7 commit 6af24fd

7 files changed

+34
-27
lines changed
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# Did not investigate in great detail.
2-
["IDBFactory.databases() in non-sandboxed iframe should not reject"]
2+
["IDBFactory.databases() in data URL dedicated worker should throw SecurityError"]
33
expectation = "FAIL"
44

5-
["IDBFactory.databases() in sandboxed iframe should reject"]
5+
["IDBFactory.databases() in data URL shared worker should throw SecurityError"]
66
expectation = "FAIL"
77

8-
["IDBFactory.databases() in data URL dedicated worker should throw SecurityError"]
8+
["IDBFactory.databases() in non-sandboxed iframe should not reject"]
99
expectation = "FAIL"
1010

11-
["IDBFactory.databases() in data URL shared worker should throw SecurityError"]
11+
["IDBFactory.databases() in sandboxed iframe should reject"]
1212
expectation = "FAIL"
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# No iframe in Node.js.
2-
["IDBFactory.deleteDatabase() in non-sandboxed iframe should not throw"]
2+
["IDBFactory.deleteDatabase() in data URL dedicated worker should throw SecurityError"]
33
expectation = "FAIL"
44

5-
["IDBFactory.deleteDatabase() in sandboxed iframe should throw SecurityError"]
5+
["IDBFactory.deleteDatabase() in data URL shared worker should throw SecurityError"]
66
expectation = "FAIL"
77

8-
["IDBFactory.deleteDatabase() in data URL dedicated worker should throw SecurityError"]
8+
["IDBFactory.deleteDatabase() in non-sandboxed iframe should not throw"]
99
expectation = "FAIL"
1010

11-
["IDBFactory.deleteDatabase() in data URL shared worker should throw SecurityError"]
11+
["IDBFactory.deleteDatabase() in sandboxed iframe should throw SecurityError"]
1212
expectation = "FAIL"
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# No iframe in Node.js.
2-
["IDBFactory.open() in non-sandboxed iframe should not throw"]
2+
["IDBFactory.open() in data URL dedicated workers should throw SecurityError"]
33
expectation = "FAIL"
44

5-
["IDBFactory.open() in sandboxed iframe should throw SecurityError"]
5+
["IDBFactory.open() in data URL shared workers should throw SecurityError"]
66
expectation = "FAIL"
77

8-
["IDBFactory.open() in data URL dedicated workers should throw SecurityError"]
8+
["IDBFactory.open() in non-sandboxed iframe should not throw"]
99
expectation = "FAIL"
1010

11-
["IDBFactory.open() in data URL shared workers should throw SecurityError"]
11+
["IDBFactory.open() in sandboxed iframe should throw SecurityError"]
1212
expectation = "FAIL"
Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,17 @@
11
# relies on cross-iframe/cross-window communication which isn't relevant to us
2-
["Cross-realm IDBObjectStore::put() method from detached <iframe> works as expected"]
3-
expectation = "FAIL"
4-
52
["Cross-realm IDBObjectStore::add() method from detached <iframe> works as expected"]
63
expectation = "FAIL"
74

8-
["Cross-realm IDBObjectStore::delete() method from detached <iframe> works as expected"]
5+
["Cross-realm IDBObjectStore::clear() method from detached <iframe> works as expected"]
96
expectation = "FAIL"
107

11-
["Cross-realm IDBObjectStore::clear() method from detached <iframe> works as expected"]
8+
["Cross-realm IDBObjectStore::count() method from detached <iframe> works as expected"]
129
expectation = "FAIL"
1310

14-
["Cross-realm IDBObjectStore::get() method from detached <iframe> works as expected"]
11+
["Cross-realm IDBObjectStore::delete() method from detached <iframe> works as expected"]
1512
expectation = "FAIL"
1613

17-
["Cross-realm IDBObjectStore::getKey() method from detached <iframe> works as expected"]
14+
["Cross-realm IDBObjectStore::get() method from detached <iframe> works as expected"]
1815
expectation = "FAIL"
1916

2017
["Cross-realm IDBObjectStore::getAll() method from detached <iframe> works as expected"]
@@ -23,11 +20,14 @@ expectation = "FAIL"
2320
["Cross-realm IDBObjectStore::getAllKeys() method from detached <iframe> works as expected"]
2421
expectation = "FAIL"
2522

26-
["Cross-realm IDBObjectStore::count() method from detached <iframe> works as expected"]
23+
["Cross-realm IDBObjectStore::getKey() method from detached <iframe> works as expected"]
2724
expectation = "FAIL"
2825

2926
["Cross-realm IDBObjectStore::openCursor() method from detached <iframe> works as expected"]
3027
expectation = "FAIL"
3128

3229
["Cross-realm IDBObjectStore::openKeyCursor() method from detached <iframe> works as expected"]
30+
expectation = "FAIL"
31+
32+
["Cross-realm IDBObjectStore::put() method from detached <iframe> works as expected"]
3333
expectation = "FAIL"
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# these tests rely on the precise ordering of exceptions, which we currently fail sometimes
2-
["IDBObjectStore.deleteIndex exception order: InvalidStateError #2 vs. TransactionInactiveError"]
2+
["IDBObjectStore.deleteIndex exception order: InvalidStateError #1 vs. TransactionInactiveError"]
33
expectation = "UNSTABLE"
44

5-
["IDBObjectStore.deleteIndex exception order: TransactionInactiveError vs. NotFoundError"]
5+
["IDBObjectStore.deleteIndex exception order: InvalidStateError #2 vs. TransactionInactiveError"]
66
expectation = "UNSTABLE"
77

8-
["IDBObjectStore.deleteIndex exception order: InvalidStateError #1 vs. TransactionInactiveError"]
8+
["IDBObjectStore.deleteIndex exception order: TransactionInactiveError vs. NotFoundError"]
99
expectation = "UNSTABLE"
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# these test our ability to do a structured clone on various DOM types like DOMRect which we don't support
2-
["Transaction inactive during structured clone in IDBObjectStore.add()"]
2+
["Transaction inactive during structured clone in IDBCursor.update()"]
33
expectation = "FAIL"
44

5-
["Transaction inactive during structured clone in IDBObjectStore.put()"]
5+
["Transaction inactive during structured clone in IDBObjectStore.add()"]
66
expectation = "FAIL"
77

8-
["Transaction inactive during structured clone in IDBCursor.update()"]
8+
["Transaction inactive during structured clone in IDBObjectStore.put()"]
99
expectation = "FAIL"

src/test/web-platform-tests/run-all.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,10 +134,17 @@ for (const absFilename of filenames) {
134134
recursive: true,
135135
});
136136
if (Object.keys(generatedManifest).length) {
137+
// Sort to avoid issues where some tests complete before
138+
// others in non-deterministic order
139+
const sortedGeneratedManifest = Object.fromEntries(
140+
Object.keys(generatedManifest)
141+
.sort()
142+
.map((key) => [key, generatedManifest[key]]),
143+
);
137144
fs.writeFileSync(
138145
manifestFilename,
139146
stringifyManifest(
140-
generatedManifest,
147+
sortedGeneratedManifest,
141148
expectedManifest?.comments,
142149
),
143150
);

0 commit comments

Comments
 (0)