All files / realm/blong-access/test capability.play.ts

100% Statements 54/54
100% Branches 1/1
100% Functions 0/0
100% Lines 54/54

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 551x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 1x  
/**
 * `access.capability` CRUD — Browse, Create, Edit full-stack tests.
 *
 * `capabilityName` lives in `core_resource.resourceName` (provided by the
 * custom `access.capability.find`); the browse `search` runs against the
 * `description` string column, so created rows carry an `ACC-PLAY` marker there.
 */
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 Capability', () => {
    cleanupModel(test, expect, {
        subject: 'access',
        object: 'capability',
        search: 'ACC-PLAY',
        removeMethod: 'access.capability.remove',
    });
 
    browseModel(test, expect, {
        subject: 'access',
        object: 'capability',
        searchText: 'testManagement',
    });
 
    createAndEditModel(test, expect, {
        subject: 'access',
        object: 'capability',
        fields: {
            'capability.capabilityName': 'ACC-PLAY-Capability',
            'capability.description': 'ACC-PLAY capability',
        },
        editFields: {
            'capability.description': 'ACC-PLAY capability edited',
        },
        search: 'ACC-PLAY',
        // Action pivot (entity rows + CRUD boolean cells) — tick find+add on the
        // first entity row on create and untick add on edit; the "Other Actions"
        // card renders inside the same Action tab (covered by the tab screenshots).
        details: [
            {
                object: 'action',
                pivot: true,
                fields: {find: true, add: true},
                editFields: {add: false},
            },
        ],
    });
});