|
1 | 1 | package io.javaoperatorsdk.operator;
|
2 | 2 |
|
3 |
| -import io.javaoperatorsdk.operator.sample.TestCustomResource; |
4 |
| -import io.javaoperatorsdk.operator.sample.TestCustomResourceController; |
5 | 3 | import io.fabric8.kubernetes.client.CustomResourceDoneable;
|
| 4 | +import io.javaoperatorsdk.operator.api.Context; |
6 | 5 | import io.javaoperatorsdk.operator.api.Controller;
|
| 6 | +import io.javaoperatorsdk.operator.api.ResourceController; |
| 7 | +import io.javaoperatorsdk.operator.api.UpdateControl; |
| 8 | +import io.javaoperatorsdk.operator.sample.TestCustomResource; |
| 9 | +import io.javaoperatorsdk.operator.sample.TestCustomResourceController; |
7 | 10 | import org.junit.jupiter.api.Assertions;
|
8 | 11 | import org.junit.jupiter.api.Test;
|
9 | 12 |
|
|
12 | 15 |
|
13 | 16 | class ControllerUtilsTest {
|
14 | 17 |
|
| 18 | + public static final String CUSTOM_FINALIZER_NAME = "a.customer.finalizer"; |
| 19 | + |
15 | 20 | @Test
|
16 | 21 | public void returnsValuesFromControllerAnnotationFinalizer() {
|
17 |
| - Assertions.assertEquals(Controller.DEFAULT_FINALIZER, ControllerUtils.getDefaultFinalizer(new TestCustomResourceController(null))); |
| 22 | + Assertions.assertEquals(TestCustomResourceController.class.getCanonicalName(), ControllerUtils.getFinalizer(new TestCustomResourceController(null))); |
18 | 23 | assertEquals(TestCustomResource.class, ControllerUtils.getCustomResourceClass(new TestCustomResourceController(null)));
|
19 | 24 | Assertions.assertEquals(TestCustomResourceController.CRD_NAME, ControllerUtils.getCrdName(new TestCustomResourceController(null)));
|
20 | 25 | assertEquals(false, ControllerUtils.getGenerationEventProcessing(new TestCustomResourceController(null)));
|
21 | 26 | assertTrue(CustomResourceDoneable.class.isAssignableFrom(ControllerUtils.getCustomResourceDoneableClass(new TestCustomResourceController(null))));
|
22 | 27 | }
|
| 28 | + |
| 29 | + @Controller(crdName = "test.crd", customResourceClass = TestCustomResource.class, finalizerName = CUSTOM_FINALIZER_NAME) |
| 30 | + static class TestCustomFinalizerController implements ResourceController<TestCustomResource> { |
| 31 | + |
| 32 | + @Override |
| 33 | + public boolean deleteResource(TestCustomResource resource, Context<TestCustomResource> context) { |
| 34 | + return false; |
| 35 | + } |
| 36 | + |
| 37 | + @Override |
| 38 | + public UpdateControl<TestCustomResource> createOrUpdateResource(TestCustomResource resource, Context<TestCustomResource> context) { |
| 39 | + return null; |
| 40 | + } |
| 41 | + } |
| 42 | + |
| 43 | + @Test |
| 44 | + public void returnCustomerFinalizerNameIfSet() { |
| 45 | + assertEquals(CUSTOM_FINALIZER_NAME, ControllerUtils.getFinalizer(new TestCustomFinalizerController())); |
| 46 | + } |
23 | 47 | }
|
0 commit comments