From 57a51ab2da5159bb30e1cd2556e5ce7ae2ffa51c Mon Sep 17 00:00:00 2001 From: binwiederhier Date: Fri, 8 Aug 2025 15:16:53 -0400 Subject: [PATCH] Fix tests --- server/server_payments_test.go | 27 ++++++++++++++------------- user/manager_test.go | 5 ++--- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/server/server_payments_test.go b/server/server_payments_test.go index d72d2a6b..5dd75921 100644 --- a/server/server_payments_test.go +++ b/server/server_payments_test.go @@ -8,6 +8,7 @@ import ( "github.com/stretchr/testify/require" "github.com/stripe/stripe-go/v74" "golang.org/x/time/rate" + "heckel.io/ntfy/v2/payments" "heckel.io/ntfy/v2/user" "heckel.io/ntfy/v2/util" "io" @@ -347,8 +348,8 @@ func TestPayments_Checkout_Success_And_Increase_Rate_Limits_Reset_Visitor(t *tes require.Nil(t, u.Tier) require.Equal(t, "", u.Billing.StripeCustomerID) require.Equal(t, "", u.Billing.StripeSubscriptionID) - require.Equal(t, stripe.SubscriptionStatus(""), u.Billing.StripeSubscriptionStatus) - require.Equal(t, stripe.PriceRecurringInterval(""), u.Billing.StripeSubscriptionInterval) + require.Equal(t, payments.SubscriptionStatus(""), u.Billing.StripeSubscriptionStatus) + require.Equal(t, payments.PriceRecurringInterval(""), u.Billing.StripeSubscriptionInterval) require.Equal(t, int64(0), u.Billing.StripeSubscriptionPaidUntil.Unix()) require.Equal(t, int64(0), u.Billing.StripeSubscriptionCancelAt.Unix()) require.Equal(t, int64(0), u.Stats.Messages) // Messages and emails are not persisted for no-tier users! @@ -364,8 +365,8 @@ func TestPayments_Checkout_Success_And_Increase_Rate_Limits_Reset_Visitor(t *tes require.Equal(t, "starter", u.Tier.Code) // Not "pro" require.Equal(t, "acct_5555", u.Billing.StripeCustomerID) require.Equal(t, "sub_1234", u.Billing.StripeSubscriptionID) - require.Equal(t, stripe.SubscriptionStatusActive, u.Billing.StripeSubscriptionStatus) - require.Equal(t, stripe.PriceRecurringIntervalMonth, u.Billing.StripeSubscriptionInterval) + require.Equal(t, payments.SubscriptionStatus(stripe.SubscriptionStatusActive), u.Billing.StripeSubscriptionStatus) + require.Equal(t, payments.PriceRecurringInterval(stripe.PriceRecurringIntervalMonth), u.Billing.StripeSubscriptionInterval) require.Equal(t, int64(123456789), u.Billing.StripeSubscriptionPaidUntil.Unix()) require.Equal(t, int64(0), u.Billing.StripeSubscriptionCancelAt.Unix()) require.Equal(t, int64(0), u.Stats.Messages) @@ -475,8 +476,8 @@ func TestPayments_Webhook_Subscription_Updated_Downgrade_From_PastDue_To_Active( billing := &user.Billing{ StripeCustomerID: "acct_5555", StripeSubscriptionID: "sub_1234", - StripeSubscriptionStatus: stripe.SubscriptionStatusPastDue, - StripeSubscriptionInterval: stripe.PriceRecurringIntervalMonth, + StripeSubscriptionStatus: payments.SubscriptionStatus(stripe.SubscriptionStatusPastDue), + StripeSubscriptionInterval: payments.PriceRecurringInterval(stripe.PriceRecurringIntervalMonth), StripeSubscriptionPaidUntil: time.Unix(123, 0), StripeSubscriptionCancelAt: time.Unix(456, 0), } @@ -519,10 +520,10 @@ func TestPayments_Webhook_Subscription_Updated_Downgrade_From_PastDue_To_Active( require.Equal(t, "starter", u.Tier.Code) // Not "pro" require.Equal(t, "acct_5555", u.Billing.StripeCustomerID) require.Equal(t, "sub_1234", u.Billing.StripeSubscriptionID) - require.Equal(t, stripe.SubscriptionStatusActive, u.Billing.StripeSubscriptionStatus) // Not "past_due" - require.Equal(t, stripe.PriceRecurringIntervalYear, u.Billing.StripeSubscriptionInterval) // Not "month" - require.Equal(t, int64(1674268231), u.Billing.StripeSubscriptionPaidUntil.Unix()) // Updated - require.Equal(t, int64(1674299999), u.Billing.StripeSubscriptionCancelAt.Unix()) // Updated + require.Equal(t, payments.SubscriptionStatus(stripe.SubscriptionStatusActive), u.Billing.StripeSubscriptionStatus) // Not "past_due" + require.Equal(t, payments.PriceRecurringInterval(stripe.PriceRecurringIntervalYear), u.Billing.StripeSubscriptionInterval) // Not "month" + require.Equal(t, int64(1674268231), u.Billing.StripeSubscriptionPaidUntil.Unix()) // Updated + require.Equal(t, int64(1674299999), u.Billing.StripeSubscriptionCancelAt.Unix()) // Updated // Verify that reservations were deleted r, err := s.userManager.Reservations("phil") @@ -582,8 +583,8 @@ func TestPayments_Webhook_Subscription_Deleted(t *testing.T) { require.Nil(t, s.userManager.ChangeBilling(u.Name, &user.Billing{ StripeCustomerID: "acct_5555", StripeSubscriptionID: "sub_1234", - StripeSubscriptionStatus: stripe.SubscriptionStatusPastDue, - StripeSubscriptionInterval: stripe.PriceRecurringIntervalMonth, + StripeSubscriptionStatus: payments.SubscriptionStatus(stripe.SubscriptionStatusPastDue), + StripeSubscriptionInterval: payments.PriceRecurringInterval(stripe.PriceRecurringIntervalMonth), StripeSubscriptionPaidUntil: time.Unix(123, 0), StripeSubscriptionCancelAt: time.Unix(0, 0), })) @@ -600,7 +601,7 @@ func TestPayments_Webhook_Subscription_Deleted(t *testing.T) { require.Nil(t, u.Tier) require.Equal(t, "acct_5555", u.Billing.StripeCustomerID) require.Equal(t, "", u.Billing.StripeSubscriptionID) - require.Equal(t, stripe.SubscriptionStatus(""), u.Billing.StripeSubscriptionStatus) + require.Equal(t, payments.SubscriptionStatus(""), u.Billing.StripeSubscriptionStatus) require.Equal(t, int64(0), u.Billing.StripeSubscriptionPaidUntil.Unix()) require.Equal(t, int64(0), u.Billing.StripeSubscriptionCancelAt.Unix()) diff --git a/user/manager_test.go b/user/manager_test.go index 5b0b3fa5..b8817682 100644 --- a/user/manager_test.go +++ b/user/manager_test.go @@ -5,7 +5,6 @@ import ( "fmt" "github.com/stretchr/testify/require" "golang.org/x/crypto/bcrypt" - "heckel.io/ntfy/v2/payments" "heckel.io/ntfy/v2/util" "net/netip" "path/filepath" @@ -164,8 +163,8 @@ func TestManager_AddUser_And_Query(t *testing.T) { require.Nil(t, a.ChangeBilling("user", &Billing{ StripeCustomerID: "acct_123", StripeSubscriptionID: "sub_123", - StripeSubscriptionStatus: payments.SubscriptionStatusActive, - StripeSubscriptionInterval: payments.PriceRecurringIntervalMonth, + StripeSubscriptionStatus: "active", + StripeSubscriptionInterval: "month", StripeSubscriptionPaidUntil: time.Now().Add(time.Hour), StripeSubscriptionCancelAt: time.Unix(0, 0), }))