/**
* 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.database.sqlite;
import org.assertj.core.api.Assertions;
import org.assertj.db.common.NeedReload;
import org.assertj.db.exception.AssertJDBException;
import org.assertj.db.output.Outputs;
import org.assertj.db.type.Changes;
import org.assertj.db.type.Table;
import org.junit.Before;
import org.junit.Test;
import javax.sql.DataSource;
import java.io.ByteArrayOutputStream;
import static org.assertj.db.api.Assertions.assertThat;
import static org.assertj.db.output.Outputs.output;
import static org.junit.Assert.fail;
/**
* Test on the Sqlite database.
*
* @author RĂ©gis Pouiller
*/
public class SqliteDatabase_DataSource_NSNSNS_Test extends AbstractSqliteTest {
private DataSource dataSource;
@Before
public void init() {
dataSource = dataSourceNSNSNS;
}
@Test
@NeedReload
public void test_Outputs_output() {
Table table = new Table(dataSource, "test", null, new String[] {"var20"});
Changes changes = new Changes(table).setStartPointNow();
update();
changes.setEndPointNow();
ByteArrayOutputStream byteArrayOutputStream0 = new ByteArrayOutputStream();
ByteArrayOutputStream byteArrayOutputStream1 = new ByteArrayOutputStream();
ByteArrayOutputStream byteArrayOutputStream2 = new ByteArrayOutputStream();
ByteArrayOutputStream byteArrayOutputStream3 = new ByteArrayOutputStream();
ByteArrayOutputStream byteArrayOutputStream4 = new ByteArrayOutputStream();
ByteArrayOutputStream byteArrayOutputStream5 = new ByteArrayOutputStream();
ByteArrayOutputStream byteArrayOutputStream6 = new ByteArrayOutputStream();
ByteArrayOutputStream byteArrayOutputStream7 = new ByteArrayOutputStream();
ByteArrayOutputStream byteArrayOutputStream8 = new ByteArrayOutputStream();
ByteArrayOutputStream byteArrayOutputStream9 = new ByteArrayOutputStream();
ByteArrayOutputStream byteArrayOutputStream10 = new ByteArrayOutputStream();
Outputs.output(table).toStream(byteArrayOutputStream0)
.column().toStream(byteArrayOutputStream1)
.value().toStream(byteArrayOutputStream2)
.row().toStream(byteArrayOutputStream3)
.value().toStream(byteArrayOutputStream4);
output(changes).toStream(byteArrayOutputStream5)
.change().toStream(byteArrayOutputStream6)
.rowAtEndPoint().toStream(byteArrayOutputStream7)
.value().toStream(byteArrayOutputStream8)
.column().toStream(byteArrayOutputStream9)
.valueAtEndPoint().toStream(byteArrayOutputStream10);
Assertions.assertThat(byteArrayOutputStream0.toString()).isEqualTo(String.format("[test table]%n"
+ "|-----------|---------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | | | | | | | | | | | | | | | | | | | | |%n"
+ "| | PRIMARY | Var1 | vAr2 | vaR3 | var4 | var5 | var6 | var7 | var8 | var9 | var10 | var11 | var12 | var13 | var14 | var15 | var16 | var17 | var18 | var19 |%n"
+ "| | KEY | (NUMBER) | (TEXT) | (TEXT) | (TEXT) | (TEXT) | (DATE) | (NUMBER) | (NUMBER) | (NUMBER) | (NUMBER) | (NUMBER) | (TEXT) | (TEXT) | (NUMBER) | (NUMBER) | (NUMBER) | (TEXT) | (TEXT) | (TEXT) |%n"
+ "| | | Index : 0 | Index : 1 | Index : 2 | Index : 3 | Index : 4 | Index : 5 | Index : 6 | Index : 7 | Index : 8 | Index : 9 | Index : 10 | Index : 11 | Index : 12 | Index : 13 | Index : 14 | Index : 15 | Index : 16 | Index : 17 | Index : 18 |%n"
+ "|-----------|---------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| Index : 0 | | 1 | 13 | 2 | 14 | 15 | 2007-12-23 | 3.3 | 4.4 | 5.5 | 6.6 | 20 | 8 | 16 | 9 | 10.1 | 11 | 09:01:00 | 2007-12-23 09:01:00.0 | 12 |%n"
+ "|-----------|---------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"));
Assertions.assertThat(byteArrayOutputStream1.toString()).isEqualTo(String.format("[Column at index 0 (column name : Var1) of test table]%n"
+ "|-----------|----------|%n"
+ "| | Var1 |%n"
+ "| | (NUMBER) |%n"
+ "|-----------|----------|%n"
+ "| Index : 0 | 1 |%n"
+ "|-----------|----------|%n"));
Assertions.assertThat(byteArrayOutputStream2.toString()).isEqualTo(String.format("[Value at index 0 of Column at index 0 (column name : Var1) of test table]%n"
+ "|----------|%n"
+ "| Var1 |%n"
+ "| (NUMBER) |%n"
+ "|----------|%n"
+ "| 1 |%n"
+ "|----------|%n"));
Assertions.assertThat(byteArrayOutputStream3.toString()).isEqualTo(String.format("[Row at index 0 of test table]%n"
+ "|---------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | | | | | | | | | | | | | | | | | | | |%n"
+ "| PRIMARY | Var1 | vAr2 | vaR3 | var4 | var5 | var6 | var7 | var8 | var9 | var10 | var11 | var12 | var13 | var14 | var15 | var16 | var17 | var18 | var19 |%n"
+ "| KEY | (NUMBER) | (TEXT) | (TEXT) | (TEXT) | (TEXT) | (DATE) | (NUMBER) | (NUMBER) | (NUMBER) | (NUMBER) | (NUMBER) | (TEXT) | (TEXT) | (NUMBER) | (NUMBER) | (NUMBER) | (TEXT) | (TEXT) | (TEXT) |%n"
+ "| | Index : 0 | Index : 1 | Index : 2 | Index : 3 | Index : 4 | Index : 5 | Index : 6 | Index : 7 | Index : 8 | Index : 9 | Index : 10 | Index : 11 | Index : 12 | Index : 13 | Index : 14 | Index : 15 | Index : 16 | Index : 17 | Index : 18 |%n"
+ "|---------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | 1 | 13 | 2 | 14 | 15 | 2007-12-23 | 3.3 | 4.4 | 5.5 | 6.6 | 20 | 8 | 16 | 9 | 10.1 | 11 | 09:01:00 | 2007-12-23 09:01:00.0 | 12 |%n"
+ "|---------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"));
Assertions.assertThat(byteArrayOutputStream4.toString()).isEqualTo(String.format("[Value at index 0 (column name : Var1) of Row at index 0 of test table]%n"
+ "|----------|%n"
+ "| Var1 |%n"
+ "| (NUMBER) |%n"
+ "|----------|%n"
+ "| 1 |%n"
+ "|----------|%n"));
Assertions.assertThat(byteArrayOutputStream5.toString()).isEqualTo(String.format("[Changes on test table of a data source]%n"
+ "|-----------|----------|-------|---------|----------------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | | | | | | | | | | | | | | | | | | | | | | | |%n"
+ "| | TYPE | TABLE | PRIMARY | | Var1 | vAr2 | vaR3 | var4 | var5 | var6 | var7 | var8 | var9 | var10 | var11 | var12 | var13 | var14 | var15 | var16 | var17 | var18 | var19 |%n"
+ "| | | | KEY | | (NUMBER) | (TEXT) | (TEXT) | (TEXT) | (TEXT) | (DATE) | (NUMBER) | (NUMBER) | (NUMBER) | (NUMBER) | (NUMBER) | (TEXT) | (TEXT) | (NUMBER) | (NUMBER) | (NUMBER) | (TEXT) | (TEXT) | (TEXT) |%n"
+ "| | | | | | Index : 0 | Index : 1 | Index : 2 | Index : 3 | Index : 4 | Index : 5 | Index : 6 | Index : 7 | Index : 8 | Index : 9 | Index : 10 | Index : 11 | Index : 12 | Index : 13 | Index : 14 | Index : 15 | Index : 16 | Index : 17 | Index : 18 |%n"
+ "|-----------|----------|-------|---------|----------------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | | | | At start point | | | | | | | | | | | | | | | | | | | |%n"
+ "| Index : 0 | CREATION | test | |----------------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | | | | At end point | 1 | 13 | 2 | 14 | 15 | 2007-12-23 | 3.3 | 4.4 | 5.5 | 6.6 | 20 | 8 | 16 | 9 | 10.1 | 11 | 09:01:00 | 2007-12-23 09:01:00.0 | 12 |%n"
+ "|-----------|----------|-------|---------|----------------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "|-----------|----------|-------|---------|----------------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | | | | | | | | | | | | | | | | | | | | | | | |%n"
+ "| | TYPE | TABLE | PRIMARY | | Var1 | vAr2 | vaR3 | var4 | var5 | var6 | var7 | var8 | var9 | var10 | var11 | var12 | var13 | var14 | var15 | var16 | var17 | var18 | var19 |%n"
+ "| | | | KEY | | (NUMBER) | (TEXT) | (TEXT) | (TEXT) | (TEXT) | (DATE) | (NUMBER) | (NUMBER) | (NUMBER) | (NUMBER) | (NUMBER) | (TEXT) | (TEXT) | (NUMBER) | (NUMBER) | (NUMBER) | (TEXT) | (TEXT) | (TEXT) |%n"
+ "| | | | | | Index : 0 | Index : 1 | Index : 2 | Index : 3 | Index : 4 | Index : 5 | Index : 6 | Index : 7 | Index : 8 | Index : 9 | Index : 10 | Index : 11 | Index : 12 | Index : 13 | Index : 14 | Index : 15 | Index : 16 | Index : 17 | Index : 18 |%n"
+ "|-----------|----------|-------|---------|----------------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | | | | At start point | 1 | 13 | 2 | 14 | 15 | 2007-12-23 | 3.3 | 4.4 | 5.5 | 6.6 | 7 | 8 | 16 | 9 | 10.1 | 11 | 09:01:00 | 2007-12-23 09:01:00.0 | 12 |%n"
+ "| Index : 1 | DELETION | test | |----------------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | | | | At end point | | | | | | | | | | | | | | | | | | | |%n"
+ "|-----------|----------|-------|---------|----------------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"));
Assertions.assertThat(byteArrayOutputStream6.toString()).isEqualTo(String.format("[Change at index 0 of Changes on test table of a data source]%n"
+ "|----------|-------|---------|----------------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | | | | | | | | | | | | | | | | | | | | | | |%n"
+ "| TYPE | TABLE | PRIMARY | | Var1 | vAr2 | vaR3 | var4 | var5 | var6 | var7 | var8 | var9 | var10 | var11 | var12 | var13 | var14 | var15 | var16 | var17 | var18 | var19 |%n"
+ "| | | KEY | | (NUMBER) | (TEXT) | (TEXT) | (TEXT) | (TEXT) | (DATE) | (NUMBER) | (NUMBER) | (NUMBER) | (NUMBER) | (NUMBER) | (TEXT) | (TEXT) | (NUMBER) | (NUMBER) | (NUMBER) | (TEXT) | (TEXT) | (TEXT) |%n"
+ "| | | | | Index : 0 | Index : 1 | Index : 2 | Index : 3 | Index : 4 | Index : 5 | Index : 6 | Index : 7 | Index : 8 | Index : 9 | Index : 10 | Index : 11 | Index : 12 | Index : 13 | Index : 14 | Index : 15 | Index : 16 | Index : 17 | Index : 18 |%n"
+ "|----------|-------|---------|----------------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | | | At start point | | | | | | | | | | | | | | | | | | | |%n"
+ "| CREATION | test | |----------------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | | | At end point | 1 | 13 | 2 | 14 | 15 | 2007-12-23 | 3.3 | 4.4 | 5.5 | 6.6 | 20 | 8 | 16 | 9 | 10.1 | 11 | 09:01:00 | 2007-12-23 09:01:00.0 | 12 |%n"
+ "|----------|-------|---------|----------------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"));
Assertions.assertThat(byteArrayOutputStream7.toString()).isEqualTo(String.format("[Row at end point of Change at index 0 of Changes on test table of a data source]%n"
+ "|---------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | | | | | | | | | | | | | | | | | | | |%n"
+ "| PRIMARY | Var1 | vAr2 | vaR3 | var4 | var5 | var6 | var7 | var8 | var9 | var10 | var11 | var12 | var13 | var14 | var15 | var16 | var17 | var18 | var19 |%n"
+ "| KEY | (NUMBER) | (TEXT) | (TEXT) | (TEXT) | (TEXT) | (DATE) | (NUMBER) | (NUMBER) | (NUMBER) | (NUMBER) | (NUMBER) | (TEXT) | (TEXT) | (NUMBER) | (NUMBER) | (NUMBER) | (TEXT) | (TEXT) | (TEXT) |%n"
+ "| | Index : 0 | Index : 1 | Index : 2 | Index : 3 | Index : 4 | Index : 5 | Index : 6 | Index : 7 | Index : 8 | Index : 9 | Index : 10 | Index : 11 | Index : 12 | Index : 13 | Index : 14 | Index : 15 | Index : 16 | Index : 17 | Index : 18 |%n"
+ "|---------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"
+ "| | 1 | 13 | 2 | 14 | 15 | 2007-12-23 | 3.3 | 4.4 | 5.5 | 6.6 | 20 | 8 | 16 | 9 | 10.1 | 11 | 09:01:00 | 2007-12-23 09:01:00.0 | 12 |%n"
+ "|---------|-----------|-----------|-----------|-----------|-----------|------------|-----------|-----------|-----------|-----------|------------|------------|------------|------------|------------|------------|------------|-----------------------|------------|%n"));
Assertions.assertThat(byteArrayOutputStream8.toString()).isEqualTo(String.format("[Value at index 0 (column name : Var1) of Row at end point of Change at index 0 of Changes on test table of a data source]%n"
+ "|----------|%n"
+ "| Var1 |%n"
+ "| (NUMBER) |%n"
+ "|----------|%n"
+ "| 1 |%n"
+ "|----------|%n"));
Assertions.assertThat(byteArrayOutputStream9.toString()).isEqualTo(String.format("[Column at index 0 (column name : Var1) of Change at index 0 of Changes on test table of a data source]%n"
+ "|----------------|----------|%n"
+ "| | Var1 |%n"
+ "| | (NUMBER) |%n"
+ "|----------------|----------|%n"
+ "| At start point | null |%n"
+ "|----------------|----------|%n"
+ "| At end point | 1 |%n"
+ "|----------------|----------|%n"));
Assertions.assertThat(byteArrayOutputStream10.toString()).isEqualTo(String.format("[Value at end point of Column at index 0 (column name : Var1) of Change at index 0 of Changes on test table of a data source]%n"
+ "|----------|%n"
+ "| Var1 |%n"
+ "| (NUMBER) |%n"
+ "|----------|%n"
+ "| 1 |%n"
+ "|----------|%n"));
}
@Test
@NeedReload
public void should_fail_because_primary_key_is_different() {
Table table = new Table(dataSource, "test");
Changes changes = new Changes(table).setStartPointNow();
Changes changes2 = new Changes(dataSource).setStartPointNow();
update();
changes.setEndPointNow();
changes2.setEndPointNow();
try {
assertThat(changes).change().hasPksNames("var1");
fail("An exception must be raised");
}
catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Change at index 0 of Changes on test table of a data source] %n"
+ "Expecting :%n"
+ " [\"var1\"]%n"
+ "to be the name of the columns of the primary keys but was:%n"
+ " []"));
}
try {
assertThat(changes2).change().hasPksNames("var1");
fail("An exception must be raised");
}
catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Change at index 0 of Changes on teSt table of a data source] %n"
+ "Expecting :%n"
+ " [\"var1\"]%n"
+ "to be the name of the columns of the primary keys but was:%n"
+ " []"));
}
}
@Test
@NeedReload
public void should_fail_because_column_name_is_different() {
Table table = new Table(dataSource, "test");
Changes changes = new Changes(table).setStartPointNow();
Changes changes2 = new Changes(dataSource).setStartPointNow();
update();
changes.setEndPointNow();
changes2.setEndPointNow();
try {
assertThat(table).column().hasColumnName("var1");
fail("An exception must be raised");
}
catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 0 (column name : Var1) of test table] %n"
+ "Expecting :%n"
+ " \"var1\"%n"
+ "to be the name of the column but was:%n"
+ " \"Var1\""));
}
try {
assertThat(table).row().value().hasColumnName("var1");
fail("An exception must be raised");
}
catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Value at index 0 (column name : Var1) of Row at index 0 of test table] %n"
+ "Expecting :%n"
+ " \"var1\"%n"
+ "to be the name of the column but was:%n"
+ " \"Var1\""));
}
try {
assertThat(changes).change().column().hasColumnName("var1");
fail("An exception must be raised");
}
catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 0 (column name : Var1) of Change at index 0 of Changes on test table of a data source] %n"
+ "Expecting :%n"
+ " \"var1\"%n"
+ "to be the name of the column but was:%n"
+ " \"Var1\""));
}
try {
assertThat(changes).change().rowAtEndPoint().value().hasColumnName("var1");
fail("An exception must be raised");
}
catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Value at index 0 (column name : Var1) of Row at end point of Change at index 0 of Changes on test table of a data source] %n"
+ "Expecting :%n"
+ " \"var1\"%n"
+ "to be the name of the column but was:%n"
+ " \"Var1\""));
}
try {
assertThat(changes2).change().column().hasColumnName("var1");
fail("An exception must be raised");
}
catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Column at index 0 (column name : Var1) of Change at index 0 of Changes on teSt table of a data source] %n"
+ "Expecting :%n"
+ " \"var1\"%n"
+ "to be the name of the column but was:%n"
+ " \"Var1\""));
}
try {
assertThat(changes2).change().rowAtEndPoint().value().hasColumnName("var1");
fail("An exception must be raised");
}
catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Value at index 0 (column name : Var1) of Row at end point of Change at index 0 of Changes on teSt table of a data source] %n"
+ "Expecting :%n"
+ " \"var1\"%n"
+ "to be the name of the column but was:%n"
+ " \"Var1\""));
}
}
@Test
@NeedReload
public void should_fail_because_column_name_is_wrong_to_navigate() {
Table table = new Table(dataSource, "test");
Changes changes = new Changes(table).setStartPointNow();
Changes changes2 = new Changes(dataSource).setStartPointNow();
update();
changes.setEndPointNow();
changes2.setEndPointNow();
try {
assertThat(table).column("var1");
fail("An exception must be raised");
}
catch (AssertJDBException e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("Column <var1> does not exist%n"
+ "in <[Var1, vAr2, vaR3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14, var15, var16, var17, var18, var19, var20]>%n"
+ "with comparison STRICT - Strictly compare the case"));
}
try {
assertThat(table).row().value("var1");
fail("An exception must be raised");
}
catch (AssertJDBException e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("Column <var1> does not exist%n"
+ "in <[Var1, vAr2, vaR3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14, var15, var16, var17, var18, var19, var20]>%n"
+ "with comparison STRICT - Strictly compare the case"));
}
try {
assertThat(changes).change().column("var1");
fail("An exception must be raised");
}
catch (AssertJDBException e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("Column <var1> does not exist%n"
+ "in <[Var1, vAr2, vaR3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14, var15, var16, var17, var18, var19, var20]>%n"
+ "with comparison STRICT - Strictly compare the case"));
}
try {
assertThat(changes).change().rowAtEndPoint().value("var1");
fail("An exception must be raised");
}
catch (AssertJDBException e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("Column <var1> does not exist%n"
+ "in <[Var1, vAr2, vaR3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14, var15, var16, var17, var18, var19, var20]>%n"
+ "with comparison STRICT - Strictly compare the case"));
}
try {
assertThat(changes2).change().column("var1");
fail("An exception must be raised");
}
catch (AssertJDBException e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("Column <var1> does not exist%n"
+ "in <[Var1, vAr2, vaR3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14, var15, var16, var17, var18, var19, var20]>%n"
+ "with comparison STRICT - Strictly compare the case"));
}
try {
assertThat(changes2).change().rowAtEndPoint().value("var1");
fail("An exception must be raised");
}
catch (AssertJDBException e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("Column <var1> does not exist%n"
+ "in <[Var1, vAr2, vaR3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14, var15, var16, var17, var18, var19, var20]>%n"
+ "with comparison STRICT - Strictly compare the case"));
}
}
@Test
@NeedReload
public void should_fail_because_table_name_is_different() {
Table table = new Table(dataSource, "test");
Changes changes = new Changes(table).setStartPointNow();
Changes changes2 = new Changes(dataSource).setStartPointNow();
update();
changes.setEndPointNow();
changes2.setEndPointNow();
try {
assertThat(changes).change().isOnTable("teSt");
fail("An exception must be raised");
}
catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Change at index 0 of Changes on test table of a data source] %n"
+ "Expecting to be on the table:%n"
+ " <\"teSt\">%n"
+ "but was on the table:%n"
+ " <\"test\">"));
}
try {
assertThat(changes2).change().isOnTable("test");
fail("An exception must be raised");
}
catch (AssertionError e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("[Change at index 0 of Changes on teSt table of a data source] %n"
+ "Expecting to be on the table:%n"
+ " <\"test\">%n"
+ "but was on the table:%n"
+ " <\"teSt\">"));
}
}
@Test
@NeedReload
public void should_fail_because_table_name_is_wrong_to_navigate() {
Table table = new Table(dataSource, "test");
Changes changes = new Changes(table).setStartPointNow();
Changes changes2 = new Changes(dataSource).setStartPointNow();
update();
changes.setEndPointNow();
changes2.setEndPointNow();
try {
assertThat(changes).changeOnTable("teSt");
fail("An exception must be raised");
}
catch (AssertJDBException e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("Index 0 out of the limits [0, 0["));
}
try {
assertThat(changes).changeOnTable("teSt", 0);
fail("An exception must be raised");
}
catch (AssertJDBException e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("Index 0 out of the limits [0, 0["));
}
try {
assertThat(changes).changeOnTableWithPks("teSt", 1);
fail("An exception must be raised");
}
catch (AssertJDBException e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("No change found for table teSt and primary keys [1]"));
}
try {
assertThat(changes2).changeOnTable("test");
fail("An exception must be raised");
}
catch (AssertJDBException e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("Index 0 out of the limits [0, 0["));
}
try {
assertThat(changes2).changeOnTable("test", 0);
fail("An exception must be raised");
}
catch (AssertJDBException e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("Index 0 out of the limits [0, 0["));
}
try {
assertThat(changes2).changeOnTableWithPks("test", 1);
fail("An exception must be raised");
}
catch (AssertJDBException e) {
Assertions.assertThat(e.getMessage()).isEqualTo(String.format("No change found for table test and primary keys [1]"));
}
}
@Test
@NeedReload
public void test_ColumnName_hasColumnName() {
Table table = new Table(dataSource, "test");
Changes changes = new Changes(table).setStartPointNow();
Changes changes2 = new Changes(dataSource).setStartPointNow();
update();
changes.setEndPointNow();
changes2.setEndPointNow();
assertThat(table).column().hasColumnName("Var1");
assertThat(changes).change().column().hasColumnName("Var1");
assertThat(changes2).change().column().hasColumnName("Var1");
}
@Test
@NeedReload
public void test_ColumnClass_isOfClass() {
Table table = new Table(dataSource, "test");
Changes changes = new Changes(table).setStartPointNow();
Changes changes2 = new Changes(dataSource).setStartPointNow();
update();
changes.setEndPointNow();
changes2.setEndPointNow();
assertThat(table).column("Var1").isOfClass(Integer.class, false);
assertThat(changes).change().column("Var1").isOfClass(Integer.class, true);
assertThat(changes2).change().column("Var1").isOfClass(Integer.class, true);
}
}