public async Task WhenICreateTheFollowingOperators(Table table) { foreach (TableRow tableRow in table.Rows) { String operatorName = SpecflowTableHelper.GetStringRowValue(tableRow, "OperatorName"); Boolean requireCustomMerchantNumber = SpecflowTableHelper.GetBooleanValue(tableRow, "RequireCustomMerchantNumber"); Boolean requireCustomTerminalNumber = SpecflowTableHelper.GetBooleanValue(tableRow, "RequireCustomTerminalNumber"); CreateOperatorRequest createOperatorRequest = new CreateOperatorRequest { Name = operatorName, RequireCustomMerchantNumber = requireCustomMerchantNumber, RequireCustomTerminalNumber = requireCustomTerminalNumber }; // lookup the estate id based on the name in the table EstateDetails estateDetails = this.TestingContext.GetEstateDetails(tableRow); CreateOperatorResponse response = await this.TestingContext.DockerHelper.EstateClient.CreateOperator(this.TestingContext.AccessToken, estateDetails.EstateId, createOperatorRequest, CancellationToken.None).ConfigureAwait(false); response.ShouldNotBeNull(); response.EstateId.ShouldNotBe(Guid.Empty); response.OperatorId.ShouldNotBe(Guid.Empty); // Cache the estate id estateDetails.AddOperator(response.OperatorId, operatorName); this.TestingContext.Logger.LogInformation($"Operator {operatorName} created with Id {response.OperatorId} for Estate {estateDetails.EstateName}"); } }