Skip to content

[Feature Request] Adapt remaining .NET tests for Temporal Cloud execution #857

Description

@THardy98

Is your feature request related to a problem? Please describe.

This issue tracks the tests that still require adaptation before they can run against Temporal Cloud.

PR #823 classifies 107 test cases across eleven test files as NeedsCloudAdaptation. The inventory can be listed with:

dotnet test tests/Temporalio.Tests --list-tests --filter "CloudTestExclusionReason=NeedsCloudAdaptation"

Describe the solution you'd like

Some of the required adaptations include:

  • Using the complete envconfig-derived client or client options instead of reconstructing clients from only the target host and namespace, for example ActivityScopeTests.cs and TemporalWorkerServiceTests.cs.
  • Provisioning required custom search attributes with the ephemeral Cloud namespace, for example TemporalClientWorkflowTests.cs and WorkflowWorkerTests.cs.
  • Adapting Cloud visibility and pagination assertions, including the extra empty page that can follow a non-empty next-page token, for example TemporalClientActivityTests.cs and TemporalClientWorkflowTests.cs.
  • Provisioning and cleaning up Cloud Nexus endpoints, for example NexusWorkerTests.cs, NexusUpdateOperationTests.cs, and the converter-context test in WorkflowWorkerTests.cs.
  • Adapting schedule assertions to Cloud consistency behavior, for example TemporalClientScheduleTests.cs.
  • Coordinating worker shutdown with in-flight activity completion for ExecuteWorkflowAsync_Cancel_ProperlyCanceled and ExecuteWorkflowAsync_StdlibSemaphore_NonAsyncDeadlocks.

The work is complete when the NeedsCloudAdaptation inventory is empty and the adapted tests pass both the normal local suite and the Cloud mTLS lane.

Additional context

PR #823 introduces the executable Cloud exclusion inventory. Each exclusion includes a source-level note explaining its current blocker. Adaptations should preserve the existing local test coverage, use complete environment configuration rather than copying selected authentication fields, and clean up only Cloud resources created by the test.

Metadata

Metadata

Assignees

No one assigned

    Labels

    .NETPull requests that update .NET codeenhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions