• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

moosetechnology / GitProjectHealth / 13789872885

11 Mar 2025 01:58PM UTC coverage: 65.207% (+0.2%) from 64.983%
13789872885

Pull #140

github

web-flow
Merge eb5f3f3e9 into bb4608a0e
Pull Request #140: Add self merged merge request for project level

133 of 149 new or added lines in 4 files covered. (89.26%)

11166 of 17124 relevant lines covered (65.21%)

0.65 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

83.33
/src/GitLabHealth-Model-Analysis/SelfMergedUnderAMinuteMergeRequestProjectMetric.class.st
1
Class {
2
        #name : #SelfMergedUnderAMinuteMergeRequestProjectMetric,
3
        #superclass : #ProjectMetric,
4
        #category : #'GitLabHealth-Model-Analysis'
5
}
6

7
{ #category : #calculating }
8
SelfMergedUnderAMinuteMergeRequestProjectMetric >> calculate [
1✔
9

1✔
10
        | groupedByDate gitAnalyzer mergedMergeRequest noVerificationMergeRequests |
1✔
11
        projectMergeRequests ifNil: [ self load ].
1✔
12
        groupedByDate := self setupGroupedDate.
1✔
13

1✔
14
        gitAnalyzer := GitAnalyzer new.
1✔
15

1✔
16
        mergedMergeRequest := projectMergeRequests select: [ :mr |
1✔
17
                                      mr merged_at isNotNil ].
1✔
18

1✔
19
        noVerificationMergeRequests := mergedMergeRequest select: [
1✔
20
                                               :userMergeRequest |
1✔
21
                                               | validation |
1✔
22
                                               validation := gitAnalyzer
1✔
23
                                                                     analyseMergeResquestValidation:
1✔
24
                                                                     userMergeRequest.
1✔
25
                        
1✔
26
                                               userMergeRequest merge_user
1✔
27
                                               = userMergeRequest author and: [
1✔
28
                                                       (validation at: #duration)
1✔
29
                                                       < 1 minutes ] ].
1✔
30

1✔
31
        noVerificationMergeRequests do: [ :userMergeRequest |
1✔
32
                | dateOver |
1✔
33
                dateOver := self transformDate: userMergeRequest created_at to: over.
1✔
34
                groupedByDate
1✔
35
                        at: dateOver printString
1✔
36
                        ifPresent: [ :value | value add: userMergeRequest ] ].
1✔
37

1✔
38
        groupedByDate := groupedByDate collect: [ :group | group size ].
1✔
39

1✔
40
        ^ groupedByDate average asFloat
1✔
41
]
1✔
42

43
{ #category : #accessing }
NEW
44
SelfMergedUnderAMinuteMergeRequestProjectMetric >> description [
×
NEW
45

×
NEW
46
        ^ 'Merged merge requests merged by its author under a minute after creation'
×
NEW
47
]
×
48

49
{ #category : #loading }
50
SelfMergedUnderAMinuteMergeRequestProjectMetric >> load [
1✔
51

1✔
52
        projectMergeRequests := self
1✔
53
                                        loadMergeRequestsSince: (period at: #since)
1✔
54
                                        until: (period at: #until)
1✔
55
]
1✔
56

57
{ #category : #accessing }
NEW
58
SelfMergedUnderAMinuteMergeRequestProjectMetric >> name [
×
NEW
59

×
NEW
60
        ^ 'ProjectSelfMergedUnderAMinuteMergeRequest'
×
NEW
61
]
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc