/**
* 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.api.assertions;
import org.assertj.core.api.Assertions;
import org.assertj.db.api.TableColumnAssert;
import org.assertj.db.common.AbstractTest;
import org.assertj.db.common.NeedReload;
import org.assertj.db.type.Table;
import org.junit.Test;
import static org.assertj.db.api.Assertions.assertThat;
import static org.junit.Assert.fail;
/**
* Tests on {@link AssertOnColumnEquality} class :
* {@link org.assertj.db.api.assertions.AssertOnColumnEquality#hasValues(String...)} method.
*
* @author RĂ©gis Pouiller
*
*/
public class AssertOnColumnEquality_HasValues_String_Test extends AbstractTest {
/**
* This method tests the {@code hasValues} assertion method.
*/
@Test
@NeedReload
public void test_has_values() throws Exception {
Table table = new Table(source, "test");
TableColumnAssert tableColumnAssert = assertThat(table).column("var3");
TableColumnAssert tableColumnAssertReturn = tableColumnAssert.hasValues("2", "20", "25", "0");
Assertions.assertThat(tableColumnAssert).isSameAs(tableColumnAssertReturn);
Table table2 = new Table(source, "test2");
TableColumnAssert tableColumnAssert2 = assertThat(table2).column("var3");
TableColumnAssert tableColumnAssertReturn2 = tableColumnAssert2.hasValues("2", null);
Assertions.assertThat(tableColumnAssert2).isSameAs(tableColumnAssertReturn2);
TableColumnAssert tableColumnAssert3 = assertThat(table).column("var4");
TableColumnAssert tableColumnAssertReturn3 = tableColumnAssert3.hasValues("3", "30", "300", "0");
Assertions.assertThat(tableColumnAssert3).isSameAs(tableColumnAssertReturn3);
TableColumnAssert tableColumnAssert4 = assertThat(table2).column("var4");
TableColumnAssert tableColumnAssertReturn4 = tableColumnAssert4.hasValues("3", null);
Assertions.assertThat(tableColumnAssert4).isSameAs(tableColumnAssertReturn4);
TableColumnAssert tableColumnAssert5 = assertThat(table).column("var5");
TableColumnAssert tableColumnAssertReturn5 = tableColumnAssert5.hasValues("4", "40", "400", "0");
Assertions.assertThat(tableColumnAssert5).isSameAs(tableColumnAssertReturn5);
TableColumnAssert tableColumnAssert6 = assertThat(table2).column("var5");
TableColumnAssert tableColumnAssertReturn6 = tableColumnAssert6.hasValues("4", null);
Assertions.assertThat(tableColumnAssert6).isSameAs(tableColumnAssertReturn6);
TableColumnAssert tableColumnAssert7 = assertThat(table).column("var6");
TableColumnAssert tableColumnAssertReturn7 = tableColumnAssert7.hasValues("5.6", "50.6", "500.6", "0");
Assertions.assertThat(tableColumnAssert7).isSameAs(tableColumnAssertReturn7);
TableColumnAssert tableColumnAssert8 = assertThat(table2).column("var6");
TableColumnAssert tableColumnAssertReturn8 = tableColumnAssert8.hasValues("5.6", null);
Assertions.assertThat(tableColumnAssert8).isSameAs(tableColumnAssertReturn8);
TableColumnAssert tableColumnAssert9 = assertThat(table).column("var7");
TableColumnAssert tableColumnAssertReturn9 = tableColumnAssert9.hasValues("7.8", "70.8", "700.8", "0");
Assertions.assertThat(tableColumnAssert9).isSameAs(tableColumnAssertReturn9);
TableColumnAssert tableColumnAssert10 = assertThat(table2).column("var7");
TableColumnAssert tableColumnAssertReturn10 = tableColumnAssert10.hasValues("7.8", null);
Assertions.assertThat(tableColumnAssert10).isSameAs(tableColumnAssertReturn10);
TableColumnAssert tableColumnAssert11 = assertThat(table).column("var13");
TableColumnAssert tableColumnAssertReturn11 = tableColumnAssert11.hasValues("5", "50", "500", "500");
Assertions.assertThat(tableColumnAssert11).isSameAs(tableColumnAssertReturn11);
TableColumnAssert tableColumnAssert12 = assertThat(table2).column("var13");
TableColumnAssert tableColumnAssertReturn12 = tableColumnAssert12.hasValues("5", null);
Assertions.assertThat(tableColumnAssert12).isSameAs(tableColumnAssertReturn12);
TableColumnAssert tableColumnAssert13 = assertThat(table).column("var14");
TableColumnAssert tableColumnAssertReturn13 = tableColumnAssert13.hasValues("7", "70", "700", "700");
Assertions.assertThat(tableColumnAssert13).isSameAs(tableColumnAssertReturn13);
TableColumnAssert tableColumnAssert14 = assertThat(table2).column("var14");
TableColumnAssert tableColumnAssertReturn14 = tableColumnAssert14.hasValues("7", null);
Assertions.assertThat(tableColumnAssert14).isSameAs(tableColumnAssertReturn14);
TableColumnAssert tableColumnAssert15 = assertThat(table).column("var12");
TableColumnAssert tableColumnAssertReturn15 = tableColumnAssert15.hasValues("text", "another text",
"another text again",
"another text again");
Assertions.assertThat(tableColumnAssert15).isSameAs(tableColumnAssertReturn15);
TableColumnAssert tableColumnAssert16 = assertThat(table2).column("var12");
TableColumnAssert tableColumnAssertReturn16 = tableColumnAssert16.hasValues("text", null);
Assertions.assertThat(tableColumnAssert16).isSameAs(tableColumnAssertReturn16);
TableColumnAssert tableColumnAssert20 = assertThat(table).column("var8");
TableColumnAssert tableColumnAssertReturn20 = tableColumnAssert20.hasValues("09:46:30",
"12:29:49",
"12:29:49",
"12:29:49");
Assertions.assertThat(tableColumnAssert20).isSameAs(tableColumnAssertReturn20);
TableColumnAssert tableColumnAssert21 = assertThat(table2).column("var8");
TableColumnAssert tableColumnAssertReturn21 = tableColumnAssert21.hasValues("09:46:30", null);
Assertions.assertThat(tableColumnAssert21).isSameAs(tableColumnAssertReturn21);
TableColumnAssert tableColumnAssert22 = assertThat(table).column("var10");
TableColumnAssert tableColumnAssertReturn22 = tableColumnAssert22.hasValues(
"2014-05-24T09:46:30",
"2014-05-30T12:29:49",
"2014-05-30T00:00:00",
"2014-05-30T00:00:00");
Assertions.assertThat(tableColumnAssert22).isSameAs(tableColumnAssertReturn22);
TableColumnAssert tableColumnAssert23 = assertThat(table2).column("var10");
TableColumnAssert tableColumnAssertReturn23 = tableColumnAssert23.hasValues("2014-05-24T09:46:30",
null);
Assertions.assertThat(tableColumnAssert23).isSameAs(tableColumnAssertReturn23);
TableColumnAssert tableColumnAssert24 = assertThat(table).column("var9");
TableColumnAssert tableColumnAssertReturn24 = tableColumnAssert24.hasValues("2014-05-24T00:00:00",
"2014-05-30T00:00:00",
"2014-05-30T00:00:00",
"2014-05-30T00:00:00");
Assertions.assertThat(tableColumnAssert24).isSameAs(tableColumnAssertReturn24);
TableColumnAssert tableColumnAssert25 = assertThat(table2).column("var9");
TableColumnAssert tableColumnAssertReturn25 = tableColumnAssert25.hasValues("2014-05-24T00:00:00",
null);
Assertions.assertThat(tableColumnAssert25).isSameAs(tableColumnAssertReturn25);
TableColumnAssert tableColumnAssert17 = assertThat(table).column("var9");
TableColumnAssert tableColumnAssertReturn17 = tableColumnAssert17.hasValues(
"2014-05-24",
"2014-05-30",
"2014-05-30",
"2014-05-30");
Assertions.assertThat(tableColumnAssert17).isSameAs(tableColumnAssertReturn17);
TableColumnAssert tableColumnAssert18 = assertThat(table2).column("var9");
TableColumnAssert tableColumnAssertReturn18 = tableColumnAssert18.hasValues("2014-05-24",
null);
Assertions.assertThat(tableColumnAssert18).isSameAs(tableColumnAssertReturn18);
update("update test2 set var10 = '2014-05-24' where var1 = 1");
table2 = new Table(source, "test2");
TableColumnAssert tableColumnAssert19 = assertThat(table2).column("var10");
TableColumnAssert tableColumnAssertReturn19 = tableColumnAssert19.hasValues("2014-05-24",
null);
Assertions.assertThat(tableColumnAssert19).isSameAs(tableColumnAssertReturn19);
TableColumnAssert tableColumnAssert99 = assertThat(table2).column("var16");
TableColumnAssert tableColumnAssertReturn99 = tableColumnAssert99.hasValues("30b443ae-c0c9-4790-9bec-ce1380808435",
null);
Assertions.assertThat(tableColumnAssert99).isSameAs(tableColumnAssertReturn99);
}
/**
* This method should fail because the values are different.
*/
@Test
public void should_fail_because_values_are_different() throws Exception {
Table table = new Table(source, "test");
TableColumnAssert tableColumnAssert = assertThat(table).column("var3");
try {
tableColumnAssert.hasValues("2", "20", "35", "0");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 2 (column name : VAR3) of TEST table] %n"
+ "Expecting that the value at index 2:%n"
+ " <\"25\">%n"
+ "to be equal to: %n"
+ " <\"35\">"));
}
Table table2 = new Table(source, "test2");
TableColumnAssert tableColumnAssert2 = assertThat(table2).column("var3");
try {
tableColumnAssert2.hasValues("2", "2");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 2 (column name : VAR3) of TEST2 table] %n"
+ "Expecting that the value at index 1:%n"
+ " <null>%n"
+ "to be equal to: %n"
+ " <\"2\">"));
}
TableColumnAssert tableColumnAssert3 = assertThat(table).column("var4");
try {
tableColumnAssert3.hasValues("3", "35", "300", "0");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 3 (column name : VAR4) of TEST table] %n"
+ "Expecting that the value at index 1:%n"
+ " <\"30\">%n"
+ "to be equal to: %n"
+ " <\"35\">"));
}
TableColumnAssert tableColumnAssert4 = assertThat(table2).column("var4");
try {
tableColumnAssert4.hasValues("3", "3");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 3 (column name : VAR4) of TEST2 table] %n"
+ "Expecting that the value at index 1:%n"
+ " <null>%n"
+ "to be equal to: %n"
+ " <\"3\">"));
}
TableColumnAssert tableColumnAssert5 = assertThat(table).column("var5");
try {
tableColumnAssert5.hasValues("4", "45", "400", "0");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 4 (column name : VAR5) of TEST table] %n"
+ "Expecting that the value at index 1:%n"
+ " <\"40\">%n"
+ "to be equal to: %n"
+ " <\"45\">"));
}
TableColumnAssert tableColumnAssert6 = assertThat(table2).column("var5");
try {
tableColumnAssert6.hasValues("4", "4");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 4 (column name : VAR5) of TEST2 table] %n"
+ "Expecting that the value at index 1:%n"
+ " <null>%n"
+ "to be equal to: %n"
+ " <\"4\">"));
}
TableColumnAssert tableColumnAssert7 = assertThat(table).column("var6");
try {
tableColumnAssert7.hasValues("5.6", "55.6", "500.6", "0");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 5 (column name : VAR6) of TEST table] %n"
+ "Expecting that the value at index 1:%n"
+ " <\"50.60\">%n"
+ "to be equal to: %n"
+ " <\"55.6\">"));
}
TableColumnAssert tableColumnAssert8 = assertThat(table2).column("var6");
try {
tableColumnAssert8.hasValues("5.6", "5.6");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 5 (column name : VAR6) of TEST2 table] %n"
+ "Expecting that the value at index 1:%n"
+ " <null>%n"
+ "to be equal to: %n"
+ " <\"5.6\">"));
}
TableColumnAssert tableColumnAssert9 = assertThat(table).column("var7");
try {
tableColumnAssert9.hasValues("7.8", "75.8", "700.8", "0");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 6 (column name : VAR7) of TEST table] %n"
+ "Expecting that the value at index 1:%n"
+ " <\"70.8\">%n"
+ "to be equal to: %n"
+ " <\"75.8\">"));
}
TableColumnAssert tableColumnAssert10 = assertThat(table2).column("var7");
try {
tableColumnAssert10.hasValues("7.8", "7.8");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 6 (column name : VAR7) of TEST2 table] %n"
+ "Expecting that the value at index 1:%n"
+ " <null>%n"
+ "to be equal to: %n"
+ " <\"7.8\">"));
}
TableColumnAssert tableColumnAssert11 = assertThat(table).column("var13");
try {
tableColumnAssert11.hasValues("5", "50", "505", "500");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 12 (column name : VAR13) of TEST table] %n"
+ "Expecting that the value at index 2:%n"
+ " <\"500.00\">%n"
+ "to be equal to: %n"
+ " <\"505\">"));
}
TableColumnAssert tableColumnAssert12 = assertThat(table2).column("var13");
try {
tableColumnAssert12.hasValues("5", "5");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 12 (column name : VAR13) of TEST2 table] %n"
+ "Expecting that the value at index 1:%n"
+ " <null>%n"
+ "to be equal to: %n"
+ " <\"5\">"));
}
TableColumnAssert tableColumnAssert13 = assertThat(table).column("var14");
try {
tableColumnAssert13.hasValues("7", "70", "750", "700");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 13 (column name : VAR14) of TEST table] %n"
+ "Expecting that the value at index 2:%n"
+ " <\"700.0\">%n"
+ "to be equal to: %n"
+ " <\"750\">"));
}
TableColumnAssert tableColumnAssert14 = assertThat(table2).column("var14");
try {
tableColumnAssert14.hasValues("7", "7");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 13 (column name : VAR14) of TEST2 table] %n"
+ "Expecting that the value at index 1:%n"
+ " <null>%n"
+ "to be equal to: %n"
+ " <\"7\">"));
}
TableColumnAssert tableColumnAssert15 = assertThat(table).column("var12");
try {
tableColumnAssert15.hasValues("text", "another text", "another text", "another text again");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 11 (column name : VAR12) of TEST table] %n"
+ "Expecting that the value at index 2:%n"
+ " <\"another text again\">%n"
+ "to be equal to: %n"
+ " <\"another text\">"));
}
TableColumnAssert tableColumnAssert16 = assertThat(table2).column("var12");
try {
tableColumnAssert16.hasValues("text", "text");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 11 (column name : VAR12) of TEST2 table] %n"
+ "Expecting that the value at index 1:%n"
+ " <null>%n"
+ "to be equal to: %n"
+ " <\"text\">"));
}
TableColumnAssert tableColumnAssert17 = assertThat(table).column("var9");
try {
tableColumnAssert17.hasValues("2014-05-24",
"2014-05-29",
"2014-05-30",
"2014-05-30");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 8 (column name : VAR9) of TEST table] %n"
+ "Expecting that the value at index 1:%n"
+ " <\"2014-05-30\">%n"
+ "to be equal to: %n"
+ " <\"2014-05-29\">"));
}
TableColumnAssert tableColumnAssert18 = assertThat(table2).column("var9");
try {
tableColumnAssert18.hasValues("2014-05-24",
"2014-05-24");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 8 (column name : VAR9) of TEST2 table] %n"
+ "Expecting that the value at index 1:%n"
+ " <null>%n"
+ "to be equal to: %n"
+ " <\"2014-05-24\">"));
}
TableColumnAssert tableColumnAssert19 = assertThat(table2).column("var10");
try {
tableColumnAssert19.hasValues("2014-05-23",
null);
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 9 (column name : VAR10) of TEST2 table] %n"
+ "Expecting that the value at index 0:%n"
+ " <\"2014-05-24T09:46:30.000000000\">%n"
+ "to be equal to: %n"
+ " <\"2014-05-23\">"));
}
TableColumnAssert tableColumnAssert20 = assertThat(table).column("var8");
try {
tableColumnAssert20.hasValues("12:29:49",
"12:29:49",
"12:29:49",
"12:29:49");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 7 (column name : VAR8) of TEST table] %n"
+ "Expecting that the value at index 0:%n"
+ " <\"09:46:30.000000000\">%n"
+ "to be equal to: %n"
+ " <\"12:29:49\">"));
}
TableColumnAssert tableColumnAssert21 = assertThat(table2).column("var8");
try {
tableColumnAssert21.hasValues("09:46:30",
"12:29:49");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 7 (column name : VAR8) of TEST2 table] %n"
+ "Expecting that the value at index 1:%n"
+ " <null>%n"
+ "to be equal to: %n"
+ " <\"12:29:49\">"));
}
TableColumnAssert tableColumnAssert22 = assertThat(table).column("var10");
try {
tableColumnAssert22.hasValues("2014-05-24T09:46:30",
"2014-05-30T13:29:49",
"2014-05-30T00:00:00",
"2014-05-30T00:00:00");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 9 (column name : VAR10) of TEST table] %n"
+ "Expecting that the value at index 1:%n"
+ " <\"2014-05-30T12:29:49.000000000\">%n"
+ "to be equal to: %n"
+ " <\"2014-05-30T13:29:49\">"));
}
TableColumnAssert tableColumnAssert23 = assertThat(table2).column("var10");
try {
tableColumnAssert23.hasValues("2014-05-24T09:46:30",
"2014-05-24T09:46:30");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 9 (column name : VAR10) of TEST2 table] %n"
+ "Expecting that the value at index 1:%n"
+ " <null>%n"
+ "to be equal to: %n"
+ " <\"2014-05-24T09:46:30\">"));
}
TableColumnAssert tableColumnAssert24 = assertThat(table).column("var9");
try {
tableColumnAssert24.hasValues("2014-05-24T00:00:00",
"2014-05-24T00:00:00",
"2014-05-30T00:00:00",
"2014-05-30T00:00:00");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 8 (column name : VAR9) of TEST table] %n"
+ "Expecting that the value at index 1:%n"
+ " <\"2014-05-30T00:00:00.000000000\">%n"
+ "to be equal to: %n"
+ " <\"2014-05-24T00:00:00\">"));
}
TableColumnAssert tableColumnAssert25 = assertThat(table2).column("var9");
try {
tableColumnAssert25.hasValues("2014-05-24T00:00:00",
"2014-05-24T00:00:00");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 8 (column name : VAR9) of TEST2 table] %n"
+ "Expecting that the value at index 1:%n"
+ " <null>%n"
+ "to be equal to: %n"
+ " <\"2014-05-24T00:00:00\">"));
}
TableColumnAssert tableColumnAssert26 = assertThat(table2).column("var16");
try {
tableColumnAssert26.hasValues("30B443AE-C0C9-4790-9BEC-CE1380808435",
"30B443AE-C0C9-4790-9BEC-CE1380808435");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 15 (column name : VAR16) of TEST2 table] %n"
+ "Expecting that the value at index 1:%n"
+ " <null>%n"
+ "to be equal to: %n"
+ " <\"30B443AE-C0C9-4790-9BEC-CE1380808435\">"));
}
TableColumnAssert tableColumnAssert27 = assertThat(table2).column("var16");
try {
tableColumnAssert27.hasValues("88838129-291E-40A9-A94C-A15BE36CF7C3",
"30B443AE-C0C9-4790-9BEC-CE1380808435");
fail("An exception must be raised");
} catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 15 (column name : VAR16) of TEST2 table] %n"
+ "Expecting that the value at index 0:%n"
+ " <\"30b443ae-c0c9-4790-9bec-ce1380808435\">%n"
+ "to be equal to: %n"
+ " <\"88838129-291E-40A9-A94C-A15BE36CF7C3\">"));
}
}
}