Skip to content

Sort wishes by donation amount #488

Sort wishes by donation amount

Sort wishes by donation amount #488

This check has been archived and is scheduled for deletion. Learn more about checks retention
GitHub Actions / JEST Tests succeeded Aug 7, 2023 in 1s

JEST Tests ✅

Tests passed successfully

✅ test-results.xml

213 tests were completed in 84s with 213 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
AccountController 2✅ 1s
AccountService 1✅ 797ms
AppController 1✅ 380ms
AppService 1✅ 322ms
AuthService 11✅ 1s
BankaccountController 1✅ 687ms
BankaccountService 1✅ 409ms
BankTransactionsController 4✅ 1s
BankTransactionsFileController 1✅ 1s
BankTransactionsFileService 1✅ 673ms
BankTransactionsService 1✅ 2s
BenefactorController 1✅ 666ms
BenefactorService 1✅ 377ms
BeneficiaryController 8✅ 756ms
BeneficiaryService 1✅ 391ms
CampaignController 12✅ 1s
CampaignFileController 4✅ 1s
CampaignFileController 4✅ 1s
CampaignFileService 1✅ 734ms
CampaignFileService 1✅ 689ms
CampaignNewsController 1✅ 635ms
CampaignNewsService 1✅ 404ms
CampaignService 1✅ 692ms
CampaignTypesController 7✅ 732ms
CampaignTypesService 1✅ 389ms
CityController 7✅ 743ms
CityService 1✅ 401ms
CompanyController 1✅ 657ms
CompanyService 1✅ 403ms
CoordinatorController 5✅ 704ms
CoordinatorService 4✅ 458ms
CountryController 8✅ 742ms
CountryService 1✅ 430ms
DonationsController 6✅ 1s
DonationsService 1✅ 944ms
DonationWishController 1✅ 1s
DonationWishService 1✅ 408ms
EmailService enabled 7✅ 697ms
ExpensesController 7✅ 2s
ExpensesService 1✅ 668ms
HealthController 1✅ 563ms
ImportTransactionsTask 6✅ 3s
ImportTransactionsTask 2✅ 1s
InfoRequestController 1✅ 946ms
InfoRequestService 1✅ 1s
IrregularityController 1✅ 962ms
IrregularityFileController 1✅ 1s
IrregularityFileService 1✅ 730ms
IrregularityService 1✅ 849ms
LoginController 2✅ 993ms
OrganizerController 1✅ 621ms
OrganizerService 1✅ 472ms
PaypalController 1✅ 761ms
PaypalService 1✅ 671ms
PersonController 1✅ 621ms
PersonService with enable client list 5✅ 478ms
podkrepiTypes 1✅ 174ms
PrismaService 1✅ 387ms
ProviderLoginController 2✅ 1000ms
RecurringDonationController 1✅ 774ms
RecurringDonationService 6✅ 756ms
RefreshController 2✅ 995ms
RegisterController 2✅ 2s
StripePaymentService 13✅ 2s
SupportController 3✅ 1s
SupportService 1✅ 723ms
TransferController 11✅ 886ms
TransferService 1✅ 1s
VaultController 8✅ 812ms
VaultService 1✅ 697ms
WithdrawalController 11✅ 1s
WithdrawalService 1✅ 398ms

✅ AccountController

AccountController should be defined
  ✅ AccountController should be defined
AccountController should create person for authenticated user
  ✅ AccountController should create person for authenticated user

✅ AccountService

AccountService should be defined
  ✅ AccountService should be defined

✅ AppController

AppController getData should return "Welcome to Podkrepi.bg Backend API! See Swagger docs at /swagger"
  ✅ AppController getData should return "Welcome to Podkrepi.bg Backend API! See Swagger docs at /swagger"

✅ AppService

AppService getData should return "Welcome to Podkrepi.bg Backend API! See Swagger docs at /swagger"
  ✅ AppService getData should return "Welcome to Podkrepi.bg Backend API! See Swagger docs at /swagger"

✅ AuthService

AuthService should be defined
  ✅ AuthService should be defined
AuthService issueToken should call auth
  ✅ AuthService issueToken should call auth
AuthService token endpoint should call tokenEndpoint
  ✅ AuthService token endpoint should call tokenEndpoint
AuthService refresh should call issueTokenFromRefresh
  ✅ AuthService refresh should call issueTokenFromRefresh
