aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-core/src
diff options
context:
space:
mode:
authorFabrice Bellingard <bellingard@gmail.com>2012-03-26 17:47:26 +0200
committerFabrice Bellingard <bellingard@gmail.com>2012-03-26 17:49:24 +0200
commite93d3eb4d95d89051eb9ea6f6ab6b8f2f6751487 (patch)
tree0c4ac06e9b2ed161b0f8d20b22f034960b13107e /sonar-core/src
parentc831c3b8e7038c79edb817a440f3a550d80b7a8d (diff)
downloadsonarqube-e93d3eb4d95d89051eb9ea6f6ab6b8f2f6751487.tar.gz
sonarqube-e93d3eb4d95d89051eb9ea6f6ab6b8f2f6751487.zip
SONAR-3352 Fix issue linked to nullable boolean columns
Diffstat (limited to 'sonar-core/src')
-rw-r--r--sonar-core/src/main/java/org/sonar/core/persistence/DatabaseVersion.java2
-rw-r--r--sonar-core/src/main/java/org/sonar/core/review/ReviewDto.java16
-rw-r--r--sonar-core/src/main/resources/org/sonar/core/persistence/rows-derby.sql1
-rw-r--r--sonar-core/src/test/java/org/sonar/core/review/ReviewDaoTest.java12
-rw-r--r--sonar-core/src/test/resources/org/sonar/core/review/ReviewDaoTest/update_null_manual_severity_and_violation-result.xml21
-rw-r--r--sonar-core/src/test/resources/org/sonar/core/review/ReviewDaoTest/update_null_manual_severity_and_violation.xml21
6 files changed, 64 insertions, 9 deletions
diff --git a/sonar-core/src/main/java/org/sonar/core/persistence/DatabaseVersion.java b/sonar-core/src/main/java/org/sonar/core/persistence/DatabaseVersion.java
index 260d2e15f57..af71db19c51 100644
--- a/sonar-core/src/main/java/org/sonar/core/persistence/DatabaseVersion.java
+++ b/sonar-core/src/main/java/org/sonar/core/persistence/DatabaseVersion.java
@@ -32,7 +32,7 @@ import java.util.List;
*/
public class DatabaseVersion implements BatchComponent, ServerComponent {
- public static final int LAST_VERSION = 280;
+ public static final int LAST_VERSION = 281;
public static enum Status {
UP_TO_DATE, REQUIRES_UPGRADE, REQUIRES_DOWNGRADE, FRESH_INSTALL
diff --git a/sonar-core/src/main/java/org/sonar/core/review/ReviewDto.java b/sonar-core/src/main/java/org/sonar/core/review/ReviewDto.java
index b8bd91de2d7..9cebf37201e 100644
--- a/sonar-core/src/main/java/org/sonar/core/review/ReviewDto.java
+++ b/sonar-core/src/main/java/org/sonar/core/review/ReviewDto.java
@@ -52,8 +52,8 @@ public final class ReviewDto {
private Date updatedAt;
private String severity;
private Integer ruleId;
- private Boolean manualViolation;
- private Boolean manualSeverity;
+ private boolean manualViolation;
+ private boolean manualSeverity;
private Integer actionPlanId;
public Long getId() {
@@ -182,30 +182,30 @@ public final class ReviewDto {
return this;
}
- public Boolean getManualViolation() {
+ public boolean getManualViolation() {
return manualViolation;
}
public boolean isManualViolation() {
- return manualViolation == Boolean.TRUE;
+ return manualViolation == true;
}
- public ReviewDto setManualViolation(@Nullable Boolean b) {
+ public ReviewDto setManualViolation(boolean b) {
this.manualViolation = b;
return this;
}
- public Boolean getManualSeverity() {
+ public boolean getManualSeverity() {
return manualSeverity;
}
- public ReviewDto setManualSeverity(@Nullable Boolean b) {
+ public ReviewDto setManualSeverity(boolean b) {
this.manualSeverity = b;
return this;
}
public boolean isManualSeverity() {
- return manualSeverity == Boolean.TRUE;
+ return manualSeverity == true;
}
public Integer getActionPlanId() {
diff --git a/sonar-core/src/main/resources/org/sonar/core/persistence/rows-derby.sql b/sonar-core/src/main/resources/org/sonar/core/persistence/rows-derby.sql
index f84b7198f8e..01697d00a17 100644
--- a/sonar-core/src/main/resources/org/sonar/core/persistence/rows-derby.sql
+++ b/sonar-core/src/main/resources/org/sonar/core/persistence/rows-derby.sql
@@ -180,6 +180,7 @@ INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('261');
INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('262');
INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('263');
INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('280');
+INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('281');
INSERT INTO USERS(ID, LOGIN, NAME, EMAIL, CRYPTED_PASSWORD, SALT, CREATED_AT, UPDATED_AT, REMEMBER_TOKEN, REMEMBER_TOKEN_EXPIRES_AT) VALUES (1, 'admin', 'Administrator', '', 'a373a0e667abb2604c1fd571eb4ad47fe8cc0878', '48bc4b0d93179b5103fd3885ea9119498e9d161b', '2011-09-26 22:27:48.0', '2011-09-26 22:27:48.0', null, null);
ALTER TABLE USERS ALTER COLUMN ID RESTART WITH 2;
diff --git a/sonar-core/src/test/java/org/sonar/core/review/ReviewDaoTest.java b/sonar-core/src/test/java/org/sonar/core/review/ReviewDaoTest.java
index 155ba0f3d76..1c5f62fd852 100644
--- a/sonar-core/src/test/java/org/sonar/core/review/ReviewDaoTest.java
+++ b/sonar-core/src/test/java/org/sonar/core/review/ReviewDaoTest.java
@@ -98,4 +98,16 @@ public class ReviewDaoTest extends DaoTestCase {
checkTables("update", "reviews");
}
+
+ @Test
+ public void updateWithNullManualSeverityAndViolation() {
+ setupData("update_null_manual_severity_and_violation");
+ Collection<ReviewDto> reviews = dao.selectOpenByResourceId(400L);
+ ReviewDto review = reviews.iterator().next();
+ review.setLine(12345);
+
+ dao.update(reviews);
+
+ checkTables("update_null_manual_severity_and_violation", "reviews");
+ }
}
diff --git a/sonar-core/src/test/resources/org/sonar/core/review/ReviewDaoTest/update_null_manual_severity_and_violation-result.xml b/sonar-core/src/test/resources/org/sonar/core/review/ReviewDaoTest/update_null_manual_severity_and_violation-result.xml
new file mode 100644
index 00000000000..f9231700484
--- /dev/null
+++ b/sonar-core/src/test/resources/org/sonar/core/review/ReviewDaoTest/update_null_manual_severity_and_violation-result.xml
@@ -0,0 +1,21 @@
+<dataset>
+
+ <reviews
+ id="100"
+ status="OPEN"
+ rule_failure_permanent_id="100"
+ resolution="RESOLVE"
+ created_at="[null]"
+ updated_at="[null]"
+ project_id="20"
+ resource_line="12345"
+ severity="BLOCKER"
+ user_id="300"
+ assignee_id="[null]"
+ title="[null]"
+ resource_id="400"
+ rule_id="500"
+ manual_violation="[false]"
+ manual_severity="[false]"/>
+
+</dataset>
diff --git a/sonar-core/src/test/resources/org/sonar/core/review/ReviewDaoTest/update_null_manual_severity_and_violation.xml b/sonar-core/src/test/resources/org/sonar/core/review/ReviewDaoTest/update_null_manual_severity_and_violation.xml
new file mode 100644
index 00000000000..f9445f75b91
--- /dev/null
+++ b/sonar-core/src/test/resources/org/sonar/core/review/ReviewDaoTest/update_null_manual_severity_and_violation.xml
@@ -0,0 +1,21 @@
+<dataset>
+
+ <reviews
+ id="100"
+ status="OPEN"
+ rule_failure_permanent_id="100"
+ resolution="RESOLVE"
+ created_at="[null]"
+ updated_at="[null]"
+ project_id="20"
+ resource_line="200"
+ severity="BLOCKER"
+ user_id="300"
+ assignee_id="[null]"
+ title="[null]"
+ resource_id="400"
+ rule_id="500"
+ manual_violation="[null]"
+ manual_severity="[null]"/>
+
+</dataset>