const Sequencer = require("@jest/test-sequencer").default
const startTestFilePaths = [
"pages/App.test.js",
]
const endTestFilePaths = [
"pages/error/runtime-error/runtime-error.test.js",
"pages/error/throw-error/throw-error.test.js",
]
class CustomSequencer extends Sequencer {
sort(tests) {
const startTests = startTestFilePaths
.map((filePath) => {
return tests.find((test) => test.path.endsWith(filePath))
})
.filter(Boolean)
const endTests = endTestFilePaths
.map((filePath) => {
return tests.find((test) => test.path.endsWith(filePath))
})
.filter(Boolean)
const middleTests = tests.filter((test) =>
!startTests.includes(test) && !endTests.includes(test)
);
return [...startTests, ...middleTests, ...endTests]
}
}
module.exports = CustomSequencer