mirror of
https://github.com/webrecorder/browsertrix-crawler.git
synced 2025-10-19 14:33:17 +00:00
detect invalid custom behaviors on load: (#450)
- on first page, attempt to evaluate the behavior class to ensure it compiles - if fails to compile, log exception with fatal and exit - update behavior gathering code to keep track of behavior filename - tests: add test for invalid behavior which causes crawl to exit with fatal exit code (17)
This commit is contained in:
parent
3323262852
commit
703835a7dd
5 changed files with 81 additions and 8 deletions
|
@ -34,3 +34,18 @@ test("test custom behaviors", async () => {
|
|||
) > 0,
|
||||
).toBe(true);
|
||||
});
|
||||
|
||||
test("test invalid behavior exit", async () => {
|
||||
let status = 0;
|
||||
|
||||
try {
|
||||
child_process.execSync(
|
||||
"docker run -v $PWD/test-crawls:/crawls -v $PWD/tests/invalid-behaviors/:/custom-behaviors/ webrecorder/browsertrix-crawler crawl --url https://example.com/ --url https://example.org/ --url https://webrecorder.net/ --customBehaviors /custom-behaviors/invalid-export.js --scopeType page",
|
||||
);
|
||||
} catch (e) {
|
||||
status = e.status;
|
||||
}
|
||||
|
||||
// logger fatal exit code
|
||||
expect(status).toBe(17);
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue