Browse Source

added check for originator source for null

pull/11121/head
IrynaMatveieva 2 years ago
parent
commit
feb51793b1
  1. 12
      rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/transform/TbChangeOriginatorNode.java
  2. 9
      rule-engine/rule-engine-components/src/test/java/org/thingsboard/rule/engine/transform/TbChangeOriginatorNodeTest.java

12
rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/transform/TbChangeOriginatorNode.java

@ -103,11 +103,13 @@ public class TbChangeOriginatorNode extends TbAbstractTransformNode<TbChangeOrig
} }
private void validateConfig(TbChangeOriginatorNodeConfiguration conf) { private void validateConfig(TbChangeOriginatorNodeConfiguration conf) {
if (conf.getOriginatorSource().equals(RELATED)) { if (conf.getOriginatorSource() == null) {
if (conf.getRelationsQuery() == null) { log.debug("Originator source should be specified.");
log.debug("Relations query should be specified if 'Related entity' source is selected."); throw new IllegalArgumentException("Originator source should be specified.");
throw new IllegalArgumentException("Relations query should be specified if 'Related entity' source is selected."); }
} if (conf.getOriginatorSource().equals(RELATED) && conf.getRelationsQuery() == null) {
log.debug("Relations query should be specified if 'Related entity' source is selected.");
throw new IllegalArgumentException("Relations query should be specified if 'Related entity' source is selected.");
} }
if (conf.getOriginatorSource().equals(ENTITY)) { if (conf.getOriginatorSource().equals(ENTITY)) {
if (conf.getEntityType() == null) { if (conf.getEntityType() == null) {

9
rule-engine/rule-engine-components/src/test/java/org/thingsboard/rule/engine/transform/TbChangeOriginatorNodeTest.java

@ -119,6 +119,15 @@ public class TbChangeOriginatorNodeTest {
assertThat(config.getEntityNamePattern()).isNull(); assertThat(config.getEntityNamePattern()).isNull();
} }
@Test
public void givenRelatedSourceIsNull_whenInit_thenThrowsException() {
config.setOriginatorSource(null);
assertThatThrownBy(() -> node.init(ctxMock, new TbNodeConfiguration(JacksonUtil.valueToTree(config))))
.isInstanceOf(IllegalArgumentException.class)
.hasMessage("Originator source should be specified.");
}
@Test @Test
public void givenRelatedSourceAndRelatedQueryIsNull_whenInit_thenThrowsException() { public void givenRelatedSourceAndRelatedQueryIsNull_whenInit_thenThrowsException() {
config.setOriginatorSource(RELATED); config.setOriginatorSource(RELATED);

Loading…
Cancel
Save