Add Stripe donation flow

This commit is contained in:
hz
2026-07-19 22:26:33 -05:00
parent f12904bf73
commit dec5e74aa7
30 changed files with 1053 additions and 1 deletions
+28
View File
@@ -0,0 +1,28 @@
using QuestionsApi.Models;
using Xunit;
namespace QuestionsApi.Tests;
public sealed class DonationTests
{
[Theory]
[InlineData(499)]
[InlineData(1_000_001)]
public void RejectsAmountsOutsideConfiguredRange(long amountCents) =>
Assert.NotNull(DonationValidator.ValidateAmount(amountCents));
[Theory]
[InlineData(500)]
[InlineData(1_000)]
[InlineData(1_000_000)]
public void AcceptsAmountsInsideConfiguredRange(long amountCents) =>
Assert.Null(DonationValidator.ValidateAmount(amountCents));
[Fact]
public void PublicStatusDoesNotExposeStripeOrUserIdentifiers()
{
Assert.Null(typeof(DonationStatusResponse).GetProperty(nameof(Donation.UserId)));
Assert.Null(typeof(DonationStatusResponse).GetProperty(nameof(Donation.StripeCheckoutSessionId)));
Assert.Null(typeof(DonationStatusResponse).GetProperty(nameof(Donation.StripePaymentIntentId)));
}
}