AuthService provider token call should call issueTokenFromProvider
  ✅ AuthService provider token call should call issueTokenFromProvider
AuthService login should call issueGrant - without updating person
  ✅ AuthService login should call issueGrant - without updating person
AuthService login should call issueGrant - with updating person due to keycloak mismatch
  ✅ AuthService login should call issueGrant - with updating person due to keycloak mismatch
AuthService login should call issueGrant - with creating person due to not being found
  ✅ AuthService login should call issueGrant - with creating person due to not being found
AuthService login should handle bad password on login
  ✅ AuthService login should handle bad password on login
AuthService createUser should call keycloak and prisma
  ✅ AuthService createUser should call keycloak and prisma
AuthService createUser should handle bad password on registration
  ✅ AuthService createUser should handle bad password on registration

✅ BankaccountController

BankaccountController should be defined
  ✅ BankaccountController should be defined

✅ BankaccountService

BankaccountService should be defined
  ✅ BankaccountService should be defined

✅ BankTransactionsController

BankTransactionsController should be defined
  ✅ BankTransactionsController should be defined
BankTransactionsController findAll  should return proper bank transactions list
  ✅ BankTransactionsController findAll  should return proper bank transactions list
BankTransactionsController editRef  should update the campaign payment ref of a failed Bank Donation Import
  ✅ BankTransactionsController editRef  should update the campaign payment ref of a failed Bank Donation Import
BankTransactionsController rerunBankSync  should rerun bank transactions for specific dates
  ✅ BankTransactionsController rerunBankSync  should rerun bank transactions for specific dates

✅ BankTransactionsFileController

BankTransactionsFileController should be defined
  ✅ BankTransactionsFileController should be defined

✅ BankTransactionsFileService

BankTransactionsFileService should be defined
  ✅ BankTransactionsFileService should be defined

✅ BankTransactionsService

BankTransactionsService should be defined
  ✅ BankTransactionsService should be defined

✅ BenefactorController

BenefactorController should be defined
  ✅ BenefactorController should be defined

✅ BenefactorService

BenefactorService should be defined
  ✅ BenefactorService should be defined

✅ BeneficiaryController

BeneficiaryController should be defined
  ✅ BeneficiaryController should be defined
BeneficiaryController should list all beneficiaries in db
  ✅ BeneficiaryController should list all beneficiaries in db
BeneficiaryController should get one beneficiary
  ✅ BeneficiaryController should get one beneficiary
BeneficiaryController should throw error if beneficiary does not exist
  ✅ BeneficiaryController should throw error if beneficiary does not exist
BeneficiaryController it should create beneficiary
  ✅ BeneficiaryController it should create beneficiary
BeneficiaryController it should update beneficiary
  ✅ BeneficiaryController it should update beneficiary
BeneficiaryController should remove one item
  ✅ BeneficiaryController should remove one item
BeneficiaryController it should create beneficiary as company
  ✅ BeneficiaryController it should create beneficiary as company

✅ BeneficiaryService

BeneficiaryService should be defined
  ✅ BeneficiaryService should be defined

✅ CampaignController

CampaignController should be defined
  ✅ CampaignController should be defined
CampaignController getData  should return proper campaign list
  ✅ CampaignController getData  should return proper campaign list
CampaignController getAdminList  should return proper campaign list
  ✅ CampaignController getAdminList  should return proper campaign list
CampaignController viewBySlug  should return proper campaign
  ✅ CampaignController viewBySlug  should return proper campaign
CampaignController viewBySlug  should return campaign if older slug was used
  ✅ CampaignController viewBySlug  should return campaign if older slug was used
CampaignController viewBySlug  should throw error for not existing campaign
  ✅ CampaignController viewBySlug  should throw error for not existing campaign
CampaignController update try to update as beneficiery of the campaign
  ✅ CampaignController update try to update as beneficiery of the campaign
CampaignController update try to update as coordinator of the campaign
  ✅ CampaignController update try to update as coordinator of the campaign
CampaignController update try to update as organizer of the campaign
  ✅ CampaignController update try to update as organizer of the campaign
CampaignController update try to update as some other user
  ✅ CampaignController update try to update as some other user
CampaignController create  should call create with coordinator id
  ✅ CampaignController create  should call create with coordinator id
CampaignController create  calling without coordinator id should make the creator a coordinator
  ✅ CampaignController create  calling without coordinator id should make the creator a coordinator

✅ CampaignFileController

