Skip to content

Commit cc1f475

Browse files
committed
[SPARK-53703] Improve unit tests to be neutral from Spark versions
### What changes were proposed in this pull request? This PR aims to improve unit tests to be neutral from Spark versions. ### Why are the changes needed? It's important to become robust for (1) the future development and (2) the downstream fork's version changes. ### Does this PR introduce _any_ user-facing change? No. This is a test-only change. ### How was this patch tested? Pass the CIs. ### Was this patch authored or co-authored using generative AI tooling? No. Closes apache#339 from dongjoon-hyun/SPARK-53703. Authored-by: Dongjoon Hyun <[email protected]> Signed-off-by: Dongjoon Hyun <[email protected]>
1 parent 4222d4a commit cc1f475

File tree

2 files changed

+18
-26
lines changed

2 files changed

+18
-26
lines changed

spark-operator-api/src/test/resources/spark-job-with-driver-service-ingress.json

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,6 @@
11
{
2-
"mainClass": "org.apache.spark.examples.SparkPi",
3-
"jars": "local:///opt/spark/examples/jars/spark-examples.jar",
4-
"sparkConf": {
5-
"spark.kubernetes.driver.master": "local[10]",
6-
"spark.kubernetes.driver.request.cores": "5",
7-
"spark.kubernetes.driver.limit.cores": "5",
8-
"spark.kubernetes.authenticate.driver.serviceAccountName": "spark",
9-
"spark.kubernetes.container.image": "apache/spark:4.0.0"
10-
},
112
"runtimeVersions": {
12-
"sparkVersion": "4.0.0"
3+
"sparkVersion": "test"
134
},
145
"driverServiceIngressList": [
156
{
@@ -56,4 +47,4 @@
5647
}
5748
}
5849
]
59-
}
50+
}

