-
Notifications
You must be signed in to change notification settings - Fork 8
Description
Description
Add unit tests for resource types that currently have no test coverage.
Context
- Currently tested: Apis, CronJobs, Gateway, Node, Service
- Pattern established in
ServiceTest.java: test DELETE, PUT, and watch endpoints - Uses
@QuarkusTest,@WithKubernetesTestServer, Awaitility
Resources WITHOUT tests
Priority resources (most commonly used):
DeploymentResource-src/main/java/com/marcnuri/yakd/deployment/PodResource-src/main/java/com/marcnuri/yakd/pod/ConfigMapResource-src/main/java/com/marcnuri/yakd/configmaps/SecretResource-src/main/java/com/marcnuri/yakd/secrets/
Additional resources:
5. ClusterRoleBindingResource - src/main/java/com/marcnuri/yakd/clusterrolebindings/
6. ClusterRoleResource - src/main/java/com/marcnuri/yakd/clusterroles/
7. CustomResourceResource - src/main/java/com/marcnuri/yakd/customresources/
8. CustomResourceDefinitionResource - src/main/java/com/marcnuri/yakd/customresourcedefinitions/
9. DaemonSetResource - src/main/java/com/marcnuri/yakd/daemonsets/
10. DeploymentConfigResource (OpenShift) - src/main/java/com/marcnuri/yakd/deploymentconfigs/
11. EndpointResource - src/main/java/com/marcnuri/yakd/endpoints/
12. HorizontalPodAutoscalerResource - src/main/java/com/marcnuri/yakd/horizontalpodautoscalers/
13. IngressResource - src/main/java/com/marcnuri/yakd/ingresses/
14. JobResource - src/main/java/com/marcnuri/yakd/jobs/
15. NamespaceResource - src/main/java/com/marcnuri/yakd/namespaces/
16. PersistentVolumeResource - src/main/java/com/marcnuri/yakd/persistentvolumes/
17. PersistentVolumeClaimResource - src/main/java/com/marcnuri/yakd/persistentvolumeclaims/
18. ReplicaSetResource - src/main/java/com/marcnuri/yakd/replicaset/
19. ReplicationControllerResource - src/main/java/com/marcnuri/yakd/replicationcontrollers/
20. RoleResource - src/main/java/com/marcnuri/yakd/roles/
21. RoleBindingResource - src/main/java/com/marcnuri/yakd/rolebindings/
22. RouteResource (OpenShift) - src/main/java/com/marcnuri/yakd/routes/
23. ServiceAccountResource - src/main/java/com/marcnuri/yakd/serviceaccounts/
24. StatefulSetResource - src/main/java/com/marcnuri/yakd/statefulsets/
Test template (from ServiceTest.java)
@QuarkusTest
@WithKubernetesTestServer
class XxxTest {
@Inject KubernetesClient kubernetesClient;
@TestHTTPResource URL url;
@Test void delete() { /* DELETE endpoint */ }
@Test void update() { /* PUT endpoint */ }
@Test void watch() { /* WebSocket watch */ }
}Acceptance Criteria
- At minimum: tests for Deployment, Pod, ConfigMap, Secret
- Each test covers: delete, update, and watch operations
- Tests use mock Kubernetes server
- All tests pass:
mvn test