You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by yu...@apache.org on 2017/08/01 07:27:13 UTC
[48/50] [abbrv] incubator-rocketmq git commit: [ROCKETMQ-244]
Message#putUserProperty uses == for String comparison.
[ROCKETMQ-244] Message#putUserProperty uses == for String comparison.
Signed-off-by: shroman <rs...@yahoo.com>
Project: http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/commit/118bdec9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/tree/118bdec9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/diff/118bdec9
Branch: refs/heads/master
Commit: 118bdec96005ce695295bcf0d9082e0230e69bf7
Parents: 3672f70
Author: shroman <rs...@yahoo.com>
Authored: Fri Jul 14 13:51:36 2017 +0900
Committer: shroman <rs...@yahoo.com>
Committed: Fri Jul 14 13:51:36 2017 +0900
----------------------------------------------------------------------
.../apache/rocketmq/common/message/Message.java | 6 +-
.../rocketmq/common/message/MessageTest.java | 68 ++++++++++++++++++++
2 files changed, 72 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/118bdec9/common/src/main/java/org/apache/rocketmq/common/message/Message.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/org/apache/rocketmq/common/message/Message.java b/common/src/main/java/org/apache/rocketmq/common/message/Message.java
index 2c81f5c..15ba214 100644
--- a/common/src/main/java/org/apache/rocketmq/common/message/Message.java
+++ b/common/src/main/java/org/apache/rocketmq/common/message/Message.java
@@ -81,12 +81,14 @@ public class Message implements Serializable {
throw new RuntimeException(String.format(
"The Property<%s> is used by system, input another please", name));
}
- if (value == null || value == "" || value.trim() == ""
- || name == null || name == "" || name.trim() == "") {
+
+ if (value == null || value.trim().isEmpty()
+ || name == null || name.trim().isEmpty()) {
throw new IllegalArgumentException(
"The name or value of property can not be null or blank string!"
);
}
+
this.putProperty(name, value);
}
http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/118bdec9/common/src/test/java/org/apache/rocketmq/common/message/MessageTest.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/rocketmq/common/message/MessageTest.java b/common/src/test/java/org/apache/rocketmq/common/message/MessageTest.java
new file mode 100644
index 0000000..c867360
--- /dev/null
+++ b/common/src/test/java/org/apache/rocketmq/common/message/MessageTest.java
@@ -0,0 +1,68 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.rocketmq.common.message;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+import static org.apache.rocketmq.common.message.MessageConst.PROPERTY_TRACE_SWITCH;
+import static org.junit.Assert.*;
+
+public class MessageTest {
+ @Test(expected = RuntimeException.class)
+ public void putUserPropertyWithRuntimeException() throws Exception {
+ Message m = new Message();
+
+ m.putUserProperty(PROPERTY_TRACE_SWITCH, "");
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void putUserNullValuePropertyWithException() throws Exception {
+ Message m = new Message();
+
+ m.putUserProperty("prop1", null);
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void putUserEmptyValuePropertyWithException() throws Exception {
+ Message m = new Message();
+
+ m.putUserProperty("prop1", " ");
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void putUserNullNamePropertyWithException() throws Exception {
+ Message m = new Message();
+
+ m.putUserProperty(null, "val1");
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void putUserEmptyNamePropertyWithException() throws Exception {
+ Message m = new Message();
+
+ m.putUserProperty(" ", "val1");
+ }
+
+ @Test
+ public void putUserProperty() throws Exception {
+ Message m = new Message();
+
+ m.putUserProperty("prop1", "val1");
+ Assert.assertEquals("val1", m.getUserProperty("prop1"));
+ }
+}