diff --git a/web/client/actions/__tests__/users-test.js b/web/client/actions/__tests__/users-test.js index 9b2c07af27..613b00721e 100644 --- a/web/client/actions/__tests__/users-test.js +++ b/web/client/actions/__tests__/users-test.js @@ -229,5 +229,18 @@ describe('Test correctness of the users actions', () => { } }); }); + it('deleteUser passes cascadeResourceDelete=USERSESSION to the API', (done) => { + const spy = expect.spyOn(GeoStoreDAO, 'deleteUser').andReturn(Promise.resolve()); + const retFun = deleteUser(1, "delete"); + retFun((action) => { + if (action.status === 'deleted' || action.status === 'error') { + expect(spy.calls.length).toBe(1); + expect(spy.calls[0].arguments[0]).toBe(1); + expect(spy.calls[0].arguments[1]).toEqual({ params: { cascadeResourceDelete: 'USERSESSION' } }); + spy.restore(); + done(); + } + }); + }); }); diff --git a/web/client/actions/users.js b/web/client/actions/users.js index fb56b9979d..a2f008d67f 100644 --- a/web/client/actions/users.js +++ b/web/client/actions/users.js @@ -279,7 +279,7 @@ export function deleteUser(id, status = "confirm") { } else if ( status === "delete") { return (dispatch) => { dispatch(deletingUser(id)); - API.deleteUser(id).then(() => { + API.deleteUser(id, { params: { cascadeResourceDelete: 'USERSESSION' } }).then(() => { dispatch(deleteUserSuccess(id)); dispatch(searchUsers({ refresh: true })); }).catch((error) => {