aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/sonar-core-plugin
diff options
context:
space:
mode:
authorSimon Brandhof <simon.brandhof@sonarsource.com>2014-10-03 08:40:53 +0200
committerSimon Brandhof <simon.brandhof@sonarsource.com>2014-10-03 08:40:53 +0200
commitab3a0bc0746a03e3e52860c3e8571073aa06bce5 (patch)
tree33a79b7c6f40d5e0e1feb2beca35bb7391fce2fc /plugins/sonar-core-plugin
parentddb4d8c4adcbf86be6b2c70e685893963e9cddbb (diff)
parentee925d0a8d31556a37f98b6738e6f767b489e288 (diff)
downloadsonarqube-ab3a0bc0746a03e3e52860c3e8571073aa06bce5.tar.gz
sonarqube-ab3a0bc0746a03e3e52860c3e8571073aa06bce5.zip
Merge remote-tracking branch 'remotes/origin/branch-4.5'
Conflicts: plugins/sonar-xoo-plugin/pom.xml sonar-plugin-api/pom.xml sonar-plugin-api/src/main/java/org/sonar/api/config/Settings.java
Diffstat (limited to 'plugins/sonar-core-plugin')
-rw-r--r--plugins/sonar-core-plugin/src/main/resources/org/sonar/plugins/core/widgets/issues/false_positive_issues.html.erb3
-rw-r--r--plugins/sonar-core-plugin/src/main/resources/org/sonar/plugins/core/widgets/size.html.erb4
-rw-r--r--plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/AbstractChartTest.java99
-rw-r--r--plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/DistributionAreaChartTest.java1
-rw-r--r--plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/DistributionBarChartTest.java1
-rw-r--r--plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/XradarChartTest.java1
6 files changed, 102 insertions, 7 deletions
diff --git a/plugins/sonar-core-plugin/src/main/resources/org/sonar/plugins/core/widgets/issues/false_positive_issues.html.erb b/plugins/sonar-core-plugin/src/main/resources/org/sonar/plugins/core/widgets/issues/false_positive_issues.html.erb
index f5f6a80b018..cf6c4661fcc 100644
--- a/plugins/sonar-core-plugin/src/main/resources/org/sonar/plugins/core/widgets/issues/false_positive_issues.html.erb
+++ b/plugins/sonar-core-plugin/src/main/resources/org/sonar/plugins/core/widgets/issues/false_positive_issues.html.erb
@@ -3,13 +3,12 @@
search_options = {}
search_options['componentRoots'] = @project.key
- search_options['resolved'] = 'true'
search_options['resolutions'] = 'FALSE-POSITIVE'
title = message('widget.false_positive_reviews.name')
%>
<%= render :partial => 'project/widgets/issues/issues_list_widget',
- :locals => {:search_options => search_options, :title => title,
+ :locals => {:search_options => search_options, :title => title,
:widget_id => widget.id.to_s, :widget_properties => widget_properties} %>
<% end %>
diff --git a/plugins/sonar-core-plugin/src/main/resources/org/sonar/plugins/core/widgets/size.html.erb b/plugins/sonar-core-plugin/src/main/resources/org/sonar/plugins/core/widgets/size.html.erb
index e68012f744b..cda33b0714f 100644
--- a/plugins/sonar-core-plugin/src/main/resources/org/sonar/plugins/core/widgets/size.html.erb
+++ b/plugins/sonar-core-plugin/src/main/resources/org/sonar/plugins/core/widgets/size.html.erb
@@ -110,7 +110,7 @@
<%= format_measure(generated_ncloc, :url => url_for_drilldown(generated_ncloc)) -%>
<span class="nowrap">
<%= dashboard_configuration.selected_period? ? format_variation(generated_ncloc) : trend_icon(generated_ncloc) %>
- <span class="widget-label"><%= message('metric.generated.name.suffix') -%></span>
+ <span class="widget-label"><%= message('metric.generated_ncloc.name.suffix') -%></span>
</span>
</p>
<% end %>
@@ -124,7 +124,7 @@
</p>
<% if generated_lines && generated_lines.value>0 %>
- <p>incl. <%= format_measure(generated_lines, :suffix => message('metric.generated.name.suffix'), :url => url_for_drilldown(generated_lines)) -%> <%= dashboard_configuration.selected_period? ? format_variation(generated_lines) : trend_icon(generated_lines) -%></p>
+ <p>incl. <%= format_measure(generated_lines, :suffix => ' ' + message('metric.generated_lines.name.suffix'), :url => url_for_drilldown(generated_lines)) -%> <%= dashboard_configuration.selected_period? ? format_variation(generated_lines) : trend_icon(generated_lines) -%></p>
<% end %>
<% if projects %>
diff --git a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/AbstractChartTest.java b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/AbstractChartTest.java
new file mode 100644
index 00000000000..31223db492f
--- /dev/null
+++ b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/AbstractChartTest.java
@@ -0,0 +1,99 @@
+/*
+ * SonarQube, open source software quality management tool.
+ * Copyright (C) 2008-2014 SonarSource
+ * mailto:contact AT sonarsource DOT com
+ *
+ * SonarQube 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.
+ *
+ * SonarQube 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.plugins.core.charts;
+
+import org.apache.commons.io.FileUtils;
+import org.jfree.chart.ChartUtilities;
+import org.jfree.ui.ApplicationFrame;
+import org.jfree.ui.RefineryUtilities;
+
+import javax.swing.JPanel;
+
+import java.awt.Dimension;
+import java.awt.Graphics;
+import java.awt.image.BufferedImage;
+import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import static org.junit.Assert.assertTrue;
+
+public abstract class AbstractChartTest {
+ protected void assertChartSizeGreaterThan(BufferedImage img, int size) throws IOException {
+ ByteArrayOutputStream output = new ByteArrayOutputStream();
+ ChartUtilities.writeBufferedImageAsPNG(output, img);
+ assertTrue("PNG size in bits=" + output.size(), output.size() > size);
+ }
+
+ protected void assertChartSizeLesserThan(BufferedImage img, int size) throws IOException {
+ ByteArrayOutputStream output = new ByteArrayOutputStream();
+ ChartUtilities.writeBufferedImageAsPNG(output, img);
+ assertTrue("PNG size in bits=" + output.size(), output.size() < size);
+ }
+
+ protected void saveChart(BufferedImage img, String name) throws IOException {
+ File target = new File("target/tmp-chart", name);
+ FileUtils.forceMkdir(target.getParentFile());
+ ByteArrayOutputStream imgOutput = new ByteArrayOutputStream();
+ ChartUtilities.writeBufferedImageAsPNG(imgOutput, img);
+ OutputStream out = new FileOutputStream(target);
+ out.write(imgOutput.toByteArray());
+ out.close();
+
+ }
+
+ protected static void displayTestPanel(BufferedImage image) {
+ ApplicationFrame frame = new ApplicationFrame("testframe");
+ BufferedPanel imgPanel = new BufferedPanel(image);
+ frame.setContentPane(imgPanel);
+ frame.pack();
+ RefineryUtilities.centerFrameOnScreen(frame);
+ frame.setVisible(true);
+ }
+
+ protected static Date stringToDate(String sDate) throws ParseException {
+ SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yy hh'h'mm");
+ return sdf.parse(sDate);
+ }
+
+ private static class BufferedPanel extends JPanel {
+ private final BufferedImage chartImage;
+
+ public BufferedPanel(BufferedImage chartImage) {
+ this.chartImage = chartImage;
+ }
+
+ @Override
+ protected void paintComponent(Graphics graphics) {
+ super.paintComponent(graphics);
+ graphics.drawImage(chartImage, 0, 0, null);
+ }
+
+ @Override
+ public Dimension getPreferredSize() {
+ return new Dimension(chartImage.getWidth(), chartImage.getHeight());
+ }
+ }
+}
diff --git a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/DistributionAreaChartTest.java b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/DistributionAreaChartTest.java
index 6ae7fed839a..6a535abad16 100644
--- a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/DistributionAreaChartTest.java
+++ b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/DistributionAreaChartTest.java
@@ -20,7 +20,6 @@
package org.sonar.plugins.core.charts;
import org.junit.Test;
-import org.sonar.api.charts.AbstractChartTest;
import org.sonar.api.charts.ChartParameters;
import java.awt.image.BufferedImage;
diff --git a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/DistributionBarChartTest.java b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/DistributionBarChartTest.java
index 4cf1e46dece..a0937082942 100644
--- a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/DistributionBarChartTest.java
+++ b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/DistributionBarChartTest.java
@@ -20,7 +20,6 @@
package org.sonar.plugins.core.charts;
import org.junit.Test;
-import org.sonar.api.charts.AbstractChartTest;
import org.sonar.api.charts.ChartParameters;
import java.awt.image.BufferedImage;
diff --git a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/XradarChartTest.java b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/XradarChartTest.java
index 39a304c2e67..d48d049c440 100644
--- a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/XradarChartTest.java
+++ b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/charts/XradarChartTest.java
@@ -20,7 +20,6 @@
package org.sonar.plugins.core.charts;
import org.junit.Test;
-import org.sonar.api.charts.AbstractChartTest;
import org.sonar.api.charts.ChartParameters;
import java.awt.image.BufferedImage;