- Fix jasmine test cases. - Unregister listener when row removed in DataGrid.
parent
10d8135dcc
commit
bcab0e3754
|
@ -206,6 +206,7 @@ export default function DataGridView({
|
|||
fixedRows, ...props}) {
|
||||
const classes = useStyles();
|
||||
const stateUtils = useContext(StateUtilsContext);
|
||||
const depListener = useContext(DepListenerContext);
|
||||
|
||||
/* Using ref so that schema variable is not frozen in columns closure */
|
||||
const schemaRef = useRef(schema);
|
||||
|
@ -266,6 +267,8 @@ export default function DataGridView({
|
|||
path: accessPath,
|
||||
value: row.index,
|
||||
});
|
||||
|
||||
depListener.removeDepListener(accessPath.concat(row.index));
|
||||
}, ()=>{}, props.customDeleteTitle, props.customDeleteMsg);
|
||||
}} className={classes.gridRowButton} disabled={!canDeleteRow} />
|
||||
);
|
||||
|
|
|
@ -19,6 +19,11 @@ export default class DepListener {
|
|||
});
|
||||
}
|
||||
|
||||
|
||||
removeDepListener(dest) {
|
||||
this._depListeners = _.filter(this._depListeners, (l)=>!_.join(l.dest, '|').startsWith(_.join(dest, '|')));
|
||||
}
|
||||
|
||||
_getListenerData(state, listener, actionObj) {
|
||||
/* Get data at same level */
|
||||
let data = state;
|
||||
|
|
|
@ -12,13 +12,15 @@ import React from 'react';
|
|||
import '../helper/enzyme.helper';
|
||||
import Privilege from 'sources/components/Privilege';
|
||||
import { mount } from 'enzyme';
|
||||
import { withTheme } from '../fake_theme';
|
||||
|
||||
describe('Privilege', ()=>{
|
||||
let ctrl, onChange = jasmine.createSpy('onChange');
|
||||
beforeEach(()=>{
|
||||
jasmineEnzyme();
|
||||
let ThemedPrivilege = withTheme(Privilege);
|
||||
ctrl = mount(
|
||||
<Privilege
|
||||
<ThemedPrivilege
|
||||
value={[{
|
||||
privilege_type: 'C',
|
||||
privilege: true,
|
||||
|
|
Loading…
Reference in New Issue