github-actions[bot] commented on PR #625:
URL:
https://github.com/apache/fineract-backoffice-ui/pull/625#issuecomment-5848609219
<!-- e2e-report-backend -->
### E2E โ real Fineract
## ๐ญ E2E Tests
**โ 15 failing** โ 68 passed ยท 15 failed ยท 8 skipped ยท 9 flaky, across 29
spec files in 11m 25s.
### โ Failures
- **form layout at the narrow viewport โบ Create Loan gives every field a
usable width at 320px** โ `form-layout-reflow.spec.ts`
- Error: 1 translation key(s) rendered as their own name on
https://localhost:4200/loans/create.
- **form layout at the narrow viewport โบ no page-level horizontal scroll at
320px** โ `form-layout-reflow.spec.ts`
- Error: 1 translation key(s) rendered as their own name on
https://localhost:4200/organization/staff/create.
- **Group membership and lifecycle โบ an empty group is closed with a reason,
and a group with members is refused** โ `group-membership.spec.ts`
- Error: 1 translation key(s) rendered as their own name on
https://localhost:4200/groups/view/8.
- **Loan product accounting โบ a cash-accounting product is configured,
round-trips on edit, and posts to the ledger** โ
`loan-product-accounting.spec.ts`
- Error: 5 translation key(s) rendered as their own name on
https://localhost:4200/products/loan/edit/5.
- **Screens added for platform parity โบ a report definition can be created,
edited and deleted; a core one cannot** โ `parity-screens.spec.ts`
- Error: 6 translation key(s) rendered as their own name on
https://localhost:4200/system/report-definitions.
- **Screens added for platform parity โบ a core report opens read-only with
only its in-use setting** โ `parity-screens.spec.ts`
- Error: 6 translation key(s) rendered as their own name on
https://localhost:4200/system/report-definitions/edit/1.
- **a genuinely restricted Fineract user โบ the superuser the rest of the
suite uses is unaffected** โ `rbac-backend-restricted-user.spec.ts`
- Error: 5 translation key(s) rendered as their own name on
https://localhost:4200/security/users.
- **ALL_FUNCTIONS_READ, against the real Fineract permission catalogue โบ
reaches read screens across modules it holds no specific code for** โ
`rbac-multi-permission.spec.ts`
- Error: 5 translation key(s) rendered as their own name on
https://localhost:4200/accounting/chart-of-accounts.
- **every offered entity type is one the platform accepts** โ
`bulk-import-entity-types.spec.ts`
- Error: 1 translation key(s) rendered as their own name on
https://localhost:4200/system/bulk-import.
- **Full feature demo recording โบ walk through loan schedule type,
lifecycle, custom fields, collateral, and disbursement** โ `full-demo.spec.ts`
- Error: 3 translation key(s) rendered as their own name on
https://localhost:4200/loans/view/3.
- **Loan lifecycle: creation, approval, disbursement โบ create, approve, and
disburse a Cumulative loan** โ `loan-lifecycle.spec.ts`
- Error: 1 translation key(s) rendered as their own name on
https://localhost:4200/loans/view/6.
- **Loan Schedule Type (Cumulative vs Progressive) โบ loan creation shows the
schedule type badge for a Progressive product** โ `loan-schedule-type.spec.ts`
- Error: 1 translation key(s) rendered as their own name on
https://localhost:4200/loans/create.
- **Share product accounting โบ a share product is mapped to equity and
round-trips on edit** โ `share-product-accounting.spec.ts`
- Error: 5 translation key(s) rendered as their own name on
https://localhost:4200/products/share/edit/5.
- **Teller cash management โบ a cashier is listed, receives an allocation,
and settles cash back** โ `teller-cash-management.spec.ts`
- Error: 4 translation key(s) rendered as their own name on
https://localhost:4200/tellers/3/cashiers/3/transactions.
- **Teller cash management โบ settling more than the cashier holds is refused
and the form stays usable** โ `teller-cash-management.spec.ts`
- Error: 4 translation key(s) rendered as their own name on
https://localhost:4200/tellers/6/cashiers/6/transactions/settle.
### โ ๏ธ Passed on retry
Green overall, but these needed more than one attempt โ the shape a flake
takes.
- **a genuinely restricted Fineract user โบ holds exactly the permissions
their role was granted** โ `rbac-backend-restricted-user.spec.ts` (2
retry/retries)
- **a genuinely restricted Fineract user โบ reaches the screen their
permission covers** โ `rbac-backend-restricted-user.spec.ts` (2 retry/retries)
- **a genuinely restricted Fineract user โบ is refused a screen their
permission does not cover, by URL and by the backend** โ
`rbac-backend-restricted-user.spec.ts` (2 retry/retries)
- **a genuinely restricted Fineract user โบ is refused a write screen they
can read the list for, and the write itself** โ
`rbac-backend-restricted-user.spec.ts` (2 retry/retries)
- **a genuinely restricted Fineract user โบ is not offered the actions it
would be refused for** โ `rbac-backend-restricted-user.spec.ts` (2
retry/retries)
- **a genuinely restricted Fineract user โบ is shown an action it cannot
take, disabled and saying what it needs** โ
`rbac-backend-restricted-user.spec.ts` (2 retry/retries)
- **a route declaring more than one permission code (OR semantics) โบ is
admitted by either declared code alone** โ `rbac-multi-permission.spec.ts` (2
retry/retries)
- **a route declaring more than one permission code (OR semantics) โบ is
admitted by the other declared code alone** โ `rbac-multi-permission.spec.ts`
(2 retry/retries)
- **a route declaring more than one permission code (OR semantics) โบ is
refused when holding neither declared code, by the router and by the backend**
โ `rbac-multi-permission.spec.ts` (2 retry/retries)
### By spec file
| Spec | โ
| โ | โญ๏ธ | ๐ | Time |
| --- | ---: | ---: | ---: | ---: | ---: |
| backend.setup.ts | 3 | 0 | 0 | 0 | 6.4s |
| batch-api-operations.spec.ts | 5 | 0 | 0 | 0 | 26.0s |
| center-servicing.spec.ts | 2 | 0 | 0 | 0 | 17.6s |
| client-legal-form-search.spec.ts | 1 | 0 | 0 | 0 | 4.5s |
| client-transfer.spec.ts | 4 | 0 | 0 | 0 | 44.4s |
| deposit-account-servicing.spec.ts | 3 | 0 | 0 | 0 | 26.1s |
| deposit-product-configuration.spec.ts | 3 | 0 | 0 | 0 | 14.9s |
| **form-layout-reflow.spec.ts** | 4 | 2 | 0 | 0 | 30.0s |
| **group-membership.spec.ts** | 2 | 1 | 0 | 0 | 46.2s |
| loan-account-actions.spec.ts | 3 | 0 | 0 | 0 | 23.5s |
| loan-charge-off.spec.ts | 2 | 0 | 0 | 0 | 24.6s |
| **loan-product-accounting.spec.ts** | 0 | 1 | 0 | 0 | 32.1s |
| loan-servicing.spec.ts | 2 | 0 | 0 | 0 | 19.4s |
| login.spec.ts | 4 | 0 | 0 | 0 | 5.3s |
| **parity-screens.spec.ts** | 6 | 2 | 0 | 0 | 48.7s |
| **rbac-backend-restricted-user.spec.ts** | 6 | 1 | 0 | 0 | 36.6s |
| **rbac-multi-permission.spec.ts** | 3 | 1 | 5 | 0 | 24.9s |
| **bulk-import-entity-types.spec.ts** | 0 | 1 | 0 | 0 | 8.3s |
| delinquency-configuration.spec.ts | 2 | 0 | 0 | 0 | 17.1s |
| **full-demo.spec.ts** | 0 | 1 | 0 | 0 | 56.2s |
| interest-rate-charts.spec.ts | 1 | 0 | 0 | 0 | 7.2s |
| **loan-lifecycle.spec.ts** | 0 | 1 | 3 | 0 | 29.2s |
| **loan-schedule-type.spec.ts** | 2 | 1 | 0 | 0 | 32.1s |
| report-mailing-job.spec.ts | 3 | 0 | 0 | 0 | 18.7s |
| report-parameter-backend.spec.ts | 4 | 0 | 0 | 0 | 21.6s |
| savings-transaction-correction.spec.ts | 1 | 0 | 0 | 0 | 7.5s |
| share-account-servicing.spec.ts | 2 | 0 | 0 | 0 | 18.7s |
| **share-product-accounting.spec.ts** | 0 | 1 | 0 | 0 | 25.5s |
| **teller-cash-management.spec.ts** | 0 | 2 | 0 | 0 | 24.2s |
<details>
<summary><b>All 91 tests</b> โ click to expand</summary>
**`backend.setup.ts`**
- โ
seed backend reference data โ `2.2s`
- โ
seed backend reference data โ `2.1s`
- โ
seed backend reference data โ `2.1s`
**`batch-api-operations.spec.ts`**
- โ
Batch API Operations against Fineract โบ runs the sample batch scenario โ
create client, create loan, add and read back a charge โ `5.1s`
- โ
Batch API Operations against Fineract โบ shows a parse error instead of
submitting when the batch input is not valid JSON โ `6.5s`
- โ
Batch API enclosingTransaction semantics against Fineract โบ rolls back
the earlier steps when enclosingTransaction is true and a later step fails โ
`5.3s`
- โ
Batch API enclosingTransaction semantics against Fineract โบ does not
roll back the earlier steps when enclosingTransaction is false and a later step
fails โ `4.9s`
- โ
Batch API Operations on a mobile viewport against Fineract โบ the sample
batch scenario is reachable and works by touch at mobile width โ `4.2s`
**`center-servicing.spec.ts`**
- โ
Center servicing โบ a center is activated, staffed and given a group โ
`12.5s`
- โ
Center servicing โบ notes are recorded against the center โ `5.1s`
**`client-legal-form-search.spec.ts`**
- โ
Client list: legal form filtering โบ an entity client appears in the main
client list โ `4.5s`
**`client-transfer.spec.ts`**
- โ
Client transfer between offices โบ a proposed transfer is held until the
destination accepts, and then the client moves โ `11.3s`
- โ
Client transfer between offices โบ a rejected transfer leaves the client
on hold, and withdrawing is the way back โ `12.3s`
- โ
Client transfer between offices โบ a client can be transferred in one
step when the user may act for both offices โ `10.2s`
- โ
Client staff assignment โบ an officer can be assigned and then removed โ
`10.6s`
**`deposit-account-servicing.spec.ts`**
- โ
Term deposit account servicing โบ an account is approved, activated and
closed before maturity โ `11.6s`
- โ
Term deposit account servicing โบ a deposit is recorded, listed, and
reversed without leaving the list โ `8.3s`
- โ
Term deposit account servicing โบ an application can be rejected instead
of approved โ `6.2s`
**`deposit-product-configuration.spec.ts`**
- โ
Deposit product configuration โบ a fixed deposit product survives being
edited โ `4.8s`
- โ
Deposit product configuration โบ a recurring deposit product can be
created at all โ `4.7s`
- โ
Deposit product configuration โบ a savings product carries its accounting
configuration โ `5.5s`
**`form-layout-reflow.spec.ts`**
- โ
form layout at the narrow viewport โบ Create GL Account gives every field
a usable width at 320px โ `4.0s`
- โ form layout at the narrow viewport โบ Create Loan gives every field a
usable width at 320px โ `4.3s` _(retried 2ร)_
- โ
form layout at the narrow viewport โบ Create Office gives every field a
usable width at 320px โ `4.3s`
- โ
form layout at the narrow viewport โบ Create Staff gives every field a
usable width at 320px โ `4.7s`
- โ form layout at the narrow viewport โบ no page-level horizontal scroll at
320px โ `8.8s` _(retried 2ร)_
- โ
form layout at the wide viewport โบ Create GL Account still uses more
than one column at 1280px โ `3.8s`
**`group-membership.spec.ts`**
- โ
Group membership and lifecycle โบ a group is activated, staffed, given
members and a committee, then emptied โ `19.8s`
- โ
Group membership and lifecycle โบ notes are recorded against the group
and can be removed again โ `8.0s`
- โ Group membership and lifecycle โบ an empty group is closed with a reason,
and a group with members is refused โ `18.4s` _(retried 2ร)_
**`loan-account-actions.spec.ts`**
- โ
Loan account lifecycle actions โบ new action menu items appear only for
active loans โ `6.4s`
- โ
Loan account lifecycle actions โบ undo disbursal shows a confirm dialog
and reverts the loan to Approved โ `8.7s`
- โ
Loan account lifecycle actions โบ write off requires confirmation and
moves the loan out of Active status โ `8.5s`
**`loan-charge-off.spec.ts`**
- โ
Loan servicing commands โบ charges a loan off through the UI and reverses
it โ `13.0s`
- โ
Loan servicing commands โบ records a goodwill credit through the shared
transaction form โ `11.5s`
**`loan-product-accounting.spec.ts`**
- โ Loan product accounting โบ a cash-accounting product is configured,
round-trips on edit, and posts to the ledger โ `32.1s` _(retried 2ร)_
**`loan-servicing.spec.ts`**
- โ
Loan servicing: notes and transaction adjustment โบ notes can be added
and removed, with a confirm dialog on delete โ `8.9s`
- โ
Loan servicing: notes and transaction adjustment โบ a repayment
transaction can be viewed and adjusted with a corrected amount โ `10.5s`
**`login.spec.ts`**
- โ
Login โบ login page displays correctly โ `1.4s`
- โ
Login โบ login form has required fields โ `1.4s`
- โ
Login โบ submit button is disabled when form is empty โ `1.2s`
- โ
Login โบ submit button is enabled when form is filled โ `1.3s`
**`parity-screens.spec.ts`**
- โ
Screens added for platform parity โบ a manual journal entry can be read
whole and reversed โ `5.9s`
- โ
Screens added for platform parity โบ an entry that is already reversed is
not offered again โ `4.7s`
- โ Screens added for platform parity โบ a report definition can be created,
edited and deleted; a core one cannot โ `5.6s` _(retried 2ร)_
- โ Screens added for platform parity โบ a core report opens read-only with
only its in-use setting โ `5.7s` _(retried 2ร)_
- โ
Screens added for platform parity โบ a pending loan is approved from the
queue, in a batch โ `7.6s`
- โ
Screens added for platform parity โบ a fixed deposit is listed as a
deposit, not as a savings account โ `5.6s`
- โ
Screens added for platform parity โบ an office has a screen, and it
carries its custom fields โ `5.9s`
- โ
Screens added for platform parity โบ a savings account carries notes, and
the note survives a reload โ `7.7s`
**`rbac-backend-restricted-user.spec.ts`**
- โ
a genuinely restricted Fineract user โบ holds exactly the permissions
their role was granted โ `306ms` _(retried 2ร)_
- โ
a genuinely restricted Fineract user โบ reaches the screen their
permission covers โ `4.8s` _(retried 2ร)_
- โ
a genuinely restricted Fineract user โบ is refused a screen their
permission does not cover, by URL and by the backend โ `4.8s` _(retried 2ร)_
- โ
a genuinely restricted Fineract user โบ is refused a write screen they
can read the list for, and the write itself โ `6.6s` _(retried 2ร)_
- โ
a genuinely restricted Fineract user โบ is not offered the actions it
would be refused for โ `3.9s` _(retried 2ร)_
- โ
a genuinely restricted Fineract user โบ is shown an action it cannot
take, disabled and saying what it needs โ `6.6s` _(retried 2ร)_
- โ a genuinely restricted Fineract user โบ the superuser the rest of the
suite uses is unaffected โ `9.6s` _(retried 2ร)_
**`rbac-multi-permission.spec.ts`**
- โ
a route declaring more than one permission code (OR semantics) โบ is
admitted by either declared code alone โ `5.7s` _(retried 2ร)_
- โ
a route declaring more than one permission code (OR semantics) โบ is
admitted by the other declared code alone โ `4.3s` _(retried 2ร)_
- โ
a route declaring more than one permission code (OR semantics) โบ is
refused when holding neither declared code, by the router and by the backend โ
`5.1s` _(retried 2ร)_
- โ ALL_FUNCTIONS_READ, against the real Fineract permission catalogue โบ
reaches read screens across modules it holds no specific code for โ `9.7s`
_(retried 2ร)_
- โญ๏ธ ALL_FUNCTIONS_READ, against the real Fineract permission catalogue โบ is
refused every write screen, and the writes themselves โ `0ms` _(retried 2ร)_
- โญ๏ธ a restricted session across a real page reload โบ keeps the same
permission boundary after reloading, not just after a fresh login โ `0ms`
_(retried 2ร)_
- โญ๏ธ a second real action-level gate, distinct from loan repayment โบ is
shown the Approve action disabled and naming what it needs, refused by the
backend too โ `0ms` _(retried 2ร)_
- โญ๏ธ Security module writes (users, roles), against the real backend โบ
reaches the list screens but is refused the write screens โ `0ms` _(retried 2ร)_
- โญ๏ธ Security module writes (users, roles), against the real backend โบ is
refused creating a user and modifying a role, by the backend itself โ `0ms`
_(retried 2ร)_
**`bulk-import-entity-types.spec.ts`**
- โ every offered entity type is one the platform accepts โ `8.3s` _(retried
2ร)_
**`delinquency-configuration.spec.ts`**
- โ
creates a delinquency range, then edits it โ `8.7s`
- โ
creates a delinquency bucket from the ranges the template offers โ `8.4s`
**`full-demo.spec.ts`**
- โ Full feature demo recording โบ walk through loan schedule type,
lifecycle, custom fields, collateral, and disbursement โ `56.2s` _(retried 2ร)_
**`interest-rate-charts.spec.ts`**
- โ
lists charts without a server error โ `7.2s`
**`loan-lifecycle.spec.ts`**
- โ Loan lifecycle: creation, approval, disbursement โบ create, approve, and
disburse a Cumulative loan โ `29.2s` _(retried 2ร)_
- โญ๏ธ Loan lifecycle: creation, approval, disbursement โบ create, approve, and
disburse a Progressive loan โ `0ms` _(retried 2ร)_
- โญ๏ธ Loan lifecycle: creation, approval, disbursement โบ an approved loan can
be returned to pending approval โ `0ms` _(retried 2ร)_
- โญ๏ธ Loan lifecycle: creation, approval, disbursement โบ the delinquency tab
reads a real loan, and the empty data tabs stay hidden โ `0ms` _(retried 2ร)_
**`loan-schedule-type.spec.ts`**
- โ
Loan Schedule Type (Cumulative vs Progressive) โบ loan products list
shows a schedule type chip per product โ `8.5s`
- โ
Loan Schedule Type (Cumulative vs Progressive) โบ create a Progressive
loan product end-to-end and verify it round-trips โ `13.4s`
- โ Loan Schedule Type (Cumulative vs Progressive) โบ loan creation shows the
schedule type badge for a Progressive product โ `10.1s` _(retried 2ร)_
**`report-mailing-job.spec.ts`**
- โ
report mailing job creation โบ is no longer refused for a missing
parameter โ `5.6s`
- โ
report mailing job creation โบ the payload carries the locale and the
schedule โ `6.0s`
- โ
report mailing job creation at the narrow viewport โบ every field is
reachable and the job still saves at 320px โ `7.2s`
**`report-parameter-backend.spec.ts`**
- โ
Dynamic report parameters against Fineract โบ keeps the parameter form
available when a report has cascading lookups โ `4.4s`
- โ
Dynamic report parameters against Fineract โบ changing Office changes the
Client Listing row set โ `6.4s`
- โ
Cascading report parameters against Fineract โบ sends the parent value to
the child lookup and clears the child when it changes โ `6.8s`
- โ
Chart reports against Fineract โบ renders a chart report as a chart
rather than a table โ `4.1s`
**`savings-transaction-correction.spec.ts`**
- โ
Savings transaction correction โบ a deposit is reversed and a hold is
released โ `7.5s`
**`share-account-servicing.spec.ts`**
- โ
Share account servicing โบ an account is approved, activated, traded and
closed โ `12.8s`
- โ
Share account servicing โบ an application can be rejected โ `5.9s`
**`share-product-accounting.spec.ts`**
- โ Share product accounting โบ a share product is mapped to equity and
round-trips on edit โ `25.5s` _(retried 2ร)_
**`teller-cash-management.spec.ts`**
- โ Teller cash management โบ a cashier is listed, receives an allocation,
and settles cash back โ `12.3s` _(retried 2ร)_
- โ Teller cash management โบ settling more than the cashier holds is refused
and the form stays usable โ `11.9s` _(retried 2ร)_
</details>
<details>
<summary><b>Slowest 10</b> โ what the shard counts should be tuned
against</summary>
| Test | Spec | Time |
| --- | --- | ---: |
| Full feature demo recording โบ walk through loan schedule type, lifecycle,
custom fields, collateral, and disbursement | `full-demo.spec.ts` | 56.2s |
| Loan product accounting โบ a cash-accounting product is configured,
round-trips on edit, and posts to the ledger |
`loan-product-accounting.spec.ts` | 32.1s |
| Loan lifecycle: creation, approval, disbursement โบ create, approve, and
disburse a Cumulative loan | `loan-lifecycle.spec.ts` | 29.2s |
| Share product accounting โบ a share product is mapped to equity and
round-trips on edit | `share-product-accounting.spec.ts` | 25.5s |
| Group membership and lifecycle โบ a group is activated, staffed, given
members and a committee, then emptied | `group-membership.spec.ts` | 19.8s |
| Group membership and lifecycle โบ an empty group is closed with a reason,
and a group with members is refused | `group-membership.spec.ts` | 18.4s |
| Loan Schedule Type (Cumulative vs Progressive) โบ create a Progressive loan
product end-to-end and verify it round-trips | `loan-schedule-type.spec.ts` |
13.4s |
| Loan servicing commands โบ charges a loan off through the UI and reverses
it | `loan-charge-off.spec.ts` | 13.0s |
| Share account servicing โบ an account is approved, activated, traded and
closed | `share-account-servicing.spec.ts` | 12.8s |
| Center servicing โบ a center is activated, staffed and given a group |
`center-servicing.spec.ts` | 12.5s |
</details>
๐ผ [Download the HTML report, videos and
traces](https://github.com/apache/fineract-backoffice-ui/actions/runs/36260655562)
โ see the `playwright-report-backend` artifact.
<sub>Generated by [run
36260655562](https://github.com/apache/fineract-backoffice-ui/actions/runs/36260655562)
from `3646b46`. The run executed a fork branch, so treat its contents as
unverified.</sub>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]