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

hazendaz / jmockit1 / 496

15 Nov 2025 05:33PM UTC coverage: 72.192% (-0.008%) from 72.2%
496

push

github

web-flow
Merge pull request #412 from hazendaz/renovate/major-spring-core

Update spring core to v7 (major)

5677 of 8360 branches covered (67.91%)

Branch coverage included in aggregate %.

11922 of 16018 relevant lines covered (74.43%)

0.74 hits per line

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

0.0
/main/src/main/java/mockit/coverage/data/FileCoverageData.java
1
/*
2
 * MIT License
3
 * Copyright (c) 2006-2025 JMockit developers
4
 * See LICENSE file for full license text.
5
 */
6
package mockit.coverage.data;
7

8
import edu.umd.cs.findbugs.annotations.NonNull;
9
import edu.umd.cs.findbugs.annotations.Nullable;
10

11
import java.io.Serializable;
12

13
import mockit.coverage.CoveragePercentage;
14
import mockit.coverage.TestRun;
15
import mockit.coverage.dataItems.PerFileDataCoverage;
16
import mockit.coverage.lines.PerFileLineCoverage;
17

18
import org.checkerframework.checker.index.qual.NonNegative;
19

20
/**
21
 * Coverage data gathered for the lines, branching points, and fields of a single source file.
22
 */
23
public final class FileCoverageData implements Serializable {
24
    private static final long serialVersionUID = 3508572808457541012L;
25

26
    @NonNull
27
    private static final PerFileLineCoverage NO_LINE_INFO = new PerFileLineCoverage();
×
28
    @NonNull
29
    private static final PerFileDataCoverage NO_DATA_INFO = new PerFileDataCoverage();
×
30

31
    @NonNull
32
    public PerFileLineCoverage lineCoverageInfo;
33
    @NonNull
34
    public PerFileDataCoverage dataCoverageInfo;
35

36
    // Used for fast indexed access.
37
    @NonNegative
38
    public final int index;
39

40
    // Used for output styling in the HTML report.
41
    @Nullable
42
    public String kindOfTopLevelType;
43

44
    // Used to track the last time the ".class" file was modified, to decide if merging can be done.
45
    @NonNegative
46
    long lastModified;
47

48
    private final boolean loadedAfterTestCompletion;
49

50
    FileCoverageData(@NonNegative int index, @Nullable String kindOfTopLevelType) {
×
51
        this.index = index;
×
52
        this.kindOfTopLevelType = kindOfTopLevelType;
×
53
        lineCoverageInfo = new PerFileLineCoverage();
×
54
        dataCoverageInfo = new PerFileDataCoverage();
×
55
        loadedAfterTestCompletion = TestRun.isTerminated();
×
56
    }
×
57

58
    boolean wasLoadedAfterTestCompletion() {
59
        return loadedAfterTestCompletion;
×
60
    }
61

62
    @NonNull
63
    public PerFileLineCoverage getLineCoverageData() {
64
        return lineCoverageInfo;
×
65
    }
66

67
    @NonNegative
68
    public int getTotalItems() {
69
        return lineCoverageInfo.getTotalItems() + dataCoverageInfo.getTotalItems();
×
70
    }
71

72
    @NonNegative
73
    public int getCoveredItems() {
74
        return lineCoverageInfo.getCoveredItems() + dataCoverageInfo.getCoveredItems();
×
75
    }
76

77
    public int getCoveragePercentage() {
78
        int totalItems = getTotalItems();
×
79
        int coveredItems = getCoveredItems();
×
80
        return CoveragePercentage.calculate(coveredItems, totalItems);
×
81
    }
82

83
    void mergeWithDataFromPreviousTestRun(@NonNull FileCoverageData previousInfo) {
84
        if (lineCoverageInfo == NO_LINE_INFO) {
×
85
            lineCoverageInfo = previousInfo.lineCoverageInfo;
×
86
        } else if (previousInfo.lineCoverageInfo != NO_LINE_INFO) {
×
87
            lineCoverageInfo.mergeInformation(previousInfo.lineCoverageInfo);
×
88
        }
89

90
        if (dataCoverageInfo == NO_DATA_INFO) {
×
91
            dataCoverageInfo = previousInfo.dataCoverageInfo;
×
92
        } else if (previousInfo.dataCoverageInfo != NO_DATA_INFO) {
×
93
            dataCoverageInfo.mergeInformation(previousInfo.dataCoverageInfo);
×
94
        }
95
    }
×
96
}
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