in packages/service-library/src/data-providers/combined-scan-results-provider.ts [76:117]
public async readCombinedResults(fileId: string): Promise<CombinedScanResultsReadResponse> {
const downloadResponse = await this.readBlob(fileId);
if (downloadResponse.notFound) {
return {
error: { errorCode: 'blobNotFound' },
};
}
let contentString: string;
try {
contentString = (await this.bodyParser.getRawBody(downloadResponse.content as Readable)).toString();
} catch (error) {
return {
error: {
errorCode: 'streamError',
data: System.serializeError(error),
},
};
}
try {
const content = JSON.parse(contentString, (key, value) => {
if (key === 'violations' || key === 'passes' || key === 'incomplete' || key === 'inapplicable') {
return new AxeResultsList(value);
}
return value;
});
return {
results: content,
etag: downloadResponse.etag,
};
} catch (error) {
return {
error: {
errorCode: 'jsonParseError',
data: System.serializeError(error),
},
};
}
}