Make createMockApiResponse more convenient

So that we're able to:
- set the status value
- build scanned and skipped repos by default

For previous tests, we needed to perform checks on scanned & skipped
repos so we needed to build them outside of this method. When we re-use
this method for the VariantAnalysisMonitor, we will just need a generic
ApiResponse so we can create these repos inside the method.
This commit is contained in:
Elena Tanasoiu
2022-09-27 09:59:04 +01:00
parent e19637b59c
commit d9e9c1b885
2 changed files with 13 additions and 8 deletions

View File

@@ -21,7 +21,7 @@ import { createMockSubmission } from '../../factories/remote-queries/shared/vari
describe('Variant Analysis processor', function() {
const scannedRepos = createMockScannedRepos();
const skippedRepos = createMockSkippedRepos();
const mockApiResponse = createMockApiResponse(scannedRepos, skippedRepos);
const mockApiResponse = createMockApiResponse('completed', scannedRepos, skippedRepos);
const mockSubmission = createMockSubmission();
it('should process an API response and return a variant analysis', () => {

View File

@@ -2,14 +2,18 @@ import {
VariantAnalysis as VariantAnalysisApiResponse,
VariantAnalysisScannedRepository,
VariantAnalysisSkippedRepositories,
VariantAnalysisStatus,
} from '../../../../remote-queries/gh-api/variant-analysis';
import {
VariantAnalysisQueryLanguage
} from '../../../../remote-queries/shared/variant-analysis';
import { createMockScannedRepos } from './scanned-repositories';
import { createMockSkippedRepos } from './skipped-repositories';
export function createMockApiResponse(
scannedRepos: VariantAnalysisScannedRepository[],
skippedRepos: VariantAnalysisSkippedRepositories
status = 'in_progress',
scannedRepos: VariantAnalysisScannedRepository[] = createMockScannedRepos(),
skippedRepos: VariantAnalysisSkippedRepositories = createMockSkippedRepos()
): VariantAnalysisApiResponse {
const variantAnalysis: VariantAnalysisApiResponse = {
id: 123,
@@ -22,7 +26,7 @@ export function createMockApiResponse(
actor_id: 123,
query_language: VariantAnalysisQueryLanguage.Javascript,
query_pack_url: 'https://example.com/foo',
status: 'in_progress',
status: status as VariantAnalysisStatus,
actions_workflow_run_id: 456,
scanned_repositories: scannedRepos,
skipped_repositories: skippedRepos
@@ -32,11 +36,12 @@ export function createMockApiResponse(
}
export function createFailedMockApiResponse(
scannedRepos: VariantAnalysisScannedRepository[],
skippedRepos: VariantAnalysisSkippedRepositories
status = 'in_progress',
scannedRepos: VariantAnalysisScannedRepository[] = createMockScannedRepos(),
skippedRepos: VariantAnalysisSkippedRepositories = createMockSkippedRepos(),
): VariantAnalysisApiResponse {
const variantAnalysis = createMockApiResponse(scannedRepos, skippedRepos);
variantAnalysis.status = 'completed';
const variantAnalysis = createMockApiResponse(status, scannedRepos, skippedRepos);
variantAnalysis.status = status as VariantAnalysisStatus;
variantAnalysis.failure_reason = 'internal_error';
return variantAnalysis;