.NET API
InboundTriggerStoreContract
Tracon.Testing.Contracts.Xunit.dllBehavior tests for the IInboundTriggerStore contract.
public abstract class InboundTriggerStoreContract : TenantIsolationContract<IInboundTriggerStore>, IAsyncLifetime, IAsyncDisposableInheritance
Section titled “Inheritance”object ← TenantIsolationContract<IInboundTriggerStore> ← InboundTriggerStoreContract
Implements
Section titled “Implements”IAsyncLifetime, IAsyncDisposable
Inherited Members
Section titled “Inherited Members”TenantIsolationContract<IInboundTriggerStore>.TenantA, TenantIsolationContract<IInboundTriggerStore>.TenantB, TenantIsolationContract<IInboundTriggerStore>.CreateStoreAsync(), TenantIsolationContract<IInboundTriggerStore>.UseAmbientTenant(MutableTenantContext), TenantIsolationContract<IInboundTriggerStore>.InitializeAsync(), TenantIsolationContract<IInboundTriggerStore>.DisposeAsync(), TenantIsolationContract<IInboundTriggerStore>.OnDisposeAsync(), TenantIsolationContract<IInboundTriggerStore>.SeedAsync(string, string), TenantIsolationContract<IInboundTriggerStore>.ExistsAsync(string, object), TenantIsolationContract<IInboundTriggerStore>.CountAsync(string), TenantIsolationContract<IInboundTriggerStore>.TryDeleteAsync(string, object), TenantIsolationContract<IInboundTriggerStore>.TryOverwriteAsync(string, string), TenantIsolationContract<IInboundTriggerStore>.Tenant_cannot_read_another_tenants_record(), TenantIsolationContract<IInboundTriggerStore>.Tenant_reads_its_own_record(), TenantIsolationContract<IInboundTriggerStore>.Tenant_does_not_see_another_tenants_record_in_the_list(), TenantIsolationContract<IInboundTriggerStore>.Tenant_cannot_delete_another_tenants_record(), TenantIsolationContract<IInboundTriggerStore>.Same_name_lives_independently_across_two_tenants(), TenantIsolationContract<IInboundTriggerStore>.AmbientTenant, TenantIsolationContract<IInboundTriggerStore>.Store, object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Remarks
Section titled “Remarks”This contract never asserts a signing secret VALUE: the store carries only the configuration key’s NAME. It exists to prove tenant isolation and round-tripping of the trigger definition.
Constructors
Section titled “Constructors”InboundTriggerStoreContract()
Section titled “ InboundTriggerStoreContract()”protected InboundTriggerStoreContract()Methods
Section titled “Methods”CountAsync(string)
Section titled “ CountAsync(string)”Reports how many records the given tenant sees through the listing endpoint.
protected override ValueTask<int> CountAsync(string tenantId)Parameters
Section titled “Parameters”tenantId string
The reading tenant.
Returns
Section titled “Returns”The number of records seen.
DeleteAsync_returns_false_for_a_trigger_that_does_not_exist()
Section titled “ DeleteAsync_returns_false_for_a_trigger_that_does_not_exist()”[Fact("/Users/farukatasoy/Desktop/projects/Tracon/src/Tracon.Testing.Contracts.Xunit/Contracts/InboundTriggerStoreContract.cs", 115)]public Task DeleteAsync_returns_false_for_a_trigger_that_does_not_exist()Returns
Section titled “Returns”ExistsAsync(string, object)
Section titled “ ExistsAsync(string, object)”Reports whether the record is visible from the given tenant’s viewpoint.
protected override ValueTask<bool> ExistsAsync(string tenantId, object key)Parameters
Section titled “Parameters”tenantId string
The reading tenant.
key object
The key returned by TenantIsolationContract.SeedAsync.
Returns
Section titled “Returns”true if the record is visible.
Listing_returns_every_trigger_of_the_tenant()
Section titled “ Listing_returns_every_trigger_of_the_tenant()”[Fact("/Users/farukatasoy/Desktop/projects/Tracon/src/Tracon.Testing.Contracts.Xunit/Contracts/InboundTriggerStoreContract.cs", 101)]public Task Listing_returns_every_trigger_of_the_tenant()Returns
Section titled “Returns”Missing_trigger_returns_null()
Section titled “ Missing_trigger_returns_null()”[Fact("/Users/farukatasoy/Desktop/projects/Tracon/src/Tracon.Testing.Contracts.Xunit/Contracts/InboundTriggerStoreContract.cs", 82)]public Task Missing_trigger_returns_null()Returns
Section titled “Returns”Path_mode_and_path_round_trip()
Section titled “ Path_mode_and_path_round_trip()”[Fact("/Users/farukatasoy/Desktop/projects/Tracon/src/Tracon.Testing.Contracts.Xunit/Contracts/InboundTriggerStoreContract.cs", 50)]public Task Path_mode_and_path_round_trip()Returns
Section titled “Returns”Saved_trigger_is_read_back()
Section titled “ Saved_trigger_is_read_back()”[Fact("/Users/farukatasoy/Desktop/projects/Tracon/src/Tracon.Testing.Contracts.Xunit/Contracts/InboundTriggerStoreContract.cs", 33)]public Task Saved_trigger_is_read_back()Returns
Section titled “Returns”SeedAsync(string, string)
Section titled “ SeedAsync(string, string)”Writes a sample record for the given tenant.
protected override ValueTask<object> SeedAsync(string tenantId, string name)Parameters
Section titled “Parameters”tenantId string
The tenant that owns the record.
name string
The name distinguishing the record. The same name may be used by two tenants.
Returns
Section titled “Returns”The key to use for reading the record back.
TryDeleteAsync(string, object)
Section titled “ TryDeleteAsync(string, object)”Attempts to delete the record on behalf of the given tenant.
protected override ValueTask<bool?> TryDeleteAsync(string tenantId, object key)Parameters
Section titled “Parameters”tenantId string
The tenant attempting the delete.
key object
The key returned by TenantIsolationContract.SeedAsync.
Returns
Section titled “Returns”true if the delete succeeded, false if the record was not found; null if the store does not offer deletion.
Upsert_replaces_the_existing_trigger_for_the_same_tenant_and_name()
Section titled “ Upsert_replaces_the_existing_trigger_for_the_same_tenant_and_name()”[Fact("/Users/farukatasoy/Desktop/projects/Tracon/src/Tracon.Testing.Contracts.Xunit/Contracts/InboundTriggerStoreContract.cs", 86)]public Task Upsert_replaces_the_existing_trigger_for_the_same_tenant_and_name()Returns
Section titled “Returns”Workflow_target_kind_round_trips()
Section titled “ Workflow_target_kind_round_trips()”[Fact("/Users/farukatasoy/Desktop/projects/Tracon/src/Tracon.Testing.Contracts.Xunit/Contracts/InboundTriggerStoreContract.cs", 66)]public Task Workflow_target_kind_round_trips()