Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | /** * `access.role` CRUD — Browse, Create, Edit full-stack tests. * * The `roleName` display name lives in `core_resource.resourceName` (provided * by the custom `access.role.find`), while the browse `search` runs against the * `description` string column — so the created rows carry an `ACC-PLAY` marker * in their description for reliable cleanup + edit targeting. */ import {expect, test} from '@feasibleone/blong-browser/playwright'; import { browseModel, cleanupModel, createAndEditModel, } from '@feasibleone/blong-browser/playwright/model'; test.use({blongPermissions: true}); test.describe('Access Role', () => { cleanupModel(test, expect, { subject: 'access', object: 'role', search: 'ACC-PLAY', removeMethod: 'access.role.remove', }); browseModel(test, expect, { subject: 'access', object: 'role', searchText: 'Admin', }); createAndEditModel(test, expect, { subject: 'access', object: 'role', fields: { 'role.roleName': 'ACC-PLAY-Role', 'role.roleBit': 999, 'role.description': 'ACC-PLAY role', }, editFields: { 'role.description': 'ACC-PLAY role edited', }, search: 'ACC-PLAY', // Capability pivot over the access.capability dropdown — assignment via // the `granted` boolean cell; edit-on-detail unticks it. details: [ { object: 'capability', pivot: true, fields: {granted: true}, editFields: {granted: false}, }, // The effective-ACL panel is view-only (`actions.allowAdd: false`). // The Record Access matrix is *not* captured here: its rows are the // graph's roles and users, so its content shifts as other specs create // and delete them — it has its own spec (`matrix.play.ts`). {object: 'effective', tab: 'Access', allowAdd: false, screenshots: {empty: false}}, ], }); }); |