From 88529f0b28cf421f4d1e2b98f37d23bed2e27d41 Mon Sep 17 00:00:00 2001 From: Brendan Hy Date: Fri, 28 Feb 2025 16:19:10 -0800 Subject: [PATCH] fix(billing): hide pay now for self serve partner --- static/gsApp/views/invoiceDetails/actions.tsx | 6 +- .../gsApp/views/invoiceDetails/index.spec.tsx | 55 +++++++++++++++++++ 2 files changed, 60 insertions(+), 1 deletion(-) diff --git a/static/gsApp/views/invoiceDetails/actions.tsx b/static/gsApp/views/invoiceDetails/actions.tsx index 81d5dcc581c0a0..30318038ef43ad 100644 --- a/static/gsApp/views/invoiceDetails/actions.tsx +++ b/static/gsApp/views/invoiceDetails/actions.tsx @@ -83,6 +83,10 @@ function InvoiceDetailsActions({organization, invoice, reloadInvoice}: Props) { } }, [invoice, organization, reloadInvoice, location.query.referrer]); + const isSelfServePartner = + 'isSelfServePartner' in invoice.customer && invoice.customer.isSelfServePartner; + const showPayNowButton = !invoice.isPaid && !invoice.isClosed && !isSelfServePartner; + return ( @@ -95,7 +99,7 @@ function InvoiceDetailsActions({organization, invoice, reloadInvoice}: Props) { )} - {!invoice.isPaid && !invoice.isClosed && ( + {showPayNowButton && ( , + { + router, + } + ); + + await waitFor(() => expect(mockapiInvoice).toHaveBeenCalled()); + + expect(screen.getByText(/Invoice Details/)).toBeInTheDocument(); + expect(screen.getByText(/AWAITING PAYMENT/)).toBeInTheDocument(); + expect(screen.queryByText(/Pay Now/)).not.toBeInTheDocument(); + }); + describe('Invoice Details Attributes', function () { const billingDetails = BillingDetailsFixture({taxNumber: '123456789'}); SubscriptionFixture({organization});