namespace Bit.Billing.Test.Utilities; public enum IPNBody { SuccessfulPayment, ECheckPayment, TransactionMissingEntityIds, NonUSDPayment, SuccessfulPaymentForOrganizationCredit, UnsupportedTransactionType, SuccessfulRefund, RefundMissingParentTransaction, SuccessfulPaymentForUserCredit } public static class PayPalTestIPN { public static async Task GetAsync(IPNBody ipnBody) { var fileName = ipnBody switch { IPNBody.ECheckPayment => "echeck-payment.txt", IPNBody.NonUSDPayment => "non-usd-payment.txt", IPNBody.RefundMissingParentTransaction => "refund-missing-parent-transaction.txt", IPNBody.SuccessfulPayment => "successful-payment.txt", IPNBody.SuccessfulPaymentForOrganizationCredit => "successful-payment-org-credit.txt", IPNBody.SuccessfulRefund => "successful-refund.txt", IPNBody.SuccessfulPaymentForUserCredit => "successful-payment-user-credit.txt", IPNBody.TransactionMissingEntityIds => "transaction-missing-entity-ids.txt", IPNBody.UnsupportedTransactionType => "unsupported-transaction-type.txt" }; var content = await EmbeddedResourceReader.ReadAsync("IPN", fileName); return content.Replace("\n", string.Empty); } }