set/unsetViewPermission tests
This commit is contained in:
parent
d1c6edc437
commit
3ac1343b08
|
@ -462,4 +462,121 @@ describe("/rowsActions", () => {
|
|||
}
|
||||
})
|
||||
})
|
||||
|
||||
describe("setViewPermission", () => {
|
||||
// unauthorisedTests()
|
||||
|
||||
it("can set permission views", async () => {
|
||||
for (const rowAction of createRowActionRequests(3)) {
|
||||
await createRowAction(tableId, rowAction)
|
||||
}
|
||||
|
||||
const persisted = await config.api.rowAction.find(tableId)
|
||||
|
||||
const [actionId1, actionId2] = _.sampleSize(
|
||||
Object.keys(persisted.actions),
|
||||
2
|
||||
)
|
||||
|
||||
const viewId1 = generator.guid()
|
||||
const viewId2 = generator.guid()
|
||||
|
||||
await config.api.rowAction.setViewPermission(
|
||||
tableId,
|
||||
viewId1,
|
||||
actionId1,
|
||||
{
|
||||
status: 200,
|
||||
body: {},
|
||||
}
|
||||
)
|
||||
const action1Result = await config.api.rowAction.setViewPermission(
|
||||
tableId,
|
||||
viewId2,
|
||||
actionId1,
|
||||
{
|
||||
status: 200,
|
||||
body: {},
|
||||
}
|
||||
)
|
||||
const action2Result = await config.api.rowAction.setViewPermission(
|
||||
tableId,
|
||||
viewId1,
|
||||
actionId2,
|
||||
{
|
||||
status: 200,
|
||||
body: {},
|
||||
}
|
||||
)
|
||||
|
||||
const expectedAction1 = expect.objectContaining({
|
||||
allowedViews: [viewId1, viewId2],
|
||||
})
|
||||
const expectedAction2 = expect.objectContaining({
|
||||
allowedViews: [viewId1],
|
||||
})
|
||||
|
||||
const expectedActions = expect.objectContaining({
|
||||
[actionId1]: expectedAction1,
|
||||
[actionId2]: expectedAction2,
|
||||
})
|
||||
expect(action1Result).toEqual(expectedAction1)
|
||||
expect(action2Result).toEqual(expectedAction2)
|
||||
expect((await config.api.rowAction.find(tableId)).actions).toEqual(
|
||||
expectedActions
|
||||
)
|
||||
})
|
||||
})
|
||||
|
||||
describe("unsetViewPermission", () => {
|
||||
// unauthorisedTests()
|
||||
|
||||
it("can unset permission views", async () => {
|
||||
for (const rowAction of createRowActionRequests(3)) {
|
||||
await createRowAction(tableId, rowAction)
|
||||
}
|
||||
|
||||
const persisted = await config.api.rowAction.find(tableId)
|
||||
|
||||
const [actionId] = _.sampleSize(Object.keys(persisted.actions), 1)
|
||||
|
||||
const viewId1 = generator.guid()
|
||||
const viewId2 = generator.guid()
|
||||
|
||||
await config.api.rowAction.setViewPermission(tableId, viewId1, actionId, {
|
||||
status: 200,
|
||||
body: {},
|
||||
})
|
||||
await config.api.rowAction.setViewPermission(tableId, viewId2, actionId, {
|
||||
status: 200,
|
||||
body: {},
|
||||
})
|
||||
|
||||
expect((await config.api.rowAction.find(tableId)).actions).toEqual(
|
||||
expect.objectContaining({
|
||||
[actionId]: expect.objectContaining({
|
||||
allowedViews: [viewId1, viewId2],
|
||||
}),
|
||||
})
|
||||
)
|
||||
|
||||
const actionResult = await config.api.rowAction.unsetViewPermission(
|
||||
tableId,
|
||||
viewId1,
|
||||
actionId,
|
||||
{
|
||||
status: 200,
|
||||
body: {},
|
||||
}
|
||||
)
|
||||
|
||||
const expectedAction = expect.objectContaining({
|
||||
allowedViews: [viewId2],
|
||||
})
|
||||
expect(actionResult).toEqual(expectedAction)
|
||||
expect(
|
||||
(await config.api.rowAction.find(tableId)).actions[actionId]
|
||||
).toEqual(expectedAction)
|
||||
})
|
||||
})
|
||||
})
|
||||
|
|
Loading…
Reference in New Issue