File tree Expand file tree Collapse file tree 5 files changed +131
-0
lines changed
operator-framework/src/test/java/io/javaoperatorsdk/operator/baseapi/ssaissue Expand file tree Collapse file tree 5 files changed +131
-0
lines changed Original file line number Diff line number Diff line change
1
+ package io .javaoperatorsdk .operator .baseapi .ssaissue ;
2
+
3
+ import io .fabric8 .kubernetes .api .model .Namespaced ;
4
+ import io .fabric8 .kubernetes .client .CustomResource ;
5
+ import io .fabric8 .kubernetes .model .annotation .Group ;
6
+ import io .fabric8 .kubernetes .model .annotation .Kind ;
7
+ import io .fabric8 .kubernetes .model .annotation .ShortNames ;
8
+ import io .fabric8 .kubernetes .model .annotation .Version ;
9
+
10
+ @ Group ("sample.javaoperatorsdk" )
11
+ @ Version ("v1" )
12
+ @ Kind ("CustomService" )
13
+ @ ShortNames ("ssaf" )
14
+ public class SSAFinalizerIssueCustomResource
15
+ extends CustomResource <SSAFinalizerIssueSpec , SSAFinalizerIssueStatus > implements Namespaced {}
Original file line number Diff line number Diff line change
1
+ package io .javaoperatorsdk .operator .baseapi .ssaissue ;
2
+
3
+ import java .util .List ;
4
+
5
+ import org .junit .jupiter .api .Test ;
6
+ import org .junit .jupiter .api .extension .RegisterExtension ;
7
+
8
+ import io .fabric8 .kubernetes .api .model .ObjectMetaBuilder ;
9
+ import io .javaoperatorsdk .operator .junit .LocallyRunOperatorExtension ;
10
+
11
+ import static org .assertj .core .api .Assertions .assertThat ;
12
+ import static org .awaitility .Awaitility .await ;
13
+
14
+ class SSAFinalizerIssueIT {
15
+
16
+ public static final String TEST_1 = "test1" ;
17
+
18
+ @ RegisterExtension
19
+ LocallyRunOperatorExtension operator =
20
+ LocallyRunOperatorExtension .builder ()
21
+ .withReconciler (new SSAFinalizerIssueReconciler ())
22
+ .build ();
23
+
24
+ @ Test
25
+ void addingFinalizerRemoveListValues () {
26
+ operator .create (testResource ());
27
+
28
+ await ()
29
+ .untilAsserted (
30
+ () -> {
31
+ var actual = operator .get (SSAFinalizerIssueCustomResource .class , TEST_1 );
32
+ assertThat (actual .getFinalizers ()).hasSize (1 );
33
+ assertThat (actual .getSpec ().getList ()).isEmpty ();
34
+ });
35
+ }
36
+
37
+ SSAFinalizerIssueCustomResource testResource () {
38
+ var res = new SSAFinalizerIssueCustomResource ();
39
+ res .setMetadata (new ObjectMetaBuilder ().withName (TEST_1 ).build ());
40
+ res .setSpec (new SSAFinalizerIssueSpec ());
41
+ res .getSpec ().setValue ("val" );
42
+ res .getSpec ().setList (List .of ("val1" , "val2" ));
43
+ return res ;
44
+ }
45
+ }
Original file line number Diff line number Diff line change
1
+ package io .javaoperatorsdk .operator .baseapi .ssaissue ;
2
+
3
+ import io .javaoperatorsdk .operator .api .reconciler .Cleaner ;
4
+ import io .javaoperatorsdk .operator .api .reconciler .Context ;
5
+ import io .javaoperatorsdk .operator .api .reconciler .ControllerConfiguration ;
6
+ import io .javaoperatorsdk .operator .api .reconciler .DeleteControl ;
7
+ import io .javaoperatorsdk .operator .api .reconciler .Reconciler ;
8
+ import io .javaoperatorsdk .operator .api .reconciler .UpdateControl ;
9
+
10
+ @ ControllerConfiguration
11
+ public class SSAFinalizerIssueReconciler
12
+ implements Reconciler <SSAFinalizerIssueCustomResource >,
13
+ Cleaner <SSAFinalizerIssueCustomResource > {
14
+
15
+ @ Override
16
+ public DeleteControl cleanup (
17
+ SSAFinalizerIssueCustomResource resource , Context <SSAFinalizerIssueCustomResource > context ) {
18
+ return DeleteControl .defaultDelete ();
19
+ }
20
+
21
+ @ Override
22
+ public UpdateControl <SSAFinalizerIssueCustomResource > reconcile (
23
+ SSAFinalizerIssueCustomResource resource , Context <SSAFinalizerIssueCustomResource > context ) {
24
+ return UpdateControl .noUpdate ();
25
+ }
26
+ }
Original file line number Diff line number Diff line change
1
+ package io .javaoperatorsdk .operator .baseapi .ssaissue ;
2
+
3
+ import java .util .List ;
4
+
5
+ public class SSAFinalizerIssueSpec {
6
+
7
+ private String value ;
8
+
9
+ private List <String > list ;
10
+
11
+ public String getValue () {
12
+ return value ;
13
+ }
14
+
15
+ public void setValue (String value ) {
16
+ this .value = value ;
17
+ }
18
+
19
+ public List <String > getList () {
20
+ return list ;
21
+ }
22
+
23
+ public void setList (List <String > list ) {
24
+ this .list = list ;
25
+ }
26
+ }
Original file line number Diff line number Diff line change
1
+ package io .javaoperatorsdk .operator .baseapi .ssaissue ;
2
+
3
+ public class SSAFinalizerIssueStatus {
4
+
5
+ private String configMapStatus ;
6
+
7
+ public String getConfigMapStatus () {
8
+ return configMapStatus ;
9
+ }
10
+
11
+ public void setConfigMapStatus (String configMapStatus ) {
12
+ this .configMapStatus = configMapStatus ;
13
+ }
14
+
15
+ @ Override
16
+ public String toString () {
17
+ return "TestCustomResourceStatus{" + "configMapStatus='" + configMapStatus + '\'' + '}' ;
18
+ }
19
+ }
You can’t perform that action at this time.
0 commit comments