CampaignFileController should be defined
  ✅ CampaignFileController should be defined
CampaignFileController should call service for create campaign file for admin user
  ✅ CampaignFileController should call service for create campaign file for admin user
CampaignFileController should throw an error for missing person
  ✅ CampaignFileController should throw an error for missing person
CampaignFileController should throw an error for user not owning updated campaign
  ✅ CampaignFileController should throw an error for user not owning updated campaign

✅ CampaignFileController

CampaignFileController should be defined
  ✅ CampaignFileController should be defined
CampaignFileController should call service for create campaign file for admin user
  ✅ CampaignFileController should call service for create campaign file for admin user
CampaignFileController should throw an error for missing person
  ✅ CampaignFileController should throw an error for missing person
CampaignFileController should throw an error for user not having access
  ✅ CampaignFileController should throw an error for user not having access

✅ CampaignFileService

CampaignFileService should be defined
  ✅ CampaignFileService should be defined

✅ CampaignFileService

CampaignFileService should be defined
  ✅ CampaignFileService should be defined

✅ CampaignNewsController

CampaignNewsController should be defined
  ✅ CampaignNewsController should be defined

✅ CampaignNewsService

CampaignNewsService should be defined
  ✅ CampaignNewsService should be defined

✅ CampaignService

CampaignService should be defined
  ✅ CampaignService should be defined

✅ CampaignTypesController

CampaignTypesController should be defined
  ✅ CampaignTypesController should be defined
CampaignTypesController should list all campaign types in db
  ✅ CampaignTypesController should list all campaign types in db
CampaignTypesController should get one campaign type
  ✅ CampaignTypesController should get one campaign type
CampaignTypesController should throw error if campaign type does not exist
  ✅ CampaignTypesController should throw error if campaign type does not exist
CampaignTypesController it should create campaign type
  ✅ CampaignTypesController it should create campaign type
CampaignTypesController it should update campaign type
  ✅ CampaignTypesController it should update campaign type
CampaignTypesController should remove one item
  ✅ CampaignTypesController should remove one item

✅ CampaignTypesService

CampaignTypesService should be defined
  ✅ CampaignTypesService should be defined

✅ CityController

CityController should be defined
  ✅ CityController should be defined
CityController should list all cities
  ✅ CityController should list all cities
CityController should get 1 city
  ✅ CityController should get 1 city
CityController should throw error if city does not exist
  ✅ CityController should throw error if city does not exist
CityController should create a city
  ✅ CityController should create a city
CityController should update a city
  ✅ CityController should update a city
CityController should remove 1 city
  ✅ CityController should remove 1 city

✅ CityService

CityService should be defined
  ✅ CityService should be defined

✅ CompanyController

CompanyController should be defined
  ✅ CompanyController should be defined

✅ CompanyService

CompanyService should be defined
  ✅ CompanyService should be defined

✅ CoordinatorController

CoordinatorController should be defined
  ✅ CoordinatorController should be defined
CoordinatorController getData should list all coordinators
  ✅ CoordinatorController getData should list all coordinators
CoordinatorController getData should get one city
  ✅ CoordinatorController getData should get one city
CoordinatorController create should create new coordinator
  ✅ CoordinatorController create should create new coordinator
CoordinatorController delete should update coordinator
  ✅ CoordinatorController delete should update coordinator

✅ CoordinatorService

CoordinatorService should be defined
  ✅ CoordinatorService should be defined
CoordinatorService should return all
  ✅ CoordinatorService should return all
CoordinatorService Find one should return searching coordinator
  ✅ CoordinatorService Find one should return searching coordinator
CoordinatorService delete should delete
  ✅ CoordinatorService delete should delete

✅ CountryController

CountryController should be defined
  ✅ CountryController should be defined
CountryController should list all countries
  ✅ CountryController should list all countries
CountryController should get 1 country
  ✅ CountryController should get 1 country
CountryController should throw error if trying to get a country that does not exist
  ✅ CountryController should throw error if trying to get a country that does not exist
CountryController should create a country
  ✅ CountryController should create a country
CountryController should update a country
  ✅ CountryController should update a country
CountryController should throw error if trying to update a country that does not exist
  ✅ CountryController should throw error if trying to update a country that does not exist
CountryController should remove a country
  ✅ CountryController should remove a country

✅ CountryService

CountryService should be defined
  ✅ CountryService should be defined

