/** * Updates the current filter values for the given data set column. * * @param columnId The column to filter for. * @param row The row selected. */ public void filterUpdate(String columnId, int row) { filterUpdate(columnId, row, null); }
public void resetProcessBreadcrumb() { processesByType.filterReset(); processesByRunningTime.filterReset(); processesByType.redraw(); processesByRunningTime.redraw(); view.hideBreadCrumb(); }
if (!isDrawn()) { draw(); } else { try { beforeLoad(); beforeDataSetLookup(); dataSetHandler.lookupDataSet(new DataSetReadyCallback() { public void callback(DataSet result) { showError(new ClientRuntimeError(e));
/** * Close the displayer */ @Override public void close() { getView().clear(); // Close done afterClose(); }
public void showError(ClientRuntimeError error) { getView().error(error); handleError(error); }
@Test public void testMultipleFilter() { displayerCoordinator.drawAll(); // Click on the "2014" slice yearBarChart.filterUpdate(COLUMN_DATE, 2); // Click on the "Sales" slice deptPieChart.filterUpdate(COLUMN_DEPARTMENT, 1); // Check the allRowsTable receives all the filter requests DataSet dataSet = allRowsTable.getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 2); }
@Test public void testRedraw() { AbstractDisplayer displayer = (AbstractDisplayer) displayerLocator.lookupDisplayer(settings); AbstractDisplayer.View view = displayer.getView(); displayer.addListener(listener); displayer.draw(); reset(view); reset(listener); assertEquals(displayer.isDrawn(), true); displayer.redraw(); assertEquals(displayer.isDrawn(), true); verify(listener).onDataLookup(displayer); verify(listener).onRedraw(displayer); verify(listener, never()).onDraw(displayer); verify(view, never()).showLoading(); assertDataSetValues(displayer.getDataSetHandler().getLastDataSet(), new String[][]{ {"2012", "13.00", "6,126.13"}, {"2013", "11.00", "5,252.96"}, {"2014", "11.00", "4,015.48"}, {"2015", "15.00", "7,336.69"} }, 0); }
@Test public void testDrillDown() { AbstractDisplayer allRowsTable = (AbstractDisplayer) displayerLocator.lookupDisplayer(allRows); DisplayerListener listener = mock(DisplayerListener.class); allRowsTable.addListener(listener); allRowsTable.draw(); // Filter by "Engineering" reset(listener); allRowsTable.filterUpdate(COLUMN_DEPARTMENT, 0); DataSet dataSet = allRowsTable.getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 19); verify(listener).onDataLookup(allRowsTable); verify(listener).onRedraw(allRowsTable); }
@Test public void testNotifications() { AbstractDisplayer deptPieChart = (AbstractDisplayer) displayerLocator.lookupDisplayer(byDepartment); DisplayerListener listener = mock(DisplayerListener.class); deptPieChart.addListener(listener); deptPieChart.draw(); deptPieChart.filterUpdate(COLUMN_DEPARTMENT, 0); verify(listener).onFilterEnabled(eq(deptPieChart), any(DataSetGroup.class)); verify(listener, never()).onRedraw(deptPieChart); deptPieChart.filterReset(); verify(listener).onFilterReset(eq(deptPieChart), anyList()); verify(listener, never()).onRedraw(deptPieChart); }
@Test public void testFilterUpdates() { displayerCoordinator.drawAll(); // Filter by amount DataSetFilter filterOp = new DataSetFilter(); CoreFunctionFilter columnFilter = new CoreFunctionFilter(COLUMN_AMOUNT, CoreFunctionType.BETWEEN, 1d, 1.2d); filterOp.addFilterColumn(columnFilter); yearBarChart.filterUpdate(filterOp); DataSet dataSet = allRowsTable.getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 1); // Filter by a different range filterOp = new DataSetFilter(); columnFilter = new CoreFunctionFilter(COLUMN_AMOUNT, CoreFunctionType.BETWEEN, 1000d, 2000d); filterOp.addFilterColumn(columnFilter); DisplayerListener listener = mock(DisplayerListener.class); allRowsTable.addListener(listener); yearBarChart.filterUpdate(filterOp); verify(listener).onRedraw(allRowsTable); dataSet = allRowsTable.getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 2); }
@Override public void onFilterEnabled(Displayer displayer, DataSetGroup groupOp) { if (displayerSettings.isFilterListeningEnabled()) { if (dataSetHandler.filter(groupOp)) { redraw(); } } }
@Test public void testRefreshDisabled() { AbstractDisplayer displayer = (AbstractDisplayer) displayerLocator.lookupDisplayer( DisplayerSettingsFactory.newTableSettings() .dataset(EXPENSES) .refreshOff() .buildSettings() ); displayer.draw(); assertEquals(displayer.isRefreshOn(), true); verify(displayer.getView()).cancelRefreshTimer(); verify(displayer.getView(), never()).enableRefreshTimer(anyInt()); }
public <D extends AbstractDisplayer> D initDisplayer(D displayer, DisplayerSettings settings) { displayer.setEvaluator(new DisplayerEvaluatorMock()); displayer.setFormatter(new DisplayerFormatterMock()); displayer.addListener(new AbstractDisplayerListener() { public void onError(Displayer displayer, ClientRuntimeError error) { throw new RuntimeException(error.getRootCause()); } }); if (settings != null) { displayer.setDisplayerSettings(settings); displayer.setDataSetHandler(new DataSetHandlerImpl(clientServices, settings.getDataSetLookup())); } return displayer; } }
@Test public void testSwitchRefreshOff() { AbstractDisplayer displayer = (AbstractDisplayer) displayerLocator.lookupDisplayer( DisplayerSettingsFactory.newTableSettings() .dataset(EXPENSES) .refreshOn(10, false) .buildSettings() ); // Draw is always required ion order to switch refresh on displayer.draw(); // Switch off reset(displayer.getView()); displayer.setRefreshOn(false); assertEquals(displayer.isRefreshOn(), false); verify(displayer.getView()).cancelRefreshTimer(); }
public void draw() { if (displayerSettings == null) { getView().errorMissingSettings(); getView().errorMissingHandler(); else if (!isDrawn()) { try { drawn = true; getView().showLoading(); beforeLoad(); beforeDataSetLookup(); dataSetHandler.lookupDataSet(new DataSetReadyCallback() { public void callback(DataSet result) { showError(new ClientRuntimeError(e));
@Test public void testSwitchRefreshOn() { AbstractDisplayer displayer = (AbstractDisplayer) displayerLocator.lookupDisplayer( DisplayerSettingsFactory.newTableSettings() .dataset(EXPENSES) .refreshOn(10, false) .buildSettings() ); // Refresh enabled on draw AbstractDisplayer.View view = displayer.getView(); displayer.draw(); verify(view).enableRefreshTimer(10); // Already on, nothing happens reset(view); displayer.setRefreshOn(true); verify(view, never()).enableRefreshTimer(anyInt()); verify(view, never()).cancelRefreshTimer(); } }
@Test public void test_BZ1255279_fix() { when(authorSelectorDisplayer.getView().getSelectedId()).thenReturn("1"); authorSelectorDisplayer.onItemSelected(); DataSet dataSet = allCommitsDisplayer.getDataSetHandler().getLastDataSet(); assertDataSetValues(dataSet, new String[][]{ {"user1", "repo1", "01/01/19 12:00", "Commit 1"}, }, 0); }
@Test public void testClose() { AbstractDisplayer displayer = (AbstractDisplayer) displayerLocator.lookupDisplayer(settings); AbstractDisplayer.View view = displayer.getView(); displayer.addListener(listener); displayer.close(); verify(view).clear(); verify(listener).onClose(displayer); } }
Interval intervalFiltered = filterInterval(columnId, row); selectedIntervals.remove(intervalFiltered); if (!selectedIntervals.isEmpty()) { filterApply(columnId, selectedIntervals); filterReset(columnId); selectedIntervals.add(intervalSelected); columnSelectionMap.put(columnId, selectedIntervals); filterApply(columnId, selectedIntervals); filterReset(columnId); } else { filterApply(columnId, selectedIntervals);
public void handleError(final String message, final Throwable error) { handleError(new ClientRuntimeError(message, error)); } public void handleError(final Throwable error) {