Skip to content

feat(pubsub/azure/servicebus/queues): add certification tests#4150

Merged
cicoyle merged 18 commits intodapr:mainfrom
jmfloreszazo:test/asb-queues-certification
Feb 24, 2026
Merged

feat(pubsub/azure/servicebus/queues): add certification tests#4150
cicoyle merged 18 commits intodapr:mainfrom
jmfloreszazo:test/asb-queues-certification

Conversation

@jmfloreszazo
Copy link
Contributor

@jmfloreszazo jmfloreszazo commented Dec 30, 2025

Description

This pull request introduces a certification test suite for the Azure Service Bus Queues pub/sub component (pubsub.azure.servicebus.queues) in the components-contrib repository.

The goal is to provide reproducible automated tests that validate both basic and advanced functionality, enabling this component to be promoted from Beta to Stable as required by the project’s certification lifecycle.

The tests cover core pub/sub semantics (competing consumers, multiple subscriptions, queue auto-creation) and outline additional scenarios for resilience, metadata handling, authentication, and edge cases. The suite is intended to run against a real Azure Service Bus namespace using environment variables for configuration.

Documentation (README) is included to explain environment setup and how to execute the tests locally.

Issue reference

#2940 – Azure Service Bus queues pubsub component as stable

Checklist

  • Code compiles correctly
  • Created tests
  • Added a certification test suite for pubsub.azure.servicebus.queues
  • Tests can be run via go test ./components-contrib/tests/conformance/pubsub/azure_servicebus_queues -v
  • Extended the documentation
    • Created README.md inside tests/conformance/pubsub/azure_servicebus_queues/ explaining:
      • required environment variables
      • test plan coverage
      • how to run tests
  • Update Azure Service Bus Queues state from Beta to Stable #4992

Additional Context

Auto-created Queues

The queues used in tests (auto-created) are:

  • certification-pubsub-queue-active
  • certification-pubsub-queue-passive
  • certification-queue-per-test-run (and variants with UUID suffix used by tests that require unique queues, e.g. certification-queue-per-test-run-)

Quick notes:

  • Tests auto-create queues unless entity management is disabled.
  • The EntityManagement test expects the queue NOT to exist (it uses unique names to avoid collisions).

Environment Variables

The following environment variables are expected when running the certification test suite:

# Basic authentication
export AzureServiceBusConnectionString="Endpoint=sb://<namespace>.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=<key>"

# Azure AD authentication (for TestServicebusQueuesAuthentication)
export AzureServiceBusNamespace="<namespace>.servicebus.windows.net"
export AzureCertificationTenantId="<tenant-id>"
export AzureCertificationServicePrincipalClientId="<client-id>"
export AzureCertificationServicePrincipalClientSecret="<client-secret>"

Run tests

cd tests/certification/pubsub/azure/servicebus/queues
go test -v -timeout 30m

Signed-off-by: Jose Maria Flores Zazo <jmfloreszazo@gmail.com>
…ge metadata and multiple queues

Signed-off-by: Jose Maria Flores Zazo <jmfloreszazo@gmail.com>
Adds a wait time to ensure the sidecar is ready before publishing messages.
This improves the reliability of the test by preventing messages from being
sent before the sidecar is fully initialized.

Signed-off-by: Jose Maria Flores Zazo <jmfloreszazo@gmail.com>
…with detailed test cases and prerequisites

Signed-off-by: Jose Maria Flores Zazo <jmfloreszazo@gmail.com>
…ts to avoid interference

Signed-off-by: Jose Maria Flores Zazo <jmfloreszazo@gmail.com>
…essages tests, ensuring unique queues to avoid interference

Signed-off-by: Jose Maria Flores Zazo <jmfloreszazo@gmail.com>
Adds a GPG key file.

This allows users to verify the authenticity of the application and its updates, enhancing security.

Signed-off-by: Jose Maria Flores Zazo <jmfloreszazo@gmail.com>
@jmfloreszazo jmfloreszazo force-pushed the test/asb-queues-certification branch from 4434720 to 743f733 Compare December 30, 2025 11:30
Copy link
Member

@mikeee mikeee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Before I review further just this q-

Signed-off-by: Jose Maria Flores Zazo <jmfloreszazo@gmail.com>
@jmfloreszazo jmfloreszazo requested a review from mikeee January 1, 2026 09:56
@cicoyle cicoyle added this to the v1.17 milestone Jan 16, 2026
@github-actions
Copy link

This pull request has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in 7 days if no further activity occurs. Please feel free to give a status update now, ping for review, or re-open when it's ready. Thank you for your contributions!

@github-actions github-actions bot added the stale label Feb 15, 2026
@github-actions
Copy link

This pull request has been automatically closed because it has not had activity in the last 37 days. Please feel free to give a status update now, ping for review, or re-open when it's ready. Thank you for your contributions!

@github-actions github-actions bot closed this Feb 22, 2026
@github-actions github-actions bot removed the stale label Feb 23, 2026
@cicoyle cicoyle added the autoupdate automatically keeps PR up to date against master label Feb 24, 2026
@cicoyle cicoyle merged commit fd813c3 into dapr:main Feb 24, 2026
105 of 106 checks passed
cicoyle added a commit to cicoyle/components-contrib that referenced this pull request Feb 24, 2026
)

Signed-off-by: Jose Maria Flores Zazo <jmfloreszazo@gmail.com>
Co-authored-by: Yaron Schneider <schneider.yaron@live.com>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Co-authored-by: Nelson Parente <nelson_parente@live.com.pt>
kgal-akl pushed a commit to akeylesslabs/DAPR-components that referenced this pull request Mar 4, 2026
)

Signed-off-by: Jose Maria Flores Zazo <jmfloreszazo@gmail.com>
Co-authored-by: Yaron Schneider <schneider.yaron@live.com>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Co-authored-by: Nelson Parente <nelson_parente@live.com.pt>
Signed-off-by: Kobbi Gal <kobbi.g@akeyless.io>
kgal-akl pushed a commit to akeylesslabs/DAPR-components that referenced this pull request Mar 4, 2026
)

Signed-off-by: Jose Maria Flores Zazo <jmfloreszazo@gmail.com>
Co-authored-by: Yaron Schneider <schneider.yaron@live.com>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Co-authored-by: Nelson Parente <nelson_parente@live.com.pt>
Signed-off-by: Kobbi Gal <kobbi.g@akeyless.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

autoupdate automatically keeps PR up to date against master

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants