| SKIPPED |
recurring-bill-create.spec.ts |
owner creates a recurring bill |
201 ms |
1 |
skipped |
| SKIPPED |
staff-read-isolated.spec.ts |
invoice-only staff reads assigned dashboard and invoice without unrelated calls or write controls |
209 ms |
1 |
skipped |
| PASSED |
admin-companies-dates-mocked.spec.ts |
admin companies renders valid, missing and invalid dates at 1280px |
2.4 s |
1 |
|
| PASSED |
admin-companies-dates-mocked.spec.ts |
admin companies renders valid, missing and invalid dates at 390px |
2.2 s |
1 |
|
| PASSED |
agent-reports-presentation.spec.ts |
Landlord statements explain unavailable fee history without treating it as zero |
1.4 s |
1 |
|
| PASSED |
agent-reports-presentation.spec.ts |
Agent report opening, landlord payment corrections, PDF and mobile layout |
5.7 s |
1 |
|
| PASSED |
agent-reports-presentation.spec.ts |
Agent overview renders an unknown historical fee as unavailable |
1.5 s |
1 |
|
| PASSED |
auth-login.spec.ts |
logs in, lands authenticated, then logs out |
3.3 s |
1 |
|
| PASSED |
auth-login.spec.ts |
rejects bad credentials |
2.6 s |
1 |
|
| PASSED |
auth-registration-audience.spec.ts |
login prominently directs tenants to their landlord; tenant registration creates no account |
1.3 s |
1 |
|
| PASSED |
auth-registration-audience.spec.ts |
direct registration links require a choice and landlords/agents keep the existing registration flow |
2.5 s |
1 |
|
| PASSED |
auth-registration-submit.spec.ts |
the real registration form passes server validation, leaving only the captcha |
2.2 s |
1 |
|
| PASSED |
auth-tenant-login.spec.ts |
tenant logs in and reaches the tenant portal |
1.2 s |
1 |
|
| PASSED |
auth.setup.ts |
authenticate as owner |
2.1 s |
1 |
|
| PASSED |
auth.setup.ts |
authenticate as tenant |
2.0 s |
1 |
|
| PASSED |
comms-mailbox-presentation.spec.ts |
filters the flat mailbox and optionally groups by property and tenant |
5.8 s |
1 |
|
| PASSED |
comms-mailbox-presentation.spec.ts |
keeps related email documents separate and renders the readable conversation |
3.2 s |
1 |
|
| PASSED |
comms-mailbox-presentation.spec.ts |
shows a non-empty disabled/error state when readiness is unavailable |
1.4 s |
1 |
|
| PASSED |
comms-mailbox-presentation.spec.ts |
shows a non-empty settings state when no company context is available |
1.3 s |
1 |
|
| PASSED |
currency-consistency.spec.ts |
currency symbol propagates across invoices and payments screens |
7.5 s |
1 |
|
| PASSED |
dashboard-stats.spec.ts |
dashboard reflects properties / tenants / collection / tickets |
5.3 s |
1 |
|
| PASSED |
dashboard-stats.spec.ts |
dashboard Register Payment opens the tenant picker on /payments |
1.9 s |
1 |
|
| PASSED |
dashboard-stats.spec.ts |
dashboard Record Utility opens the utility recorder |
2.1 s |
1 |
|
| PASSED |
dashboard-stats.spec.ts |
Record Utility shows configured properties and reveals unoccupied units |
6.6 s |
1 |
|
| PASSED |
data-portability-mocked.spec.ts |
owner imports with template, upload, review, confirm; apply and export errors surface |
5.5 s |
1 |
|
| PASSED |
data-portability-mocked.spec.ts |
manager does not see import or export |
1.2 s |
1 |
|
| PASSED |
dispatch-queue-pagination.spec.ts |
dispatch queue pages on the server and resets the page when filtered |
1.5 s |
1 |
|
| PASSED |
dispatch-queue-pagination.spec.ts |
dispatch queue shows a retryable error instead of an empty state |
1.2 s |
1 |
|
| PASSED |
header-search-mocked.spec.ts |
owner finds an existing tenant with bounded scoped list reads and opens the detail page |
1.8 s |
1 |
|
| PASSED |
header-search-mocked.spec.ts |
owner finds an existing property and sees a clear empty state |
2.5 s |
1 |
|
| PASSED |
invoice-create-mocked.spec.ts |
all invoice entry points share the searchable, property-scoped tenant form |
7.8 s |
1 |
|
| PASSED |
invoice-generate-manual.spec.ts |
owner generates a manual invoice for a tenant |
3.2 s |
1 |
|
| PASSED |
invoice-list-payment-mocked.spec.ts |
invoice list Record Payment targets the outstanding invoice and refreshes status only after payment |
1.8 s |
1 |
|
| PASSED |
invoice-pdf-attachment.spec.ts |
sending an invoice enqueues an outbound notification |
5.1 s |
1 |
|
| PASSED |
invoice-pdf-currency.spec.ts |
invoice detail and PDF use the org currency symbol |
5.3 s |
1 |
|
| PASSED |
invoice-pdf-generation.spec.ts |
owner downloads an invoice PDF |
4.6 s |
1 |
|
| PASSED |
invoice-pdf-multipage.spec.ts |
invoice PDF renders with many line items |
30.3 s |
1 |
|
| PASSED |
lease-doc-upload.spec.ts |
owner uploads a lease document and it appears for the tenant |
3.6 s |
1 |
|
| PASSED |
listing-photos.spec.ts |
owner uploads photos to a listing and they appear via the API |
3.3 s |
1 |
|
| PASSED |
maintenance-staff-lifecycle.spec.ts |
owner moves a maintenance ticket through its lifecycle |
4.2 s |
1 |
|
| PASSED |
maintenance-tenant-creates.spec.ts |
maintenance ticket can be created and appears in the list |
4.1 s |
1 |
|
| PASSED |
messaging-owner-to-tenant.spec.ts |
owner reminder dispatch respects Kenya sending hours |
3.6 s |
1 |
|
| PASSED |
monthly-rent-generation.spec.ts |
monthly rent generation creates invoices for occupied units |
3.5 s |
1 |
|
| PASSED |
payment-fifo-multi-invoice.spec.ts |
FIFO payment of $250 allocates $100→inv1 and $150→inv2, leaves inv3 untouched |
7.5 s |
1 |
|
| PASSED |
payment-property-picker.spec.ts |
payment picker filters by property and remembers it after rapid entry |
10.1 s |
1 |
|
| PASSED |
payment-record-full.spec.ts |
owner records a full payment and the invoice is marked paid |
5.4 s |
1 |
|
| PASSED |
payment-search-mocked.spec.ts |
owner Billing Payments searches the endpoint before paging and resets to page one |
3.7 s |
1 |
|
| PASSED |
penalty-rent-invoice.spec.ts |
existing standalone penalty keeps its identity and does not fold into rent |
11.5 s |
1 |
|
| PASSED |
penalty-rent-invoice.spec.ts |
manual rent invoice keeps automatic penalty, payment and corrections on one invoice |
22.4 s |
1 |
|
| PASSED |
penalty-rent-invoice.spec.ts |
generated rent invoice keeps automatic penalty, payment and corrections on one invoice |
22.9 s |
1 |
|
| PASSED |
property-agent-fees.spec.ts |
Property fee baseline and append-only history remain separate from metadata |
4.4 s |
1 |
|
| PASSED |
property-create.spec.ts |
owner creates a property via the UI |
3.6 s |
1 |
|
| PASSED |
property-edit-delete.spec.ts |
owner edits then deletes a property |
3.5 s |
1 |
|
| PASSED |
recurring-bill-runs.spec.ts |
owner creates a recurring bill and it surfaces for the tenant |
3.9 s |
1 |
|
| PASSED |
reports-generation.spec.ts |
GET /api/reports/financial returns 200 + JSON body |
1.2 s |
1 |
|
| PASSED |
reports-generation.spec.ts |
GET /api/reports/occupancy returns 200 + JSON body |
1.2 s |
1 |
|
| PASSED |
reports-generation.spec.ts |
GET /api/reports/maintenance returns 200 + JSON body |
1.3 s |
1 |
|
| PASSED |
reports-generation.spec.ts |
reports page loads in the UI |
2.3 s |
1 |
|
| PASSED |
reports-generation.spec.ts |
payments reported drills into scoped rows, paginates, and handles filters and failures |
3.2 s |
1 |
|
| PASSED |
statement-download.spec.ts |
owner downloads a tenant statement PDF |
3.5 s |
1 |
|
| PASSED |
tenant-create-and-assign.spec.ts |
owner creates a tenant and assigns to a unit |
4.4 s |
1 |
|
| PASSED |
tenant-payment-ledger.spec.ts |
tenant payment is reflected in the ledger and balance |
4.1 s |
1 |
|
| PASSED |
tenant-vacate-and-reassign.spec.ts |
owner vacates and reassigns a tenant to a different unit |
4.4 s |
1 |
|
| PASSED |
tenants-list-page.spec.ts |
new tenant shows in /tenants list |
3.0 s |
1 |
|
| PASSED |
unit-create.spec.ts |
owner creates a unit under a property |
2.1 s |
1 |
|
| PASSED |
units-list-page.spec.ts |
new unit shows in /units list |
3.0 s |
1 |
|
| PASSED |
units-list-page.spec.ts |
property filter narrows /units list to selected property |
4.4 s |
1 |
|