This is an automated email from the ASF dual-hosted git repository.
wuzhiguo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/bigtop-manager.git
The following commit(s) were added to refs/heads/main by this push:
new 7a2ba195 BIGTOP-4349: Add some unit tests for stack extra module (#168)
7a2ba195 is described below
commit 7a2ba195ecf168235d192f205afb80244c1a7a5e
Author: xianrenzw <[email protected]>
AuthorDate: Thu Feb 13 16:32:35 2025 +0800
BIGTOP-4349: Add some unit tests for stack extra module (#168)
---
.../seatunnel/SeaTunnelClientScriptTest.java | 48 ++++++++++++++++
.../seatunnel/SeaTunnelMasterScriptTest.java | 66 +++++++++++++++++++++
.../v1_0_0/seatunnel/SeaTunnelParamsTest.java | 67 ++++++++++++++++++++++
.../seatunnel/SeaTunnelWorkerScriptTest.java | 66 +++++++++++++++++++++
4 files changed, 247 insertions(+)
diff --git
a/bigtop-manager-stack/bigtop-manager-stack-extra/src/test/java/org/apache/bigtop/manager/stack/extra/v1_0_0/seatunnel/SeaTunnelClientScriptTest.java
b/bigtop-manager-stack/bigtop-manager-stack-extra/src/test/java/org/apache/bigtop/manager/stack/extra/v1_0_0/seatunnel/SeaTunnelClientScriptTest.java
new file mode 100644
index 00000000..439f3beb
--- /dev/null
+++
b/bigtop-manager-stack/bigtop-manager-stack-extra/src/test/java/org/apache/bigtop/manager/stack/extra/v1_0_0/seatunnel/SeaTunnelClientScriptTest.java
@@ -0,0 +1,48 @@
+/*
+ * 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
+ *
+ * https://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.bigtop.manager.stack.extra.v1_0_0.seatunnel;
+
+import org.apache.bigtop.manager.stack.core.spi.param.Params;
+
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+
+public class SeaTunnelClientScriptTest {
+
+ private final SeaTunnelClientScript clientScript = new
SeaTunnelClientScript();
+
+ @Test
+ public void testGetComponentName() {
+ assertEquals("seatunnel_client", clientScript.getComponentName());
+ }
+
+ @Test
+ public void testAddParamsNull() {
+ Params params = null;
+ assertThrows(NullPointerException.class, () ->
clientScript.add(params));
+ }
+
+ @Test
+ public void testConfigureParamsNull() {
+ Params params = null;
+ assertThrows(NullPointerException.class, () ->
clientScript.configure(params));
+ }
+}
diff --git
a/bigtop-manager-stack/bigtop-manager-stack-extra/src/test/java/org/apache/bigtop/manager/stack/extra/v1_0_0/seatunnel/SeaTunnelMasterScriptTest.java
b/bigtop-manager-stack/bigtop-manager-stack-extra/src/test/java/org/apache/bigtop/manager/stack/extra/v1_0_0/seatunnel/SeaTunnelMasterScriptTest.java
new file mode 100644
index 00000000..09e1a0ca
--- /dev/null
+++
b/bigtop-manager-stack/bigtop-manager-stack-extra/src/test/java/org/apache/bigtop/manager/stack/extra/v1_0_0/seatunnel/SeaTunnelMasterScriptTest.java
@@ -0,0 +1,66 @@
+/*
+ * 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
+ *
+ * https://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.bigtop.manager.stack.extra.v1_0_0.seatunnel;
+
+import org.apache.bigtop.manager.stack.core.spi.param.Params;
+
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+
+public class SeaTunnelMasterScriptTest {
+
+ private final SeaTunnelMasterScript seaTunnelMasterScript = new
SeaTunnelMasterScript();
+
+ @Test
+ public void testGetComponentName() {
+ assertEquals("seatunnel_master",
seaTunnelMasterScript.getComponentName());
+ }
+
+ @Test
+ public void testAddParamsNull() {
+ Params params = null;
+ assertThrows(NullPointerException.class, () ->
seaTunnelMasterScript.add(params));
+ }
+
+ @Test
+ public void testConfigureParamsNull() {
+ Params params = null;
+ assertThrows(NullPointerException.class, () ->
seaTunnelMasterScript.configure(params));
+ }
+
+ @Test
+ public void testStartParamsNull() {
+ Params params = null;
+ assertThrows(NullPointerException.class, () ->
seaTunnelMasterScript.start(params));
+ }
+
+ @Test
+ public void testStopParamsNull() {
+ Params params = null;
+ assertThrows(NullPointerException.class, () ->
seaTunnelMasterScript.stop(params));
+ }
+
+ @Test
+ public void testStatusParamsNull() {
+ Params params = null;
+ assertThrows(NullPointerException.class, () ->
seaTunnelMasterScript.status(params));
+ }
+}
diff --git
a/bigtop-manager-stack/bigtop-manager-stack-extra/src/test/java/org/apache/bigtop/manager/stack/extra/v1_0_0/seatunnel/SeaTunnelParamsTest.java
b/bigtop-manager-stack/bigtop-manager-stack-extra/src/test/java/org/apache/bigtop/manager/stack/extra/v1_0_0/seatunnel/SeaTunnelParamsTest.java
new file mode 100644
index 00000000..d6194c7d
--- /dev/null
+++
b/bigtop-manager-stack/bigtop-manager-stack-extra/src/test/java/org/apache/bigtop/manager/stack/extra/v1_0_0/seatunnel/SeaTunnelParamsTest.java
@@ -0,0 +1,67 @@
+/*
+ * 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
+ *
+ * https://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.bigtop.manager.stack.extra.v1_0_0.seatunnel;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
+
+public class SeaTunnelParamsTest {
+
+ private SeaTunnelParams seaTunnelParams;
+
+ @BeforeEach
+ public void setUp() {
+ seaTunnelParams = mock(SeaTunnelParams.class);
+ when(seaTunnelParams.stackHome()).thenReturn("/stack");
+ when(seaTunnelParams.getServiceName()).thenCallRealMethod();
+ when(seaTunnelParams.serviceHome()).thenCallRealMethod();
+ when(seaTunnelParams.sparkHome()).thenCallRealMethod();
+ when(seaTunnelParams.flinkHome()).thenCallRealMethod();
+ when(seaTunnelParams.confDir()).thenCallRealMethod();
+ }
+
+ @Test
+ public void testServiceHome() {
+ assertEquals("/stack/seatunnel", seaTunnelParams.serviceHome());
+ }
+
+ @Test
+ public void testConfDir() {
+ assertEquals("/stack/seatunnel/config", seaTunnelParams.confDir());
+ }
+
+ @Test
+ public void testSparkHome() {
+ assertEquals("/stack/spark", seaTunnelParams.sparkHome());
+ }
+
+ @Test
+ public void testFlinkHome() {
+ assertEquals("/stack/flink", seaTunnelParams.flinkHome());
+ }
+
+ @Test
+ public void testGetServiceName() {
+ assertEquals("seatunnel", seaTunnelParams.getServiceName());
+ }
+}
diff --git
a/bigtop-manager-stack/bigtop-manager-stack-extra/src/test/java/org/apache/bigtop/manager/stack/extra/v1_0_0/seatunnel/SeaTunnelWorkerScriptTest.java
b/bigtop-manager-stack/bigtop-manager-stack-extra/src/test/java/org/apache/bigtop/manager/stack/extra/v1_0_0/seatunnel/SeaTunnelWorkerScriptTest.java
new file mode 100644
index 00000000..0cc54c7d
--- /dev/null
+++
b/bigtop-manager-stack/bigtop-manager-stack-extra/src/test/java/org/apache/bigtop/manager/stack/extra/v1_0_0/seatunnel/SeaTunnelWorkerScriptTest.java
@@ -0,0 +1,66 @@
+/*
+ * 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
+ *
+ * https://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.bigtop.manager.stack.extra.v1_0_0.seatunnel;
+
+import org.apache.bigtop.manager.stack.core.spi.param.Params;
+
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+
+public class SeaTunnelWorkerScriptTest {
+
+ private final SeaTunnelWorkerScript seaTunnelWorkerScript = new
SeaTunnelWorkerScript();
+
+ @Test
+ public void testGetComponentName() {
+ assertEquals("seatunnel_worker",
seaTunnelWorkerScript.getComponentName());
+ }
+
+ @Test
+ public void testAddParamsNull() {
+ Params params = null;
+ assertThrows(NullPointerException.class, () ->
seaTunnelWorkerScript.add(params));
+ }
+
+ @Test
+ public void testConfigureParamsNull() {
+ Params params = null;
+ assertThrows(NullPointerException.class, () ->
seaTunnelWorkerScript.configure(params));
+ }
+
+ @Test
+ public void testStartParamsNull() {
+ Params params = null;
+ assertThrows(NullPointerException.class, () ->
seaTunnelWorkerScript.start(params));
+ }
+
+ @Test
+ public void testStopParamsNull() {
+ Params params = null;
+ assertThrows(NullPointerException.class, () ->
seaTunnelWorkerScript.stop(params));
+ }
+
+ @Test
+ public void testStatusParamsNull() {
+ Params params = null;
+ assertThrows(NullPointerException.class, () ->
seaTunnelWorkerScript.status(params));
+ }
+}