Be verbose about expected output
This commit is contained in:
@@ -1,14 +1,9 @@
|
||||
import { expect } from 'chai';
|
||||
import {
|
||||
VariantAnalysisScannedRepository as ApiVariantAnalysisScannedRepository,
|
||||
VariantAnalysisSkippedRepositories as ApiVariantAnalysisSkippedRepositories,
|
||||
VariantAnalysisSkippedRepositoryGroup as ApiVariantAnalysisSkippedRepositoryGroup,
|
||||
VariantAnalysisNotFoundRepositoryGroup as ApiVariantAnalysisNotFoundRepositoryGroup
|
||||
} from '../../../remote-queries/gh-api/variant-analysis';
|
||||
import {
|
||||
VariantAnalysisQueryLanguage,
|
||||
VariantAnalysisSkippedRepositories,
|
||||
VariantAnalysisSkippedRepositoryGroup,
|
||||
VariantAnalysisScannedRepository,
|
||||
VariantAnalysisRepoStatus
|
||||
} from '../../../remote-queries/shared/variant-analysis';
|
||||
@@ -27,6 +22,8 @@ describe('Variant Analysis processor', function() {
|
||||
it('should process an API response and return a variant analysis', () => {
|
||||
const result = processVariantAnalysis(mockSubmission, mockApiResponse);
|
||||
|
||||
const { access_mismatch_repos, no_codeql_db_repos, not_found_repo_nwos, over_limit_repos } = skippedRepos;
|
||||
|
||||
expect(result).to.eql({
|
||||
'id': 123,
|
||||
'controllerRepoId': 456,
|
||||
@@ -47,7 +44,58 @@ describe('Variant Analysis processor', function() {
|
||||
transformScannedRepo(VariantAnalysisRepoStatus.Pending, scannedRepos[1]),
|
||||
transformScannedRepo(VariantAnalysisRepoStatus.InProgress, scannedRepos[2]),
|
||||
],
|
||||
'skippedRepos': transformSkippedRepos(skippedRepos)
|
||||
'skippedRepos': {
|
||||
'accessMismatchRepos': {
|
||||
'repositories': [
|
||||
{
|
||||
'fullName': access_mismatch_repos.repositories[0].full_name,
|
||||
'id': access_mismatch_repos.repositories[0].id
|
||||
},
|
||||
{
|
||||
'fullName': access_mismatch_repos.repositories[1].full_name,
|
||||
'id': access_mismatch_repos.repositories[1].id
|
||||
}
|
||||
],
|
||||
'repositoryCount': access_mismatch_repos.repository_count
|
||||
},
|
||||
'noCodeqlDbRepos': {
|
||||
'repositories': [
|
||||
{
|
||||
'fullName': no_codeql_db_repos.repositories[0].full_name,
|
||||
'id': no_codeql_db_repos.repositories[0].id
|
||||
},
|
||||
{
|
||||
'fullName': no_codeql_db_repos.repositories[1].full_name,
|
||||
'id': no_codeql_db_repos.repositories[1].id,
|
||||
}
|
||||
],
|
||||
'repositoryCount': 2
|
||||
},
|
||||
'notFoundRepos': {
|
||||
'repositories': [
|
||||
{
|
||||
'fullName': not_found_repo_nwos.repository_full_names[0]
|
||||
},
|
||||
{
|
||||
'fullName': not_found_repo_nwos.repository_full_names[1]
|
||||
}
|
||||
],
|
||||
'repositoryCount': not_found_repo_nwos.repository_count
|
||||
},
|
||||
'overLimitRepos': {
|
||||
'repositories': [
|
||||
{
|
||||
'fullName': over_limit_repos.repositories[0].full_name,
|
||||
'id': over_limit_repos.repositories[0].id
|
||||
},
|
||||
{
|
||||
'fullName': over_limit_repos.repositories[1].full_name,
|
||||
'id': over_limit_repos.repositories[1].id
|
||||
}
|
||||
],
|
||||
'repositoryCount': over_limit_repos.repository_count
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
@@ -67,42 +115,4 @@ describe('Variant Analysis processor', function() {
|
||||
'resultCount': scannedRepo.result_count
|
||||
};
|
||||
}
|
||||
|
||||
function transformSkippedRepos(
|
||||
skippedRepos: ApiVariantAnalysisSkippedRepositories
|
||||
): VariantAnalysisSkippedRepositories {
|
||||
return {
|
||||
accessMismatchRepos: transformSkippedRepoGroup(skippedRepos.access_mismatch_repos),
|
||||
noCodeqlDbRepos: transformSkippedRepoGroup(skippedRepos.no_codeql_db_repos),
|
||||
notFoundRepos: transformNotFoundRepoGroup(skippedRepos.not_found_repo_nwos),
|
||||
overLimitRepos: transformSkippedRepoGroup(skippedRepos.over_limit_repos)
|
||||
};
|
||||
}
|
||||
});
|
||||
|
||||
function transformSkippedRepoGroup(repoGroup: ApiVariantAnalysisSkippedRepositoryGroup): VariantAnalysisSkippedRepositoryGroup {
|
||||
const repos = repoGroup.repositories.map(repo => {
|
||||
return {
|
||||
id: repo.id,
|
||||
fullName: repo.full_name
|
||||
};
|
||||
});
|
||||
|
||||
return {
|
||||
repositoryCount: repoGroup.repository_count,
|
||||
repositories: repos
|
||||
};
|
||||
}
|
||||
|
||||
function transformNotFoundRepoGroup(repoGroup: ApiVariantAnalysisNotFoundRepositoryGroup): VariantAnalysisSkippedRepositoryGroup {
|
||||
const repos = repoGroup.repository_nwos.map(nwo => {
|
||||
return {
|
||||
fullName: nwo
|
||||
};
|
||||
});
|
||||
|
||||
return {
|
||||
repositoryCount: repoGroup.repository_count,
|
||||
repositories: repos
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user