public async Task WhenIAddTheFollowingTransactionFees(Table table) { foreach (TableRow tableRow in table.Rows) { EstateDetails estateDetails = this.TestingContext.GetEstateDetails(tableRow); String token = this.TestingContext.AccessToken; if (String.IsNullOrEmpty(estateDetails.AccessToken) == false) { token = estateDetails.AccessToken; } String contractName = SpecflowTableHelper.GetStringRowValue(tableRow, "ContractDescription"); String productName = SpecflowTableHelper.GetStringRowValue(tableRow, "ProductName"); Contract contract = estateDetails.GetContract(contractName); Product product = contract.GetProduct(productName); AddTransactionFeeForProductToContractRequest addTransactionFeeForProductToContractRequest = new AddTransactionFeeForProductToContractRequest { Value = SpecflowTableHelper .GetDecimalValue(tableRow, "Value"), Description = SpecflowTableHelper.GetStringRowValue(tableRow, "FeeDescription"), CalculationType = SpecflowTableHelper .GetEnumValue <CalculationType>(tableRow, "CalculationType") }; AddTransactionFeeForProductToContractResponse addTransactionFeeForProductToContractResponse = await this.TestingContext.DockerHelper.EstateClient.AddTransactionFeeForProductToContract(token, estateDetails.EstateId, contract.ContractId, product.ProductId, addTransactionFeeForProductToContractRequest, CancellationToken.None); product.AddTransactionFee(addTransactionFeeForProductToContractResponse.TransactionFeeId, addTransactionFeeForProductToContractRequest.CalculationType, addTransactionFeeForProductToContractRequest.Description, addTransactionFeeForProductToContractRequest.Value); } }
public async Task WhenICreateTheFollowingProducts(Table table) { foreach (TableRow tableRow in table.Rows) { EstateDetails estateDetails = this.TestingContext.GetEstateDetails(tableRow); String token = this.TestingContext.AccessToken; if (String.IsNullOrEmpty(estateDetails.AccessToken) == false) { token = estateDetails.AccessToken; } String contractName = SpecflowTableHelper.GetStringRowValue(tableRow, "ContractDescription"); Contract contract = estateDetails.GetContract(contractName); String productValue = SpecflowTableHelper.GetStringRowValue(tableRow, "Value"); AddProductToContractRequest addProductToContractRequest = new AddProductToContractRequest { ProductName = SpecflowTableHelper.GetStringRowValue(tableRow, "ProductName"), DisplayText = SpecflowTableHelper.GetStringRowValue(tableRow, "DisplayText"), Value = null }; if (String.IsNullOrEmpty(productValue) == false) { addProductToContractRequest.Value = Decimal.Parse(productValue); } AddProductToContractResponse addProductToContractResponse = await this.TestingContext.DockerHelper.EstateClient.AddProductToContract(token, estateDetails.EstateId, contract.ContractId, addProductToContractRequest, CancellationToken.None); contract.AddProduct(addProductToContractResponse.ProductId, addProductToContractRequest.ProductName, addProductToContractRequest.DisplayText, addProductToContractRequest.Value); } }