From 4d21fe6af48f3c3be1512194e81738047b6c910e Mon Sep 17 00:00:00 2001 From: Kilian B <60846047+knowbased@users.noreply.github.com> Date: Tue, 17 Sep 2024 16:10:04 +0200 Subject: [PATCH] fix: multiple period analyses not working --- .../GitMetricExporter.class.st | 27 ++++++++++++------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/src/GitLabHealth-Model-Analysis/GitMetricExporter.class.st b/src/GitLabHealth-Model-Analysis/GitMetricExporter.class.st index 16703a2..9825319 100644 --- a/src/GitLabHealth-Model-Analysis/GitMetricExporter.class.st +++ b/src/GitLabHealth-Model-Analysis/GitMetricExporter.class.st @@ -267,17 +267,21 @@ GitMetricExporter >> exportUserAnalysesInCSV [ | exportBrowserModel groupedByOver group groupOver groupByName periods csvMetrics file | exportBrowserModel := MiExportModel new. groupedByOver := self userAnalyses groupedBy: #over. + groupedByOver associations do: [ :groupAssociation | group := groupAssociation value. groupOver := groupAssociation key. + groupByName := group groupedBy: #username. exportBrowserModel entitiesList: groupByName. exportBrowserModel removeColumnForQueryNamed: #Type. exportBrowserModel removeColumnForQueryNamed: #Name. + exportBrowserModel addColumnForQuery: [ :groupAnalyses | (groupAnalyses at: 1) username ] withName: #'User name'. + periods := (group groupedBy: #period) keys. periods do: [ :period | csvMetrics := self @@ -287,7 +291,10 @@ GitMetricExporter >> exportUserAnalysesInCSV [ exportBrowserModel addColumnForQuery: association value withName: association key ] ]. + + file := self constructFilePath: groupOver. + file writeStreamDo: [ :aStream | aStream << 'sep=,'; @@ -333,16 +340,17 @@ GitMetricExporter >> findProjectsOfUser: aCollection [ { #category : #analysis } GitMetricExporter >> generateAnalysesOver: aDateWeekMonthOrYear [ - | userAnalyses projectAnalyses | + analyses := OrderedCollection new. runningPeriods do: [ :period | - userAnalyses := self - generateUsersAnalysesDuringPeriod: period - over: aDateWeekMonthOrYear. - projectAnalyses := self - generateProjectsAnalysesDuringPeriod: period - over: aDateWeekMonthOrYear ]. + analyses addAll: (self + generateUsersAnalysesDuringPeriod: period + over: aDateWeekMonthOrYear). + + analyses addAll: (self + generateProjectsAnalysesDuringPeriod: period + over: aDateWeekMonthOrYear) ]. - ^ analyses := userAnalyses, projectAnalyses. + ^ analyses ] { #category : #analysis } @@ -446,8 +454,7 @@ GitMetricExporter >> initialize [ ClosedMergeRequestMetric. MergedMergeRequestMetric. SelfMergedUnderAMinuteMergeRequestMetric. - ClosedTicketsMetric . - JiraTimeMRTimeDifferenceMetric } + ClosedTicketsMetric. JiraTimeMRTimeDifferenceMetric } ] { #category : #accessing }