✅ DonationsController

DonationsController should be defined
  ✅ DonationsController should be defined
DonationsController createCheckoutSession should create stripe session for active campaign
  ✅ DonationsController createCheckoutSession should create stripe session for active campaign
DonationsController createCheckoutSession should not create stripe session for completed campaign
  ✅ DonationsController createCheckoutSession should not create stripe session for completed campaign
DonationsController createCheckoutSession should create stripe session for completed campaign if allowed
  ✅ DonationsController createCheckoutSession should create stripe session for completed campaign if allowed
DonationsController should update a donations donor, when it is changed
  ✅ DonationsController should update a donations donor, when it is changed
DonationsController should update a donation status, when it is changed
  ✅ DonationsController should update a donation status, when it is changed

✅ DonationsService

DonationsService should be defined
  ✅ DonationsService should be defined

✅ DonationWishController

DonationWishController should be defined
  ✅ DonationWishController should be defined

✅ DonationWishService

DonationWishService should be defined
  ✅ DonationWishService should be defined

✅ EmailService enabled

EmailService enabled  should be defined
  ✅ EmailService enabled  should be defined
EmailService enabled  send() should send email successfully
  ✅ EmailService enabled  send() should send email successfully
EmailService enabled  sendFromTemplate() should send email successfully
  ✅ EmailService enabled  sendFromTemplate() should send email successfully
EmailService enabled  sendFromTemplate() should send email successfully with default sender
  ✅ EmailService enabled  sendFromTemplate() should send email successfully with default sender
EmailService enabled  sendFromTemplate() should throw error for missing recipient
  ✅ EmailService enabled  sendFromTemplate() should throw error for missing recipient
EmailService disabled  should be defined
  ✅ EmailService disabled  should be defined
EmailService disabled  send() should not send email if service is not enabled
  ✅ EmailService disabled  send() should not send email if service is not enabled

✅ ExpensesController

ExpensesController should be defined
  ✅ ExpensesController should be defined
ExpensesController create and update data should create an expense
  ✅ ExpensesController create and update data should create an expense
ExpensesController create and update data should not create an expense with insufficient balance
  ✅ ExpensesController create and update data should not create an expense with insufficient balance
ExpensesController create and update data should update an expense, when it is approved
  ✅ ExpensesController create and update data should update an expense, when it is approved
ExpensesController create and update data should raise an exception, since the user is not authorized
  ✅ ExpensesController create and update data should raise an exception, since the user is not authorized
ExpensesController create and update data should not update a withdrawal, when it is already approved/cancelled
  ✅ ExpensesController create and update data should not update a withdrawal, when it is already approved/cancelled
ExpensesController create and update data should not update an expense, when its vault is being changed
  ✅ ExpensesController create and update data should not update an expense, when its vault is being changed

✅ ExpensesService

ExpensesService should be defined
  ✅ ExpensesService should be defined

✅ HealthController

HealthController should be defined
  ✅ HealthController should be defined

✅ ImportTransactionsTask

ImportTransactionsTask should be defined
  ✅ ImportTransactionsTask should be defined
ImportTransactionsTask importBankTransactionsTASK should import IRIS transactions
  ✅ ImportTransactionsTask importBankTransactionsTASK should import IRIS transactions
ImportTransactionsTask importBankTransactionsTASK should not run if all current transactions for the day have been processed
  ✅ ImportTransactionsTask importBankTransactionsTASK should not run if all current transactions for the day have been processed
ImportTransactionsTask importBankTransactionsTASK should not run if no transactions have been fetched
  ✅ ImportTransactionsTask importBankTransactionsTASK should not run if no transactions have been fetched
ImportTransactionsTask notifyForExpiringIrisConsentTASK should notify for expiring Iris Consent
  ✅ ImportTransactionsTask notifyForExpiringIrisConsentTASK should notify for expiring Iris Consent
ImportTransactionsTask should NOT notify for expiring Iris Consent before expTreshold is met
  ✅ ImportTransactionsTask should NOT notify for expiring Iris Consent before expTreshold is met

✅ ImportTransactionsTask

ImportTransactionsTask should be defined
  ✅ ImportTransactionsTask should be defined
ImportTransactionsTask initIrisTasks should init all dynamicaly scheduled tasks
  ✅ ImportTransactionsTask initIrisTasks should init all dynamicaly scheduled tasks

✅ InfoRequestController

