/** * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the * specific language governing permissions and limitations under the License. * * Copyright 2012-2016 the original author or authors. */ package org.assertj.db.util; import org.assertj.db.common.AbstractTest; import org.junit.Test; import java.util.Arrays; import static org.assertj.core.api.Assertions.assertThat; /** * Tests on the comparator for {@code Row} * * @author RĂ©gis Pouiller * */ public class RowComparator_Test extends AbstractTest { /** * Test the {@code valueOf} method. */ @Test public void test_valueOf() { assertThat(RowComparator.valueOf("INSTANCE")).isEqualTo(RowComparator.INSTANCE); } /** * Test the {@code compareTo} method. * * @throws Exception Exception */ @Test public void test_compareTo() throws Exception { assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("id"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test1"))), getRow(Arrays.asList("id"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 2), getValue(null, "test2"))))).isEqualTo( -1); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("id"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test1"))), getRow(Arrays.asList("id"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test2"))))).isEqualTo( -1); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("id"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test1"))), getRow(Arrays.asList("id"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test1"))))).isEqualTo( 0); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("id"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 2), getValue(null, "test1"))), getRow(Arrays.asList("id"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test2"))))).isEqualTo(1); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test1"))), getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 2), getValue(null, "test2"))))).isEqualTo(-1); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test1"))), getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 2), getValue(null, "test1"))))).isEqualTo(-1); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test1"))), getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test1"))))).isEqualTo(0); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test2"))), getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 2), getValue(null, "test1"))))).isEqualTo(1); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("id", "name"), Arrays.asList("id", "name", "plus"), Arrays.asList(getValue(null, 1), getValue( null, "test1"), getValue(null, null))), getRow(Arrays.asList("id"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 2), getValue(null, "test2"))))).isEqualTo(0); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test2"))), getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 2), getValue(null, null))))).isEqualTo(-1); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, null))), getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 2), getValue(null, "test1"))))).isEqualTo(1); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, null))), getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, null))))).isEqualTo(0); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, new byte[] {0}))), getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, new byte[] {1}))))).isEqualTo( 0); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, new byte[] {0}))), getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test"))))).isEqualTo( 0); assertThat( RowComparator.INSTANCE.compare( getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, "test"))), getRow(Arrays.asList("name"), Arrays.asList("id", "name"), Arrays.asList(getValue(null, 1), getValue(null, new byte[] {1}))))).isEqualTo(0); } }