Rename analysis alert results (#1197)

This commit is contained in:
Charis Kyriakou
2022-03-10 07:56:05 +00:00
committed by GitHub
parent af53a02ea5
commit d052ddb742
5 changed files with 27 additions and 27 deletions

View File

@@ -101,7 +101,7 @@ export class AnalysesResultsManager {
const analysisResults: AnalysisResults = { const analysisResults: AnalysisResults = {
nwo: analysis.nwo, nwo: analysis.nwo,
status: 'InProgress', status: 'InProgress',
results: [] interpretedResults: []
}; };
const queryId = analysis.downloadLink.queryId; const queryId = analysis.downloadLink.queryId;
const resultsForQuery = this.internalGetAnalysesResults(queryId); const resultsForQuery = this.internalGetAnalysesResults(queryId);
@@ -123,7 +123,7 @@ export class AnalysesResultsManager {
const queryResults = await this.readResults(artifactPath); const queryResults = await this.readResults(artifactPath);
newAnaysisResults = { newAnaysisResults = {
...analysisResults, ...analysisResults,
results: queryResults, interpretedResults: queryResults,
status: 'Completed' status: 'Completed'
}; };
} else { } else {

View File

@@ -99,7 +99,7 @@ export const sampleRemoteQueryResult: RemoteQueryResult = {
}; };
const createAnalysisResults = (n: number) => Array(n).fill( const createAnalysisInterpretedResults = (n: number) => Array(n).fill(
{ {
message: 'This shell command depends on an uncontrolled [absolute path](1).', message: 'This shell command depends on an uncontrolled [absolute path](1).',
shortDescription: 'Shell command built from environment values', shortDescription: 'Shell command built from environment values',
@@ -317,18 +317,18 @@ export const sampleAnalysesResultsStage1: AnalysisResults[] = [
{ {
nwo: 'big-corp/repo1', nwo: 'big-corp/repo1',
status: 'InProgress', status: 'InProgress',
results: [] interpretedResults: []
}, },
{ {
nwo: 'big-corp/repo2', nwo: 'big-corp/repo2',
status: 'InProgress', status: 'InProgress',
results: [] interpretedResults: []
}, },
{ {
nwo: 'big-corp/repo3', nwo: 'big-corp/repo3',
status: 'InProgress', status: 'InProgress',
results: [] interpretedResults: []
}, },
// No entries for repo4 // No entries for repo4
]; ];
@@ -337,22 +337,22 @@ export const sampleAnalysesResultsStage2: AnalysisResults[] = [
{ {
nwo: 'big-corp/repo1', nwo: 'big-corp/repo1',
status: 'Completed', status: 'Completed',
results: createAnalysisResults(85) interpretedResults: createAnalysisInterpretedResults(85)
}, },
{ {
nwo: 'big-corp/repo2', nwo: 'big-corp/repo2',
status: 'Completed', status: 'Completed',
results: createAnalysisResults(20) interpretedResults: createAnalysisInterpretedResults(20)
}, },
{ {
nwo: 'big-corp/repo3', nwo: 'big-corp/repo3',
status: 'InProgress', status: 'InProgress',
results: [] interpretedResults: []
}, },
{ {
nwo: 'big-corp/repo4', nwo: 'big-corp/repo4',
status: 'InProgress', status: 'InProgress',
results: [] interpretedResults: []
}, },
]; ];
@@ -360,22 +360,22 @@ export const sampleAnalysesResultsStage3: AnalysisResults[] = [
{ {
nwo: 'big-corp/repo1', nwo: 'big-corp/repo1',
status: 'Completed', status: 'Completed',
results: createAnalysisResults(85) interpretedResults: createAnalysisInterpretedResults(85)
}, },
{ {
nwo: 'big-corp/repo2', nwo: 'big-corp/repo2',
status: 'Completed', status: 'Completed',
results: createAnalysisResults(20) interpretedResults: createAnalysisInterpretedResults(20)
}, },
{ {
nwo: 'big-corp/repo3', nwo: 'big-corp/repo3',
status: 'Completed', status: 'Completed',
results: createAnalysisResults(8) interpretedResults: createAnalysisInterpretedResults(8)
}, },
{ {
nwo: 'big-corp/repo4', nwo: 'big-corp/repo4',
status: 'Completed', status: 'Completed',
results: createAnalysisResults(3) interpretedResults: createAnalysisInterpretedResults(3)
}, },
]; ];
@@ -383,21 +383,21 @@ export const sampleAnalysesResultsWithFailure: AnalysisResults[] = [
{ {
nwo: 'big-corp/repo1', nwo: 'big-corp/repo1',
status: 'Completed', status: 'Completed',
results: createAnalysisResults(85) interpretedResults: createAnalysisInterpretedResults(85)
}, },
{ {
nwo: 'big-corp/repo2', nwo: 'big-corp/repo2',
status: 'Completed', status: 'Completed',
results: createAnalysisResults(20) interpretedResults: createAnalysisInterpretedResults(20)
}, },
{ {
nwo: 'big-corp/repo3', nwo: 'big-corp/repo3',
status: 'Failed', status: 'Failed',
results: [] interpretedResults: []
}, },
{ {
nwo: 'big-corp/repo4', nwo: 'big-corp/repo4',
status: 'Completed', status: 'Completed',
results: createAnalysisResults(3) interpretedResults: createAnalysisInterpretedResults(3)
}, },
]; ];

View File

@@ -3,7 +3,7 @@ export type AnalysisResultStatus = 'InProgress' | 'Completed' | 'Failed';
export interface AnalysisResults { export interface AnalysisResults {
nwo: string; nwo: string;
status: AnalysisResultStatus; status: AnalysisResultStatus;
results: AnalysisAlert[]; interpretedResults: AnalysisAlert[];
} }
export interface AnalysisAlert { export interface AnalysisAlert {

View File

@@ -73,7 +73,7 @@ const openQueryTextVirtualFile = (queryResult: RemoteQueryResult) => {
}; };
const sumAnalysesResults = (analysesResults: AnalysisResults[]) => const sumAnalysesResults = (analysesResults: AnalysisResults[]) =>
analysesResults.reduce((acc, curr) => acc + curr.results.length, 0); analysesResults.reduce((acc, curr) => acc + curr.interpretedResults.length, 0);
const QueryInfo = (queryResult: RemoteQueryResult) => ( const QueryInfo = (queryResult: RemoteQueryResult) => (
<> <>
@@ -264,13 +264,13 @@ const AnalysesResultsDescription = ({ totalAnalysesResults, totalResults }: { to
const RepoAnalysisResults = (analysisResults: AnalysisResults) => { const RepoAnalysisResults = (analysisResults: AnalysisResults) => {
const title = <> const title = <>
{analysisResults.nwo} {analysisResults.nwo}
<Badge text={analysisResults.results.length.toString()} /> <Badge text={analysisResults.interpretedResults.length.toString()} />
</>; </>;
return ( return (
<CollapsibleItem title={title}> <CollapsibleItem title={title}>
<ul className="vscode-codeql__flat-list" > <ul className="vscode-codeql__flat-list" >
{analysisResults.results.map((r, i) => {analysisResults.interpretedResults.map((r, i) =>
<li key={i}> <li key={i}>
<AnalysisAlertResult alert={r} /> <AnalysisAlertResult alert={r} />
<VerticalSpace size={2} /> <VerticalSpace size={2} />
@@ -297,7 +297,7 @@ const AnalysesResults = ({ analysesResults, totalResults }: { analysesResults: A
totalAnalysesResults={totalAnalysesResults} totalAnalysesResults={totalAnalysesResults}
totalResults={totalResults} /> totalResults={totalResults} />
<ul className="vscode-codeql__flat-list"> <ul className="vscode-codeql__flat-list">
{analysesResults.filter(a => a.results.length > 0).map(r => {analysesResults.filter(a => a.interpretedResults.length > 0).map(r =>
<li key={r.nwo} className="vscode-codeql__analyses-results-list-item"> <li key={r.nwo} className="vscode-codeql__analyses-results-list-item">
<RepoAnalysisResults {...r} /> <RepoAnalysisResults {...r} />
</li>)} </li>)}

View File

@@ -211,14 +211,14 @@ describe('Remote queries and query history manager', function() {
expect(publisher.getCall(0).args[0][0]).to.include({ expect(publisher.getCall(0).args[0][0]).to.include({
nwo: 'github/vscode-codeql', nwo: 'github/vscode-codeql',
status: 'InProgress', status: 'InProgress',
// results: ... avoid checking the results object since it is complex // interpretedResults: ... avoid checking the interpretedResults object since it is complex
}); });
// second time, it has the path to the sarif file. // second time, it has the path to the sarif file.
expect(publisher.getCall(1).args[0][0]).to.include({ expect(publisher.getCall(1).args[0][0]).to.include({
nwo: 'github/vscode-codeql', nwo: 'github/vscode-codeql',
status: 'Completed', status: 'Completed',
// results: ... avoid checking the results object since it is complex // interpretedResults: ... avoid checking the interpretedResults object since it is complex
}); });
expect(publisher).to.have.been.calledTwice; expect(publisher).to.have.been.calledTwice;
@@ -226,7 +226,7 @@ describe('Remote queries and query history manager', function() {
expect(arm.getAnalysesResults(rawQueryHistory[0].queryId)[0]).to.include({ expect(arm.getAnalysesResults(rawQueryHistory[0].queryId)[0]).to.include({
nwo: 'github/vscode-codeql', nwo: 'github/vscode-codeql',
status: 'Completed', status: 'Completed',
// results: ... avoid checking the results object since it is complex // interpretedResults: ... avoid checking the interpretedResults object since it is complex
}); });
publisher.resetHistory(); publisher.resetHistory();
@@ -242,7 +242,7 @@ describe('Remote queries and query history manager', function() {
await arm.downloadAnalysesResults(analysisSummaries, undefined, publisher); await arm.downloadAnalysesResults(analysisSummaries, undefined, publisher);
const trimmed = publisher.getCalls().map(call => call.args[0]).map(args => { const trimmed = publisher.getCalls().map(call => call.args[0]).map(args => {
args.forEach((analysisResult: any) => delete analysisResult.results); args.forEach((analysisResult: any) => delete analysisResult.interpretedResults);
return args; return args;
}); });