public static async Task <SelectedPartition> GetPartitionAsync(this IFabricTestabilityClient client, PartitionSelector partitionSelector) { var systemFabricCient = GetSystemFabricClient(client); GetSelectedPartitionStateAction partitionAction = new GetSelectedPartitionStateAction(partitionSelector); await systemFabricCient.FabricClient.TestManager.TestContext.ActionExecutor.RunAsync(partitionAction); return(partitionAction.Result); }
public static async Task <Replica> GetReplicaAsync(this IFabricTestabilityClient client, ReplicaSelector replicaSelector) { var systemFabricCient = GetSystemFabricClient(client); GetSelectedReplicaStateAction replicaAction = new GetSelectedReplicaStateAction(replicaSelector); await systemFabricCient.FabricClient.TestManager.TestContext.ActionExecutor.RunAsync(replicaAction); return(replicaAction.Result.Item2); }
// IFabricTestabilityClient extensions for test convenience public static void ConnectToEventStore(this IFabricTestabilityClient client, EventStoreConnectionInformation connInfo) { var systemFabricCient = GetSystemFabricClient(client); var testContext = systemFabricCient.FabricClient.TestManager.TestContext; var storeConnection = new EventStoreConnection(connInfo); testContext.ExtensionProperties.Add(Constants.EventStoreConnection, storeConnection); }
private static SystemFabricClient GetSystemFabricClient(IFabricTestabilityClient client) { var fabricClientHelper = client as FabricClientHelper; ReleaseAssert.AssertIf(fabricClientHelper == null, "Unexpected type for IFabricTestabilityClient: {0}", client.GetType()); var systemFabricCient = fabricClientHelper.GetFabricClientObject(FabricClientTypes.System) as SystemFabricClient; ReleaseAssert.AssertIf(systemFabricCient == null, "Unexpected type for FabricClientObject: {0}", systemFabricCient.GetType()); return(systemFabricCient); }
public static async Task ValidateServiceAsync( this IFabricTestabilityClient client, Uri serviceName, bool allowQuorumLoss, TimeSpan stabilizationTimeout, CancellationToken token) { var systemFabricCient = GetSystemFabricClient(client); TestabilityTrace.TraceSource.WriteInfo("TestabilityExtensionsFuture", "ValidateServiceAsync(): stabilizationTimeout='{0}'", stabilizationTimeout); ValidateServiceAction validateServiceAction = new ValidateServiceAction(serviceName, stabilizationTimeout); validateServiceAction.CheckFlag = allowQuorumLoss ? ValidationCheckFlag.AllButQuorumLoss : ValidationCheckFlag.All; await systemFabricCient.FabricClient.TestManager.TestContext.ActionExecutor.RunAsync(validateServiceAction, token); }
internal static async Task <ApiFaultInformation> GetApiFaultInformationAsync( this IFabricTestabilityClient client, DateTime start, DateTime end, TimeSpan operationTimeout, CancellationToken token) { var systemFabricCient = GetSystemFabricClient(client); var testContext = systemFabricCient.FabricClient.TestManager.TestContext; var apiFaultInformationAction = new ApiFaultInformationAction(start, end) { ActionTimeout = operationTimeout, RequestTimeout = TestabilityExtensionsFuture.GetRequestTimeout(operationTimeout) }; await testContext.ActionExecutor.RunAsync(apiFaultInformationAction, token); return(apiFaultInformationAction.Result); }
public static async Task <IList <AbnormalProcessTerminationInformation> > GetAbnormalProcessTerminationInformationAsync( this IFabricTestabilityClient client, DateTime start, DateTime end, string hostName, TimeSpan operationTimeout, CancellationToken token) { var systemFabricCient = GetSystemFabricClient(client); var testContext = systemFabricCient.FabricClient.TestManager.TestContext; AbnormalProcessTerminationAction abnornalTerminationAction = new AbnormalProcessTerminationAction(start, end, hostName); abnornalTerminationAction.ActionTimeout = operationTimeout; abnornalTerminationAction.RequestTimeout = TestabilityExtensionsFuture.GetRequestTimeout(operationTimeout); await testContext.ActionExecutor.RunAsync(abnornalTerminationAction, token); return(abnornalTerminationAction.Result); }