@SuppressWarnings("unchecked") private GridColumn makeUiColumn() { return spy(new BaseGridColumn(mock(GridColumn.HeaderMetaData.class), mock(GridColumnRenderer.class), 100.0)); }
@Test public void deleteColumn() { BaseGridData data = spy(baseGridData); final BaseGridColumn<String> column = new BaseGridColumn<>(header, columnRenderer, 100.0); data.appendColumn(column); reset(data); data.deleteColumn(column); verify(data, times(2)) .internalRefreshWidth(booleanArgumentCaptor.capture(), optionalDoubleArgumentCaptor.capture()); assertTrue(booleanArgumentCaptor.getAllValues().stream().allMatch(elem -> elem)); assertFalse(optionalDoubleArgumentCaptor.getAllValues().stream().allMatch(OptionalDouble::isPresent)); }
@Test public void testRemoveColumnWhenThereIsNoEqualColumn() { final BaseGridColumn<String> column1 = new BaseGridColumn<>(header, columnRenderer, 25.0); final BaseGridColumn<String> column2 = new BaseGridColumn<>(header, columnRenderer, 50.0); baseGridData.insertColumn(0, column1); baseGridData.insertColumn(1, column2); baseGridData.removeColumn(new BaseGridColumn<String>(header, columnRenderer, 75.0)); final List<GridColumn<?>> columns = baseGridData.getColumns(); assertEquals(2, columns.size()); }
@Test public void testGetHeaderRowCountWithColumnsWithHeaderMetaData() { final BaseGridColumn<String> column1 = new BaseGridColumn<>(header, columnRenderer, 100.0); final BaseGridColumn<String> column2 = new BaseGridColumn<>(Collections.emptyList(), columnRenderer, 100.0); baseGridData.appendColumn(column1); baseGridData.appendColumn(column2); assertEquals(1, baseGridData.getHeaderRowCount()); }
@Test public void testDeleteColumn() { final BaseGridColumn<String> column1 = new BaseGridColumn<>(header, columnRenderer, 100.0); final BaseGridColumn<String> column2 = new BaseGridColumn<>(header, columnRenderer, 100.0); baseGridData.insertColumn(0, column1); baseGridData.insertColumn(0, column2); baseGridData.deleteColumn(column1); final List<GridColumn<?>> columns = baseGridData.getColumns(); assertSame(column2, columns.get(0)); assertEquals(1, columns.size()); }
@Test public void testRemoveColumnWhenThereIsTheSameColumn() { final BaseGridColumn<String> column1 = new BaseGridColumn<>(header, columnRenderer, 25.0); final BaseGridColumn<String> column2 = new BaseGridColumn<>(header, columnRenderer, 50.0); baseGridData.insertColumn(0, column1); baseGridData.insertColumn(0, column2); baseGridData.removeColumn(column2); final List<GridColumn<?>> columns = baseGridData.getColumns(); assertSame(column1, columns.get(0)); assertEquals(1, columns.size()); }
@Test public void testDeleteColumn() { final BaseGridColumn<String> column1 = new BaseGridColumn<>(header, columnRenderer, 100.0); final BaseGridColumn<String> column2 = new BaseGridColumn<>(header, columnRenderer, 100.0); baseGridData.insertColumn(0, column1); baseGridData.insertColumn(0, column2); baseGridData.deleteColumn(column1); final List<GridColumn<?>> columns = baseGridData.getColumns(); assertSame(column2, columns.get(0)); assertEquals(1, columns.size()); }
@Test public void testSelectHeaderCell() { final BaseGridColumn<String> column1 = new BaseGridColumn<>(header, columnRenderer, 100.0); final BaseGridColumn<String> column2 = new BaseGridColumn<>(header, columnRenderer, 100.0); baseGridData.appendColumn(column1); baseGridData.appendColumn(column2); assertThat(baseGridData.selectHeaderCell(0, 1).getMaxRowIndex()).isEqualTo(0); final List<GridData.SelectedCell> selectedHeaderCells = baseGridData.getSelectedHeaderCells(); assertThat(selectedHeaderCells).isNotEmpty(); assertThat(selectedHeaderCells.size()).isEqualTo(1); assertThat(selectedHeaderCells).contains(new GridData.SelectedCell(0, 1)); }
@Test public void testSelectHeaderCellOutOfHeaderRowRange() { final BaseGridColumn<String> column = new BaseGridColumn<>(header, columnRenderer, 100.0); baseGridData.appendColumn(column); assertThat(baseGridData.selectHeaderCell(1, 0).getMaxRowIndex()).isEqualTo(1); assertThat(baseGridData.getSelectedHeaderCells()).isEmpty(); }
@Test public void testSelectHeaderCell() { final BaseGridColumn<String> column1 = new BaseGridColumn<>(header, columnRenderer, 100.0); final BaseGridColumn<String> column2 = new BaseGridColumn<>(header, columnRenderer, 100.0); baseGridData.appendColumn(column1); baseGridData.appendColumn(column2); assertThat(baseGridData.selectHeaderCell(0, 1).getMaxRowIndex()).isEqualTo(0); final List<GridData.SelectedCell> selectedHeaderCells = baseGridData.getSelectedHeaderCells(); assertThat(selectedHeaderCells).isNotEmpty(); assertThat(selectedHeaderCells.size()).isEqualTo(1); assertThat(selectedHeaderCells).contains(new GridData.SelectedCell(0, 1)); }
@Test public void testGetHeaderRowCountWithColumnWithHeaderMetaData() { final BaseGridColumn<String> column = new BaseGridColumn<>(header, columnRenderer, 100.0); baseGridData.appendColumn(column); assertEquals(1, baseGridData.getHeaderRowCount()); }
@Test public void testGetHeaderRowCountWithColumnWithHeaderMetaData() { final BaseGridColumn<String> column = new BaseGridColumn<>(header, columnRenderer, 100.0); baseGridData.appendColumn(column); assertEquals(1, baseGridData.getHeaderRowCount()); }
@Test public void getWidth() { BaseGridData data = spy(baseGridData); double previous = data.getWidth(); BaseGridColumn<String> column = new BaseGridColumn<>(header, columnRenderer, 100.0); column.setVisible(false); data.appendColumn(column); double updated = data.getWidth(); assertEquals(previous, updated, 0.1); }
@Test @SuppressWarnings("unchecked") public void testGetUiHeaderRowIndexHeaderMinY() { point = new Point2D(COLUMN_WIDTH / 2, -5.0); setupGridWidget(); final GridColumn uiColumn = new BaseGridColumn<>(new BaseHeaderMetaData("first"), gridColumnRenderer, COLUMN_WIDTH); gridData.appendColumn(uiColumn); doReturn(uiColumn).when(ci).getColumn(); final Integer uiHeaderRowIndex = CoordinateUtilities.getUiHeaderRowIndex(view, point); assertNull(uiHeaderRowIndex); }
@Test @SuppressWarnings("unchecked") public void testGetUiHeaderRowIndexHeaderMinY() { point = new Point2D(COLUMN_WIDTH / 2, -5.0); setupGridWidget(); final GridColumn uiColumn = new BaseGridColumn<>(new BaseHeaderMetaData("first"), gridColumnRenderer, COLUMN_WIDTH); gridData.appendColumn(uiColumn); doReturn(uiColumn).when(ci).getColumn(); final Integer uiHeaderRowIndex = CoordinateUtilities.getUiHeaderRowIndex(view, point); assertNull(uiHeaderRowIndex); }
@Test @SuppressWarnings("unchecked") public void testGetUiHeaderRowIndexHeaderMaxY() { point = new Point2D(COLUMN_WIDTH / 2, gridRenderer.getHeaderHeight() + 5.0); setupGridWidget(); final GridColumn uiColumn = new BaseGridColumn<>(new BaseHeaderMetaData("first"), gridColumnRenderer, COLUMN_WIDTH); gridData.appendColumn(uiColumn); doReturn(uiColumn).when(ci).getColumn(); final Integer uiHeaderRowIndex = CoordinateUtilities.getUiHeaderRowIndex(view, point); assertNull(uiHeaderRowIndex); }
@Test @SuppressWarnings("unchecked") public void testGetUiHeaderRowIndexHeaderMaxY() { point = new Point2D(COLUMN_WIDTH / 2, gridRenderer.getHeaderHeight() + 5.0); setupGridWidget(); final GridColumn uiColumn = new BaseGridColumn<>(new BaseHeaderMetaData("first"), gridColumnRenderer, COLUMN_WIDTH); gridData.appendColumn(uiColumn); doReturn(uiColumn).when(ci).getColumn(); final Integer uiHeaderRowIndex = CoordinateUtilities.getUiHeaderRowIndex(view, point); assertNull(uiHeaderRowIndex); }
@Test public void testSetCellValueWhenExistingBaseGridCell() { final BaseGridColumn<String> column = new BaseGridColumn<>(header, columnRenderer, 25.0); baseGridData.insertColumn(0, column); baseGridData.appendRow(new BaseGridRow()); baseGridData.setCell(0, 0, () -> new BaseGridCell<>(new BaseGridCellValue<>(""))); baseGridData.setCellValue(0, 0, new BaseGridCellValue<>("hello")); assertThat(baseGridData.getCell(0, 0).getValue().getValue()).isEqualTo("hello"); assertThat(baseGridData.getCell(0, 0)).isInstanceOf(BaseGridCell.class); }
@Test public void testSetCellValueWhenExistingBaseGridCell() { final BaseGridColumn<String> column = new BaseGridColumn<>(header, columnRenderer, 25.0); baseGridData.insertColumn(0, column); baseGridData.appendRow(new BaseGridRow()); baseGridData.setCell(0, 0, () -> new BaseGridCell<>(new BaseGridCellValue<>(""))); baseGridData.setCellValue(0, 0, new BaseGridCellValue<>("hello")); assertThat(baseGridData.getCell(0, 0).getValue().getValue()).isEqualTo("hello"); assertThat(baseGridData.getCell(0, 0)).isInstanceOf(BaseGridCell.class); }
@Test public void testSetCellValueWhenExistingCustomGridCell() { final BaseGridColumn<String> column = new BaseGridColumn<>(header, columnRenderer, 25.0); baseGridData.insertColumn(0, column); baseGridData.appendRow(new BaseGridRow()); baseGridData.setCell(0, 0, () -> new CustomGridCell<>(new BaseGridCellValue<>("hello"))); baseGridData.setCellValue(0, 0, new BaseGridCellValue<>("hello")); assertThat(baseGridData.getCell(0, 0).getValue().getValue()).isEqualTo("hello"); assertThat(baseGridData.getCell(0, 0)).isInstanceOf(CustomGridCell.class); }