spark-submission-worker/src/test/java/org/apache/spark/k8s/operator/SparkClusterResourceSpecTest.java

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ class SparkClusterResourceSpecTest {
5858
RuntimeVersions runtimeVersions = new RuntimeVersions();
5959
SparkConf sparkConf = new SparkConf().set("spark.kubernetes.namespace", "other-namespace");
6060
ClusterTolerations clusterTolerations = new ClusterTolerations();
61+
static final String VERSION = "dev";
6162

6263
@BeforeEach
6364
void setUp() {
@@ -76,7 +77,7 @@ void setUp() {
7677
when(clusterSpec.getMasterSpec()).thenReturn(masterSpec);
7778
when(clusterSpec.getWorkerSpec()).thenReturn(workerSpec);
7879
when(clusterSpec.getRuntimeVersions()).thenReturn(runtimeVersions);
79-
runtimeVersions.setSparkVersion("4.0.0");
80+
runtimeVersions.setSparkVersion(VERSION);
8081
when(masterSpec.getStatefulSetSpec()).thenReturn(statefulSetSpec);
8182
when(masterSpec.getStatefulSetMetadata()).thenReturn(objectMeta);
8283
when(masterSpec.getServiceSpec()).thenReturn(serviceSpec);
@@ -92,19 +93,19 @@ void testMasterService() {
9293
Service service1 = new SparkClusterResourceSpec(cluster, new SparkConf()).getMasterService();
9394
assertEquals("my-namespace", service1.getMetadata().getNamespace());
9495
assertEquals("cluster-name-master-svc", service1.getMetadata().getName());
95-
assertEquals("4.0.0", service1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
96+
assertEquals(VERSION, service1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
9697

9798
Service service2 = new SparkClusterResourceSpec(cluster, sparkConf).getMasterService();
9899
assertEquals("other-namespace", service2.getMetadata().getNamespace());
99-
assertEquals("4.0.0", service1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
100+
assertEquals(VERSION, service1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
100101
}
101102

102103
@Test
103104
void testWorkerService() {
104105
Service service1 = new SparkClusterResourceSpec(cluster, new SparkConf()).getWorkerService();
105106
assertEquals("my-namespace", service1.getMetadata().getNamespace());
106107
assertEquals("cluster-name-worker-svc", service1.getMetadata().getName());
107-
assertEquals("4.0.0", service1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
108+
assertEquals(VERSION, service1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
108109

109110
Service service2 = new SparkClusterResourceSpec(cluster, sparkConf).getMasterService();
110111
assertEquals("other-namespace", service2.getMetadata().getNamespace());
@@ -128,7 +129,7 @@ void testWorkerServiceWithTemplate() {
128129
assertEquals("my-namespace", service1.getMetadata().getNamespace());
129130
assertEquals("cluster-name-worker-svc", service1.getMetadata().getName());
130131
assertEquals("bar", service1.getMetadata().getLabels().get("foo"));
131-
assertEquals("4.0.0", service1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
132+
assertEquals(VERSION, service1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
132133
assertEquals("foo", service1.getSpec().getExternalName());
133134
assertEquals(
134135
Map.of(
@@ -157,7 +158,7 @@ void testMasterServiceWithTemplate() {
157158
assertEquals("my-namespace", service1.getMetadata().getNamespace());
158159
assertEquals("cluster-name-master-svc", service1.getMetadata().getName());
159160
assertEquals("bar", service1.getMetadata().getLabels().get("foo"));
160-
assertEquals("4.0.0", service1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
161+
assertEquals(VERSION, service1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
161162
assertEquals("foo", service1.getSpec().getExternalName());
162163
assertEquals(
163164
Map.of(
@@ -174,9 +175,9 @@ void testMasterStatefulSet() {
174175
StatefulSet statefulSet1 = spec1.getMasterStatefulSet();
175176
assertEquals("my-namespace", statefulSet1.getMetadata().getNamespace());
176177
assertEquals("cluster-name-master", statefulSet1.getMetadata().getName());
177-
assertEquals("4.0.0", statefulSet1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
178+
assertEquals(VERSION, statefulSet1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
178179
assertEquals(
179-
"4.0.0",
180+
VERSION,
180181
statefulSet1
181182
.getSpec()
182183
.getTemplate()
@@ -230,11 +231,11 @@ void testMasterStatefulSetWithTemplate() {
230231
assertEquals("my-namespace", statefulSet1.getMetadata().getNamespace());
231232
assertEquals("cluster-name-master", statefulSet1.getMetadata().getName());
232233
assertEquals("bar", statefulSet1.getMetadata().getLabels().get("foo"));
233-
assertEquals("4.0.0", statefulSet1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
234+
assertEquals(VERSION, statefulSet1.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
234235
assertEquals(1, statefulSet1.getSpec().getTemplate().getSpec().getInitContainers().size());
235236
assertEquals(2, statefulSet1.getSpec().getTemplate().getSpec().getContainers().size());
236237
assertEquals(
237-
"4.0.0",
238+
VERSION,
238239
statefulSet1
239240
.getSpec()
240241
.getTemplate()
@@ -249,9 +250,9 @@ void testWorkerStatefulSet() {
249250
StatefulSet statefulSet = spec.getWorkerStatefulSet();
250251
assertEquals("my-namespace", statefulSet.getMetadata().getNamespace());
251252
assertEquals("cluster-name-worker", statefulSet.getMetadata().getName());
252-
assertEquals("4.0.0", statefulSet.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
253+
assertEquals(VERSION, statefulSet.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
253254
assertEquals(
254-
"4.0.0",
255+
VERSION,
255256
statefulSet
256257
.getSpec()
257258
.getTemplate()
@@ -304,9 +305,9 @@ void testWorkerStatefulSetWithTemplate() {
304305
StatefulSet statefulSet = spec.getWorkerStatefulSet();
305306
assertEquals("my-namespace", statefulSet.getMetadata().getNamespace());
306307
assertEquals("cluster-name-worker", statefulSet.getMetadata().getName());
307-
assertEquals("4.0.0", statefulSet.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
308+
assertEquals(VERSION, statefulSet.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
308309
assertEquals(
309-
"4.0.0",
310+
VERSION,
310311
statefulSet
311312
.getSpec()
312313
.getTemplate()
@@ -338,7 +339,7 @@ void testHorizontalPodAutoscaler() {
338339
assertEquals("HorizontalPodAutoscaler", hpa.getKind());
339340
assertEquals("my-namespace", hpa.getMetadata().getNamespace());
340341
assertEquals("cluster-name-worker-hpa", hpa.getMetadata().getName());
341-
assertEquals("4.0.0", hpa.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
342+
assertEquals(VERSION, hpa.getMetadata().getLabels().get(LABEL_SPARK_VERSION_NAME));
342343
assertEquals(1, hpa.getSpec().getMinReplicas());
343344
assertEquals(3, hpa.getSpec().getMaxReplicas());
344345
assertEquals(1, hpa.getSpec().getMetrics().size());

0 commit comments

Comments
 (0)