InfoRequestController should be defined
  ✅ InfoRequestController should be defined

✅ InfoRequestService

InfoRequestService should be defined
  ✅ InfoRequestService should be defined

✅ IrregularityController

IrregularityController should be defined
  ✅ IrregularityController should be defined

✅ IrregularityFileController

IrregularityFileController should be defined
  ✅ IrregularityFileController should be defined

✅ IrregularityFileService

IrregularityFileService should be defined
  ✅ IrregularityFileService should be defined

✅ IrregularityService

IrregularityService should be defined
  ✅ IrregularityService should be defined

✅ LoginController

LoginController should be defined
  ✅ LoginController should be defined
LoginController createUser should call createUser
  ✅ LoginController createUser should call createUser

✅ OrganizerController

OrganizerController should be defined
  ✅ OrganizerController should be defined

✅ OrganizerService

OrganizerService should be defined
  ✅ OrganizerService should be defined

✅ PaypalController

PaypalController should be defined
  ✅ PaypalController should be defined

✅ PaypalService

PaypalService should be defined
  ✅ PaypalService should be defined

✅ PersonController

PersonController should be defined
  ✅ PersonController should be defined

✅ PersonService with enable client list

PersonService with enable client list  should be defined
  ✅ PersonService with enable client list  should be defined
PersonService with enable client list  should create person and add it to contact list
  ✅ PersonService with enable client list  should create person and add it to contact list
PersonService with enable client list  should create person without adding it to contact list
  ✅ PersonService with enable client list  should create person without adding it to contact list
PersonService with disable client list  should be defined
  ✅ PersonService with disable client list  should be defined
PersonService with disable client list  should create person without adding it to contact list
  ✅ PersonService with disable client list  should create person without adding it to contact list

✅ podkrepiTypes

podkrepiTypes should work
  ✅ podkrepiTypes should work

✅ PrismaService

PrismaService should be defined
  ✅ PrismaService should be defined

✅ ProviderLoginController

ProviderLoginController should be defined
  ✅ ProviderLoginController should be defined
ProviderLoginController refreshToken should call refreshToken
  ✅ ProviderLoginController refreshToken should call refreshToken

✅ RecurringDonationController

RecurringDonationController should be defined
  ✅ RecurringDonationController should be defined

✅ RecurringDonationService

RecurringDonationService should be defined
  ✅ RecurringDonationService should be defined
RecurringDonationService should return all recurring donations
  ✅ RecurringDonationService should return all recurring donations
RecurringDonationService should return a recurring donation by id
  ✅ RecurringDonationService should return a recurring donation by id
RecurringDonationService should call stripe cancel service my subscription id
  ✅ RecurringDonationService should call stripe cancel service my subscription id
RecurringDonationService should cancel a subscription in db
  ✅ RecurringDonationService should cancel a subscription in db
RecurringDonationService should create  a subscription in db
  ✅ RecurringDonationService should create  a subscription in db

✅ RefreshController

RefreshController should be defined
  ✅ RefreshController should be defined
RefreshController refreshToken should call refreshToken
  ✅ RefreshController refreshToken should call refreshToken

✅ RegisterController

RegisterController should be defined
  ✅ RegisterController should be defined
RegisterController createUser should call createUser
  ✅ RegisterController createUser should call createUser

✅ StripePaymentService

StripePaymentService should be defined
  ✅ StripePaymentService should be defined
StripePaymentService should handle payment_intent.created
  ✅ StripePaymentService should handle payment_intent.created
StripePaymentService should handle payment_intent.canceled
  ✅ StripePaymentService should handle payment_intent.canceled
StripePaymentService should handle charge.succeeded for not anonymous user
  ✅ StripePaymentService should handle charge.succeeded for not anonymous user
StripePaymentService should handle charge.succeeded for anonymous user
  ✅ StripePaymentService should handle charge.succeeded for anonymous user
StripePaymentService calculate payment-intent.created
  ✅ StripePaymentService calculate payment-intent.created
StripePaymentService calculate payment-intent.succeeded with BG tax included in charge
  ✅ StripePaymentService calculate payment-intent.succeeded with BG tax included in charge
StripePaymentService should handle customer.subscription.created
  ✅ StripePaymentService should handle customer.subscription.created
StripePaymentService should handle invoice.paid
  ✅ StripePaymentService should handle invoice.paid
