From ce6397bbe73fc5da65d5363ddab573d7fd7843cd Mon Sep 17 00:00:00 2001 From: JiriOndrusek Date: Wed, 9 Mar 2022 10:00:10 +0100 Subject: [PATCH] CAMEL-17768 Camel-cm-sms: Handle changed error message correctly --- .../main/java/org/apache/camel/component/cm/CMConstants.java | 1 + .../org/apache/camel/component/cm/CMSenderOneMessageImpl.java | 2 +- .../test/java/org/apache/camel/component/cm/test/CMTest.java | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/components/camel-cm-sms/src/main/java/org/apache/camel/component/cm/CMConstants.java b/components/camel-cm-sms/src/main/java/org/apache/camel/component/cm/CMConstants.java index 26b3da0622c90..822ee1dfcd3df 100644 --- a/components/camel-cm-sms/src/main/java/org/apache/camel/component/cm/CMConstants.java +++ b/components/camel-cm-sms/src/main/java/org/apache/camel/component/cm/CMConstants.java @@ -30,6 +30,7 @@ public interface CMConstants { // status code 200 - Error substrings - check it contains. String ERROR_UNKNOWN = "Unknown error"; String ERROR_NO_ACCOUNT = "No account found"; + String ERROR_NO_USER = "No or incorrect User node found"; String ERROR_INSUFICIENT_BALANCE = "Insufficient balance"; String ERROR_UNROUTABLE_MESSAGE = "Message is unroutable"; String ERROR_INVALID_PRODUCT_TOKEN = "Invalid product token"; diff --git a/components/camel-cm-sms/src/main/java/org/apache/camel/component/cm/CMSenderOneMessageImpl.java b/components/camel-cm-sms/src/main/java/org/apache/camel/component/cm/CMSenderOneMessageImpl.java index e3a19e00b571e..7fe25e2d86283 100644 --- a/components/camel-cm-sms/src/main/java/org/apache/camel/component/cm/CMSenderOneMessageImpl.java +++ b/components/camel-cm-sms/src/main/java/org/apache/camel/component/cm/CMSenderOneMessageImpl.java @@ -228,7 +228,7 @@ private void doHttpPost(final String urlString, final String requestString) { if (line.contains(CMConstants.ERROR_UNKNOWN)) { throw new UnknownErrorException(); - } else if (line.contains(CMConstants.ERROR_NO_ACCOUNT)) { + } else if (line.contains(CMConstants.ERROR_NO_ACCOUNT) || line.contains(CMConstants.ERROR_NO_USER)) { throw new NoAccountFoundForProductTokenException(); } else if (line.contains(CMConstants.ERROR_INSUFICIENT_BALANCE)) { throw new InsufficientBalanceException(); diff --git a/components/camel-cm-sms/src/test/java/org/apache/camel/component/cm/test/CMTest.java b/components/camel-cm-sms/src/test/java/org/apache/camel/component/cm/test/CMTest.java index 26e4102e4bca1..4706e44beed84 100644 --- a/components/camel-cm-sms/src/test/java/org/apache/camel/component/cm/test/CMTest.java +++ b/components/camel-cm-sms/src/test/java/org/apache/camel/component/cm/test/CMTest.java @@ -146,7 +146,7 @@ public void testAsPartOfARoute() { // Body final SMSMessage smsMessage = new SMSMessage(generateIdAsString(), generateUnicodeMessage(), validNumber, null); - assertThrows(CMResponseException.class, + assertThrows(NoAccountFoundForProductTokenException.class, () -> cmProxy.send(smsMessage)); }