/** * 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); }
/** * 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); }
@Test public void testSelectProcess() { reset(view); reset(displayerListener); presenter.getTasksByProcess().filterUpdate(COLUMN_PROCESS_NAME, 1); final String process = "Process B"; assertEquals(presenter.getSelectedProcess(), process); verify(view).showBreadCrumb(process); verify(view).setHeaderText(i18n.selectedTaskStatusHeader("", process)); verify(displayerListener, times(17)).onRedraw(any(Displayer.class)); verify(displayerListener, never()).onError(any(Displayer.class), any(ClientRuntimeError.class)); }
@Test public void testSelectProcess() { reset(view); reset(displayerListener); presenter.getProcessesByType().filterUpdate(COLUMN_PROCESS_NAME, 1); final String process = "Process B"; assertEquals(presenter.getSelectedProcess(), process); verify(view).showBreadCrumb(process); verify(view).setHeaderText(i18n.selectedProcessStatusHeader("", process)); verify(displayerListener, times(12)).onRedraw(any(Displayer.class)); verify(displayerListener, never()).onError(any(Displayer.class), any(ClientRuntimeError.class)); }
@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 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 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 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 testFilterPropagations() { displayerCoordinator.drawAll(); // Click on the "Engineering" slice reset(listener); deptPieChart.filterUpdate(COLUMN_DEPARTMENT, 0); // Check the allRowsTable receives the filter request DataSet dataSet = allRowsTable.getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 19); verify(listener).onDataLookup(allRowsTable); verify(listener).onRedraw(allRowsTable); }
@Test public void testFilterPropagations() { displayerCoordinator.drawAll(); // Click on the "Engineering" slice reset(listener); deptPieChart.filterUpdate(COLUMN_DEPARTMENT, 0); // Check the allRowsTable receives the filter request DataSet dataSet = allRowsTable.getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 19); verify(listener).onDataLookup(allRowsTable); verify(listener).onRedraw(allRowsTable); }
@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 testDrawRequired() { AbstractDisplayer allRowsTable = (AbstractDisplayer) displayerLocator.lookupDisplayer(allRows); allRowsTable.filterUpdate(COLUMN_DEPARTMENT, 0); DataSet dataSet = allRowsTable.getDataSetHandler().getLastDataSet(); assertNull(dataSet); }
@Test public void testDrawRequired() { AbstractDisplayer allRowsTable = (AbstractDisplayer) displayerLocator.lookupDisplayer(allRows); allRowsTable.filterUpdate(COLUMN_DEPARTMENT, 0); DataSet dataSet = allRowsTable.getDataSetHandler().getLastDataSet(); assertNull(dataSet); }
@Test public void testClickOnOrgUnit() throws Exception { commitsPerOrganization.filterUpdate(COLUMN_ORG, 0); // "org1" selected DataSet dataSet = allCommitsDisplayer.getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 4); }
@Test public void testSelectYear() throws Exception { yearsSelectorDisplayer.filterUpdate(COLUMN_DATE, 0); // "2019" selected DataSet dataSet = allCommitsDisplayer.getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 7); }
@Test public void testSelectWeekOfDay() throws Exception { dayOfWeekSelectorDisplayer.filterUpdate(COLUMN_DATE, 2); // "Tuesday" selected DataSet dataSet = allCommitsDisplayer.getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 2); }
@Test public void testSelectYear() throws Exception { AbstractDisplayer displayer = (AbstractDisplayer) presenter.getCommitsByYearDisplayer(); displayer.filterUpdate(COLUMN_DATE, 0); // "2019" selected DataSet dataSet = presenter.getAllCommitsDisplayer().getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 4); }
@Test public void testSelectWeekOfDay() throws Exception { AbstractDisplayer displayer = (AbstractDisplayer) presenter.getCommitsByDayOfWeekDisplayer(); displayer.filterUpdate(COLUMN_DATE, 2); // "Tuesday" selected DataSet dataSet = presenter.getAllCommitsDisplayer().getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 2); }
@Test public void testSelectAuthorAndWeekOfDay() throws Exception { authorSelectorDisplayer.filterUpdate(COLUMN_AUTHOR, 1); // "user" selected DataSet dataSet = allCommitsDisplayer.getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 1); dayOfWeekSelectorDisplayer.filterUpdate(COLUMN_DATE, 2); // "Tuesday" selected dataSet = allCommitsDisplayer.getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 1); } }
@Test public void testAlwaysShow7Days() throws Exception { AbstractDisplayer displayer = (AbstractDisplayer) presenter.getTopAuthorSelectorDisplayer(); displayer.filterUpdate(COLUMN_AUTHOR, 1); // "user" selected DataSet dataSet = presenter.getAllCommitsDisplayer().getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 2); // Bar chart must always show 7 bars, one per day of week dataSet = presenter.getCommitsByDayOfWeekDisplayer().getDataSetHandler().getLastDataSet(); assertEquals(dataSet.getRowCount(), 7); }