StripePaymentService should cancel all active subscriptions if the campaign is completed
  ✅ StripePaymentService should cancel all active subscriptions if the campaign is completed
 calculate payment-intent.succeeded with BG tax not included in charge
  ✅ calculate payment-intent.succeeded with BG tax not included in charge
 calculate payment-intent.succeeded with US tax included in charge
  ✅ calculate payment-intent.succeeded with US tax included in charge
 calculate payment-intent.succeeded with GB tax included in charge
  ✅ calculate payment-intent.succeeded with GB tax included in charge

✅ SupportController

SupportController should be defined
  ✅ SupportController should be defined
SupportController getSuporters should list all supporters in db
  ✅ SupportController getSuporters should list all supporters in db
SupportController getInfoRequests should list all info requests in db
  ✅ SupportController getInfoRequests should list all info requests in db

✅ SupportService

SupportService should be defined
  ✅ SupportService should be defined

✅ TransferController

TransferController should be defined
  ✅ TransferController should be defined
TransferController should list all transfers
  ✅ TransferController should list all transfers
TransferController should get 1 transfer
  ✅ TransferController should get 1 transfer
TransferController should throw an error if a transfer does not exist
  ✅ TransferController should throw an error if a transfer does not exist
TransferController create and update data should create a transfer
  ✅ TransferController create and update data should create a transfer
TransferController create and update data should not create a transfer with insufficient balance
  ✅ TransferController create and update data should not create a transfer with insufficient balance
TransferController create and update data should update a transfer, when it is approved
  ✅ TransferController create and update data should update a transfer, when it is approved
TransferController create and update data should update a transfer, when it is declined
  ✅ TransferController create and update data should update a transfer, when it is declined
TransferController create and update data should not update a transfer, when it is already approved/declined/cancelled
  ✅ TransferController create and update data should not update a transfer, when it is already approved/declined/cancelled
TransferController create and update data should not update a transfer, when its source vault is being changed
  ✅ TransferController create and update data should not update a transfer, when its source vault is being changed
TransferController removeData should not remove transfers
  ✅ TransferController removeData should not remove transfers

✅ TransferService

TransferService should be defined
  ✅ TransferService should be defined

✅ VaultController

VaultController should be defined
  ✅ VaultController should be defined
VaultController should call create
  ✅ VaultController should call create
VaultController should not call create if user is not the owner
  ✅ VaultController should not call create if user is not the owner
VaultController should call update
  ✅ VaultController should call update
VaultController should not call update if user is not owner
  ✅ VaultController should not call update if user is not owner
VaultController should call remove on empty vaults
  ✅ VaultController should call remove on empty vaults
VaultController should not call remove on non-empty vaults
  ✅ VaultController should not call remove on non-empty vaults
VaultController should not call remove in user is not owner
  ✅ VaultController should not call remove in user is not owner

✅ VaultService

VaultService should be defined
  ✅ VaultService should be defined

✅ WithdrawalController

WithdrawalController should be defined
  ✅ WithdrawalController should be defined
WithdrawalController getData should list all withdrawals
  ✅ WithdrawalController getData should list all withdrawals
WithdrawalController getData should get one withdrawal
  ✅ WithdrawalController getData should get one withdrawal
WithdrawalController should throw error if withdrawal does not exist
  ✅ WithdrawalController should throw error if withdrawal does not exist
WithdrawalController create and update data should create a withdrawal
  ✅ WithdrawalController create and update data should create a withdrawal
WithdrawalController create and update data should not create a withdrawal with insufficient balance
  ✅ WithdrawalController create and update data should not create a withdrawal with insufficient balance
WithdrawalController create and update data should update a withdrawal, when it is approved
  ✅ WithdrawalController create and update data should update a withdrawal, when it is approved
WithdrawalController create and update data should update a withdrawal, when it is declined
  ✅ WithdrawalController create and update data should update a withdrawal, when it is declined
WithdrawalController create and update data should not update a withdrawal, when it is already approved/declined/cancelled
  ✅ WithdrawalController create and update data should not update a withdrawal, when it is already approved/declined/cancelled
WithdrawalController create and update data should not update a withdrawal, when its vault is being changed
  ✅ WithdrawalController create and update data should not update a withdrawal, when its vault is being changed
WithdrawalController removeData should not remove withdrawals
  ✅ WithdrawalController removeData should not remove withdrawals

✅ WithdrawalService

WithdrawalService should be defined
  ✅ WithdrawalService should be defined