package com.vaadin.tests.components.grid; import org.junit.Before; import org.junit.Test; import com.vaadin.server.VaadinSession; import com.vaadin.tests.util.MockUI; import com.vaadin.ui.Grid; import com.vaadin.ui.Grid.Column; public class GridNullValueSortTest { private Grid<TestClass> grid; private Column<TestClass, String> stringColumn; private Column<TestClass, Object> nonComparableColumn; @Test public void sortWithNullValues() { this.grid.sort(this.stringColumn); this.grid.sort(this.nonComparableColumn); this.grid.getDataCommunicator().beforeClientResponse(true); } @Before public void setup() { VaadinSession.setCurrent(null); this.grid = new Grid<TestClass>(); this.stringColumn = this.grid.addColumn(bean -> bean.stringField); this.nonComparableColumn = this.grid.addColumn(bean -> bean.nonComparableField); this.grid.setItems(new TestClass(null, new Object()), new TestClass("something", null)); new MockUI().setContent(grid); } private static class TestClass { private final String stringField; private final Object nonComparableField; TestClass(final String stringField, final Object nonComparableField) { this.stringField = stringField; this.nonComparableField = nonComparableField; } } }