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