Skip to content

Commit

Permalink
Integrate scan into db service
Browse files Browse the repository at this point in the history
  • Loading branch information
akuny committed Oct 23, 2023
1 parent 83bfcf8 commit 9eca135
Show file tree
Hide file tree
Showing 4 changed files with 48 additions and 9 deletions.
7 changes: 4 additions & 3 deletions entities/core-result.entity.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ export type CoreResultPages = {
robotsTxt: ScanPage.RobotsTxtPageScan;
sitemapXml: ScanPage.SitemapXmlPageScan;
dns: ScanPage.DnsPageScan;
accessibility: ScanPage.AccessibilityPageScan;
};

@Entity()
Expand Down Expand Up @@ -374,17 +375,17 @@ export class CoreResult {
@Column({ nullable: true })
@Expose({ name: 'missing_img_alt_issues' })
@Exclude()
missingImgAltIssues?: boolean;
missingImgAltIssues?: number;

@Column({ nullable: true })
@Expose({ name: 'html_attribute_issues' })
@Exclude()
htmlAttributeIssues?: boolean;
htmlAttributeIssues?: number;

@Column({ nullable: true })
@Expose({ name: 'color_contrast_issues' })
@Exclude()
colorContrastIssues?: boolean;
colorContrastIssues?: number;

static getColumnNames(): string[] {
// return class-transformer version of column names
Expand Down
11 changes: 5 additions & 6 deletions libs/core-scanner/src/core-scanner.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,14 +39,13 @@ export class CoreScannerService
robotsTxt: await this.runRobotsTxtScan(browser, input, scanLogger),
sitemapXml: await this.runSitemapXmlScan(browser, input, scanLogger),
dns: await this.runDnsScan(input.url, scanLogger),
accessibility: await this.runAccessibilityScan(
browser,
input,
scanLogger,
),
};

const a11yScanResults = await this.runAccessibilityScan(
browser,
input,
scanLogger,
);

scanLogger.info({ result }, 'solutions scan results');

return result;
Expand Down
10 changes: 10 additions & 0 deletions libs/database/src/core-results/core-result.service.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,16 @@ describe('CoreResultService', () => {
},
},
},
accessibility: {
status: scanStatus,
result: {
accessibilityScan: {
missingImgAltIssues: 0,
htmlAttributeIssues: 0,
colorContrastIssues: 0,
},
},
},
};
const logger = mock<Logger>();

Expand Down
29 changes: 29 additions & 0 deletions libs/database/src/core-results/core-result.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ export class CoreResultService {
this.updateRobotsTxtScanResults(coreResult, pages, logger);
this.updateSitemapXmlScanResults(coreResult, pages, logger);
this.updateDnsScanResults(coreResult, pages, logger);
this.updateAccessibilityScanResults(coreResult, pages, logger);

return this.create(coreResult);
}
Expand Down Expand Up @@ -296,4 +297,32 @@ export class CoreResultService {
coreResult.dnsHostname = null;
}
}

private updateAccessibilityScanResults(
coreResult: CoreResult,
pages: CoreResultPages,
logger: Logger,
) {
coreResult.accessibilityScanStatus = pages.accessibility.status;

if (pages.accessibility.status === ScanStatus.Completed) {
coreResult.missingImgAltIssues =
pages.accessibility.result.accessibilityScan.missingImgAltIssues;

coreResult.htmlAttributeIssues =
pages.accessibility.result.accessibilityScan.htmlAttributeIssues;

coreResult.colorContrastIssues =
pages.accessibility.result.accessibilityScan.colorContrastIssues;
} else {
logger.error({
msg: pages.accessibility.error,
page: 'accessibility',
});

coreResult.missingImgAltIssues = null;
coreResult.htmlAttributeIssues = null;
coreResult.colorContrastIssues = null;
}
}
}

0 comments on commit 9eca135

Please sign in to comment.