Skip to content

fix: XML docs, IWebhookPaymentProvider, DI fix — CS1591 + testy#31

Merged
nieprzecietny merged 13 commits intomasterfrom
fix/xml-docs-master
Mar 25, 2026
Merged

fix: XML docs, IWebhookPaymentProvider, DI fix — CS1591 + testy#31
nieprzecietny merged 13 commits intomasterfrom
fix/xml-docs-master

Conversation

@szeregowy-agent
Copy link
Contributor

Co robi ten PR

XML Documentation (CS1591)

Pełna dokumentacja XML dla wszystkich projektów src:

  • TailoredApps.Shared.MediatR.ML — 19 plików
  • TailoredApps.Shared.MediatR — 12 plików (tłumaczenie PL→EN)
  • TailoredApps.Shared.EntityFramework — uzupełnienie 5 plików
  • TailoredApps.Shared.Querying + Email.Models + Email.Office365
  • TailoredApps.Shared.Email — 6 plików
  • Wszystkie payment providers — uzupełnienie

IWebhookPaymentProvider

Nowa abstrakcja dla obsługi webhooków HTTP:

  • PaymentWebhookRequest / PaymentWebhookResult / IWebhookPaymentProvider
  • IPaymentService.HandleWebhookAsync(providerKey, request)
  • Implementacje: Stripe, CashBill, Adyen, HotPay, PayNow, PayU, Przelewy24, Revolut, Tpay
  • Testy jednostkowe: 28 testów w WebhookProviderTests.cs

DI Fix

Usunięto duplikat IPaymentProvider z Register*Provider() — powodował InvalidOperationException: Sequence contains more than one matching element w PaymentService.Single().

Szeregowy added 9 commits March 25, 2026 09:52
…gle() rzucał InvalidOperationException

Register*Provider() nie powinno rejestrować IPaymentProvider — to zadanie PaymentOptionsBuilder.
RegisterPaymentProvider<T>(). Zostaje tylko concrete type + IWebhookPaymentProvider.
Builder aktualizowany: rejestruje IWebhookPaymentProvider gdy provider wspiera ten interfejs.
@codecov
Copy link

codecov bot commented Mar 25, 2026

Codecov Report

❌ Patch coverage is 67.88747% with 605 lines in your changes missing coverage. Please review.
✅ Project coverage is 56.70%. Comparing base (e46f9b7) to head (548ffe1).
⚠️ Report is 4 commits behind head on master.

Files with missing lines Patch % Lines
...ed.Payments.Provider.Stripe/StripeServiceCaller.cs 14.28% 54 Missing ⚠️
...Apps.Shared.Payments.Provider.PayU/PayUProvider.cs 73.09% 46 Missing and 7 partials ⚠️
src/TailoredApps.Shared.Email/SmtpEmailProvider.cs 0.00% 50 Missing ⚠️
...pps.Shared.EntityFramework/Querying/PagingQuery.cs 0.00% 32 Missing ⚠️
...Shared.MediatR/PipelineBehaviours/RetryBehavior.cs 0.00% 32 Missing ⚠️
...ps.Shared.EntityFramework/UnitOfWork/UnitOfWork.cs 57.57% 27 Missing and 1 partial ⚠️
...oredApps.Shared.MediatR/DI/PipelineRegistration.cs 0.00% 27 Missing ⚠️
...pps.Shared.EntityFramework/Querying/PagedResult.cs 0.00% 23 Missing ⚠️
...red.MediatR/PipelineBehaviours/FallbackBehavior.cs 0.00% 18 Missing ⚠️
...MessageBuilder/TokenReplacingMailMessageBuilder.cs 0.00% 17 Missing ⚠️
... and 37 more
Additional details and impacted files
@@             Coverage Diff             @@
##           master      #31       +/-   ##
===========================================
+ Coverage   41.71%   56.70%   +14.99%     
===========================================
  Files          99      101        +2     
  Lines        3131     2871      -260     
  Branches      231      292       +61     
===========================================
+ Hits         1306     1628      +322     
+ Misses       1783     1167      -616     
- Partials       42       76       +34     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Szeregowy added 4 commits March 25, 2026 10:07
…PayU, Przelewy24, PayNow, Revolut, HotPay, Adyen

- Nowe pliki: ExtraCoverageTests.cs, ServiceCallerHttpTests.cs
- StripeProvider: mocked IStripeServiceCaller — GetChannels, RequestPayment, GetStatus, TransactionStatusChange, HandleWebhookAsync
- Każdy provider: dodatkowe testy gałęzi (chargeback, tr_status, ABANDONED, ORDER_CANCELLED, PAYMENT_DECLINED, itp.)
- ServiceCaller HTTP tests: mockowany HttpMessageHandler dla GetAccessToken, CreatePayment, GetStatus, VerifyTransaction
- ConfigureOptions tests: Configure() + null-section smoke tests dla wszystkich providerów
- Total line coverage: 66% → 92.04% (cel: ≥80% ✓)
…ą wywołania HTTP do momentu dostępności środowisk integracyjnych
Copy link
Member

@nieprzecietny nieprzecietny left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

approve

@nieprzecietny nieprzecietny merged commit c6ee6da into master Mar 25, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants