private final List<SecurityStandardCategoryStatistics> children;
private long activeRules;
private long totalRules;
+ private boolean hasMoreRules;
public SecurityStandardCategoryStatistics(String category, long vulnerabilities, OptionalInt vulnerabiliyRating, long toReviewSecurityHotspots,
long reviewedSecurityHotspots, Integer securityReviewRating, @Nullable List<SecurityStandardCategoryStatistics> children) {
this.reviewedSecurityHotspots = reviewedSecurityHotspots;
this.securityReviewRating = securityReviewRating;
this.children = children;
+ this.hasMoreRules = false;
}
public String getCategory() {
this.totalRules = totalRules;
return this;
}
+
+ public boolean hasMoreRules() {
+ return hasMoreRules;
+ }
+
+ public void setHasMoreRules(boolean hasMoreRules) {
+ this.hasMoreRules = hasMoreRules;
+ }
}
--- /dev/null
+/*
+ * SonarQube
+ * Copyright (C) 2009-2021 SonarSource SA
+ * mailto:info AT sonarsource DOT com
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+package org.sonar.server.issue.index;
+
+import org.junit.Test;
+
+import static java.util.OptionalInt.empty;
+import static org.assertj.core.api.Assertions.assertThat;
+
+public class SecurityStandardCategoryStatisticsTest {
+
+ @Test
+ public void hasMoreRules_default_false() {
+ SecurityStandardCategoryStatistics standardCategoryStatistics = new SecurityStandardCategoryStatistics(
+ "cat", 0, empty(), 0,
+ 0, 5, null
+ );
+ assertThat(standardCategoryStatistics.hasMoreRules()).isFalse();
+ }
+
+ @Test
+ public void hasMoreRules_is_updatable() {
+ SecurityStandardCategoryStatistics standardCategoryStatistics = new SecurityStandardCategoryStatistics(
+ "cat", 0, empty(), 0,
+ 0, 5, null
+ );
+ standardCategoryStatistics.setHasMoreRules(true);
+ assertThat(standardCategoryStatistics.hasMoreRules()).isTrue();
+ }
+
+}
\ No newline at end of file
repeated CweStatistics distribution = 8;
optional int64 activeRules = 9;
optional int64 totalRules = 10;
+ optional bool hasMoreRules = 11;
}
message CweStatistics {
optional int64 securityReviewRating = 7;
optional int64 activeRules = 8;
optional int64 totalRules = 9;
+ optional bool hasMoreRules = 10;
}