Skip to content
Tracon

RepeatableToolContract

Namespace Tracon.Testing.Contracts.Tools · Assembly Tracon.Testing.Contracts.Xunit.dll

Behavior tests for a custom tool that can safely be repeated.

public abstract class RepeatableToolContract : CustomToolContract, IAsyncLifetime, IAsyncDisposable

objectCustomToolContractRepeatableToolContract

IAsyncLifetime, IAsyncDisposable

CustomToolContract.CreateRegistrationAsync(), CustomToolContract.InitializeAsync(), CustomToolContract.DisposeAsync(), CustomToolContract.Name_is_stable_and_valid(), CustomToolContract.Concurrent_server_calls_complete(), CustomToolContract.Metadata_is_self_consistent(), CustomToolContract.Registration, CustomToolContract.ExpectedResultText, object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Derive from this contract only when the tool declares TraconToolRegistration.SafeToRepeat. The base CustomToolContract remains the contract for tools that do not make that idempotency promise.

protected RepeatableToolContract()

Verifies that the registration makes the repeatability promise.

[Fact("/Users/farukatasoy/Desktop/projects/Tracon/src/Tracon.Testing.Contracts.Xunit/Contracts/Tools/RepeatableToolContract.cs", 13)]
public void Registration_is_marked_safe_to_repeat()