apify--crawlee
34 行
1.3 KiB
JavaScript
34 行
1.3 KiB
JavaScript
import { initialize, getActorTestDir, runActor, expect, hasNestedKey } from '../tools.mjs';
|
|
|
|
const testActorDirname = getActorTestDir(import.meta.url);
|
|
await initialize(testActorDirname);
|
|
|
|
const { stats, defaultKeyValueStoreItems } = await runActor(testActorDirname);
|
|
|
|
// All requests should fail to test the error snapshots
|
|
await expect(stats.requestsFailed === 4, 'All requests failed');
|
|
|
|
let totalErrorHtmlFiles = 0;
|
|
let totalErrorScreenshotFiles = 0;
|
|
for (const error of Object.values(stats.errors)) {
|
|
if (hasNestedKey(error, 'firstErrorHtmlUrl')) {
|
|
totalErrorHtmlFiles++;
|
|
}
|
|
}
|
|
|
|
for (const error of Object.values(stats.errors)) {
|
|
if (hasNestedKey(error, 'firstErrorScreenshotUrl')) {
|
|
totalErrorScreenshotFiles++;
|
|
}
|
|
}
|
|
|
|
// Count of error HTML files stored in the stats to make sure they are saved
|
|
await expect(totalErrorHtmlFiles === 4, 'Number of HTML error files in stats should be 4');
|
|
// Count of error Screenshot files stored in the stats to make sure they are saved
|
|
await expect(totalErrorScreenshotFiles === 4, 'Number of screenshots error files in stats should be 4');
|
|
// Count of error HTML files and screenshot files stored in the Key-Value store
|
|
await expect(
|
|
defaultKeyValueStoreItems.length === 8,
|
|
'Number of HTML and screenshot error snapshots in KV store should be 8',
|
|
);
|