PASSED — selected transaction.
Test source: 348a2d7124645431ff8bc546c8eb5339f4f0f6e7. A feature pass covers only its stated scope. Missing tests or failed cleanup prevent qualification. Release approval remains separate.
Each lab creates an isolated k3d cluster, deploys OpenOP through the existing Ansible playbooks, calls public OEG APIs, independently observes Kubernetes/provider state and removes its owned resources. The network variant adds real EURECOM/CoreSim services.
| Feature | Observed | Run | Scope and limits |
|---|---|---|---|
| Authentication and API authorization | passed | container · Checks | One operator; issuer, missing/invalid token and App Provider role checks. |
| Device Traffic Influence uses the deployed application endpoint | passed | network · Checks | One device and observed application host IPv4; provider subscription lifecycle. No port/protocol filters, actual packet steering or automatic notification claim. |
| OEG returns the observed application endpoint | passed | container · Checks | One observed external HTTP NodePort; no Ingress, LoadBalancer or multi-interface claim. |
| Invalid and conflicting public requests are rejected | passed | container · Checks | Missing name (400), unsupported QCOW2 package (501), duplicate onboarding (409), unknown app (400) and instance (404); owned catalogue cleanup verified. |
| federation | not_run | container · Checks | Federation requires multiple operator platforms and agreed partners. |
| OEG and FM HTTP health | passed | container · Checks | Public OEG/FM HTTP health; other API behavior has separate checks. |
| HELM application lifecycle | passed | helm · Checks | One HTTP-served Helm archive, NodePort and termination; no CAMARA compute-to-values mapping or arbitrary chart support claim. |
| OEG returns the deployed application identity | passed | container · Checks | Expected app/zone identity and ready state for the selected instance. |
| Known-device location and missing-device rejection | passed | network · Checks | One simulated IPv4 device, geographic area/time, missing-device rejection; no real location accuracy or handset compatibility claim. |
| multi-cluster | not_run | container · Checks | Control-path isolation needs separate two-cluster execution evidence. |
| Cloud application catalogue onboarding | passed | container · Checks | Supported application manifest read/list/delete; no complete optional-field round trip. |
| OEG QoD profiles, provider readback, refusals and cleanup | passed | network · Checks | EURECOM/CoreSim: four configured profiles, exact IPv4 flow and notification URL, SDK/backend refusal and public/provider cleanup. No real QoS enforcement or callback delivery claim. |
| Returned endpoint reaches the deployed application | passed | container · Checks | Controller-to-application HTTP with Pod identity; no WAN or data-plane policy claim. |
| Requested CPU and memory applied to Deployment and Pod | passed | container · Checks | Container CPU and decimal-MB memory requests; no limits, storage or accelerators. |
| OEG termination removes the owned workload | passed | container · Checks | Public instance and owned Deployment/Pod/Service removal. |
| updates | not_run | container · Checks | Scaling, updates and recovery require their own lifecycle assertions. |
| OEG request creates a ready Kubernetes workload | passed | container · Checks | One application, one zone and one ready Deployment/Pod/NodePort Service. |
| Configured workload zones exposed by OEG | passed | container · Checks | Configured lab workload zones and public identities; no dynamic backend health claim. |
Call public OEG and FM health endpoints and require HTTP 200 from both deployed services.
Explanation and flow diagram
Discover the configured realm through its public URL and verify the advertised issuer matches it.
Explanation and flow diagram
Discover the configured realm through its public URL and verify the advertised issuer matches it.
Explanation and flow diagram
Require HTTP 401 for missing or invalid bearer tokens on application and federation routes.
Explanation and flow diagram
Reject the operator role on application routes and let an App Provider reach the application lookup.
Explanation and flow diagram
Require HTTP 403 when an App Provider calls an operator-only federation route.
Explanation and flow diagram
FM serves /internal/* only on its cluster-internal port, never on the EWBI one.
Explanation and flow diagram
Onboard an application through OEG, read its stored manifest and list entry, then verify catalogue removal.
Explanation and flow diagram
Verify the application registered by this test client appears in its catalogue list.
Explanation and flow diagram
Reject a missing application name or unsupported package and prove no catalogue record was created.
Explanation and flow diagram
Reject a missing application name or unsupported package and prove no catalogue record was created.
Explanation and flow diagram
Require HTTP 409 for duplicate onboarding and prove the original application was preserved.
Explanation and flow diagram
Reject instantiation of an unknown application and prove no instance was created.
Explanation and flow diagram
Require HTTP 404 for deletion of a nonexistent application instance.
Explanation and flow diagram
Compare public zone names and unique identities with the workload zones configured in this lab.
Explanation and flow diagram
Instantiate through OEG and independently require the owned Kubernetes Deployment, ready Pod and NodePort Service.
Explanation and flow diagram
Compare requested CPU and decimal-MB memory with the actual Kubernetes Deployment and Pod resource requests.
Explanation and flow diagram
Poll the public instance until ready and verify its application and zone identities.
Explanation and flow diagram
Compare the public application endpoint with the actual owned Kubernetes Service and cluster node.
Explanation and flow diagram
Call the returned HTTP endpoint and verify the response identifies the deployed application Pod.
Explanation and flow diagram
Terminate through OEG and verify the public instance and owned Deployment, Pod and Service disappear.
Explanation and flow diagram
Call public OEG and FM health endpoints and require HTTP 200 from both deployed services.
Explanation and flow diagram
Discover the configured realm through its public URL and verify the advertised issuer matches it.
Explanation and flow diagram
Discover the configured realm through its public URL and verify the advertised issuer matches it.
Explanation and flow diagram
Require HTTP 401 for missing or invalid bearer tokens on application and federation routes.
Explanation and flow diagram
Reject the operator role on application routes and let an App Provider reach the application lookup.
Explanation and flow diagram
Require HTTP 403 when an App Provider calls an operator-only federation route.
Explanation and flow diagram
FM serves /internal/* only on its cluster-internal port, never on the EWBI one.
Explanation and flow diagram
Onboard an application through OEG, read its stored manifest and list entry, then verify catalogue removal.
Explanation and flow diagram
Verify the application registered by this test client appears in its catalogue list.
Explanation and flow diagram
Reject a missing application name or unsupported package and prove no catalogue record was created.
Explanation and flow diagram
Reject a missing application name or unsupported package and prove no catalogue record was created.
Explanation and flow diagram
Require HTTP 409 for duplicate onboarding and prove the original application was preserved.
Explanation and flow diagram
Reject instantiation of an unknown application and prove no instance was created.
Explanation and flow diagram
Require HTTP 404 for deletion of a nonexistent application instance.
Explanation and flow diagram
Compare public zone names and unique identities with the workload zones configured in this lab.
Explanation and flow diagram
Instantiate through OEG and independently require the owned Kubernetes Deployment, ready Pod and NodePort Service.
Explanation and flow diagram
Poll the public instance until ready and verify its application and zone identities.
Explanation and flow diagram
Compare the public application endpoint with the actual owned Kubernetes Service and cluster node.
Explanation and flow diagram
Call the returned HTTP endpoint and verify the response identifies the deployed application Pod.
Explanation and flow diagram
Terminate through OEG and verify the public instance and owned Deployment, Pod and Service disappear.
Explanation and flow diagram
Call public OEG and FM health endpoints and require HTTP 200 from both deployed services.
Explanation and flow diagram
Discover the configured realm through its public URL and verify the advertised issuer matches it.
Explanation and flow diagram
Discover the configured realm through its public URL and verify the advertised issuer matches it.
Explanation and flow diagram
Require HTTP 401 for missing or invalid bearer tokens on application and federation routes.
Explanation and flow diagram
Reject the operator role on application routes and let an App Provider reach the application lookup.
Explanation and flow diagram
Require HTTP 403 when an App Provider calls an operator-only federation route.
Explanation and flow diagram
FM serves /internal/* only on its cluster-internal port, never on the EWBI one.
Explanation and flow diagram
Onboard an application through OEG, read its stored manifest and list entry, then verify catalogue removal.
Explanation and flow diagram
Verify the application registered by this test client appears in its catalogue list.
Explanation and flow diagram
Reject a missing application name or unsupported package and prove no catalogue record was created.
Explanation and flow diagram
Reject a missing application name or unsupported package and prove no catalogue record was created.
Explanation and flow diagram
Require HTTP 409 for duplicate onboarding and prove the original application was preserved.
Explanation and flow diagram
Reject instantiation of an unknown application and prove no instance was created.
Explanation and flow diagram
Require HTTP 404 for deletion of a nonexistent application instance.
Explanation and flow diagram
Compare public zone names and unique identities with the workload zones configured in this lab.
Explanation and flow diagram
Instantiate through OEG and independently require the owned Kubernetes Deployment, ready Pod and NodePort Service.
Explanation and flow diagram
Compare requested CPU and decimal-MB memory with the actual Kubernetes Deployment and Pod resource requests.
Explanation and flow diagram
Poll the public instance until ready and verify its application and zone identities.
Explanation and flow diagram
Compare the public application endpoint with the actual owned Kubernetes Service and cluster node.
Explanation and flow diagram
Call the returned HTTP endpoint and verify the response identifies the deployed application Pod.
Explanation and flow diagram
Create and read QoD through OEG, inspect the real NEF resource and flow, then verify public and provider deletion.
Explanation and flow diagram
Create and read QoD through OEG, inspect the real NEF resource and flow, then verify public and provider deletion.
Explanation and flow diagram
Create and read QoD through OEG, inspect the real NEF resource and flow, then verify public and provider deletion.
Explanation and flow diagram
Create and read QoD through OEG, inspect the real NEF resource and flow, then verify public and provider deletion.
Explanation and flow diagram
Request a disallowed QoD profile, wait for UNAVAILABLE and verify no provider subscription was created.
Explanation and flow diagram
Request a profile refused by the NEF, wait for UNAVAILABLE and check safe HTTP 400 diagnostics and cleanup.
Explanation and flow diagram
Retrieve the simulated device location through OEG and verify geographic coordinates and freshness.
Explanation and flow diagram
Require the public missing-identifier error when location retrieval has no device.
Explanation and flow diagram
Activate device TI through OEG, verify real device/application IPs and notification URL in the NEF, then verify deletion.
Explanation and flow diagram
Terminate through OEG and verify the public instance and owned Deployment, Pod and Service disappear.
Explanation and flow diagram
Unselected features remain unverified. Provider API compatibility does not prove radio QoS, traffic steering or notification delivery.