Skip to content

Run formatter from last pull request for test additions #3340

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Dec 28, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,10 @@
*/
package org.apache.ibatis.scripting.xmltags;

import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
Expand All @@ -23,11 +27,6 @@
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;


/**
* <pre>{@code
* SELECT *
Expand All @@ -47,6 +46,7 @@
* }</pre>
*
* @author <a href="[email protected]">mawen12</a>
*
* @see <a href="https://mybatis.org/mybatis-3/dynamic-sql.html#choose-when-otherwise">choose</a>
*/
class ChooseSqlNodeTest extends SqlNodeBase {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,12 @@
*/
package org.apache.ibatis.scripting.xmltags;

import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
Expand All @@ -23,13 +29,6 @@
import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;

import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.when;
import static org.mockito.Mockito.verify;


/**
* <pre>{@code
* SELECT *
Expand All @@ -42,6 +41,7 @@
* }</pre>
*
* @author <a href="[email protected]">mawen12</a>
*
* @see <a href="https://mybatis.org/mybatis-3/dynamic-sql.html#foreach">foreach</a>
*/
class ForEachSqlNodeTest extends SqlNodeBase {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@

import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.mockito.Mockito.never;

import java.util.HashMap;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,13 @@
*/
package org.apache.ibatis.scripting.xmltags;

import static org.mockito.Mockito.verify;

import java.util.Arrays;

import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import static org.mockito.Mockito.verify;


/**
* @author <a href="[email protected]">mawen12</a>
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@

/**
* @author <a href="[email protected]">mawen12</a>
*
* @see SqlNode
*/
@ExtendWith(MockitoExtension.class)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,28 +15,29 @@
*/
package org.apache.ibatis.transaction;

import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.junit.jupiter.MockitoExtension;

import java.lang.reflect.Field;
import java.sql.SQLException;

import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.junit.jupiter.MockitoExtension;

/**
* @author <a href="[email protected]">mawen12</a>
*
* @see TransactionFactory
*/
@ExtendWith(MockitoExtension.class)
public abstract class TransactionFactoryBase {

public abstract void shouldSetProperties() throws Exception;
public abstract void shouldSetProperties() throws Exception;

public abstract void shouldNewTransactionWithConnection() throws SQLException;
public abstract void shouldNewTransactionWithConnection() throws SQLException;

public abstract void shouldNewTransactionWithDataSource() throws Exception;
public abstract void shouldNewTransactionWithDataSource() throws Exception;

public static Object getValue(Field field, Object object) throws Exception {
field.setAccessible(true);
return field.get(object);
}
public static Object getValue(Field field, Object object) throws Exception {
field.setAccessible(true);
return field.get(object);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -15,31 +15,32 @@
*/
package org.apache.ibatis.transaction.jdbc;

import java.sql.SQLException;

import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.junit.jupiter.MockitoExtension;

import java.sql.SQLException;

/**
* @author <a href="[email protected]">mawen12</a>
*
* @see JdbcTransaction
*/
@ExtendWith(MockitoExtension.class)
abstract class JdbcTransactionBase {

abstract void shouldGetConnection() throws SQLException;
abstract void shouldGetConnection() throws SQLException;

abstract void shouldCommitWhenConnectionIsNotAutoCommit() throws SQLException;
abstract void shouldCommitWhenConnectionIsNotAutoCommit() throws SQLException;

abstract void shouldAutoCommitWhenConnectionIsAutoCommit() throws SQLException;
abstract void shouldAutoCommitWhenConnectionIsAutoCommit() throws SQLException;

abstract void shouldRollbackWhenConnectionIsNotAutoCommit() throws SQLException;
abstract void shouldRollbackWhenConnectionIsNotAutoCommit() throws SQLException;

abstract void shouldAutoRollbackWhenConnectionIsAutoCommit() throws SQLException;
abstract void shouldAutoRollbackWhenConnectionIsAutoCommit() throws SQLException;

abstract void shouldCloseAndSetAutoCommitWhenConnectionIsNotAutoCommit() throws SQLException;
abstract void shouldCloseAndSetAutoCommitWhenConnectionIsNotAutoCommit() throws SQLException;

abstract void shouldCloseAndNotSetAutoCommitWhenConnectionIsAutoCommit() throws SQLException;
abstract void shouldCloseAndNotSetAutoCommitWhenConnectionIsAutoCommit() throws SQLException;

abstract void shouldReturnNullWhenGetTimeout() throws SQLException;
abstract void shouldReturnNullWhenGetTimeout() throws SQLException;
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,16 @@
*/
package org.apache.ibatis.transaction.jdbc;

import static org.junit.jupiter.api.Assertions.*;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;

import javax.sql.DataSource;

import org.apache.ibatis.session.TransactionIsolationLevel;
import org.apache.ibatis.transaction.Transaction;
import org.apache.ibatis.transaction.TransactionFactory;
Expand All @@ -23,92 +33,87 @@
import org.junit.jupiter.api.Test;
import org.mockito.Mock;

import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;

import static org.junit.jupiter.api.Assertions.*;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

/**
* @author <a href="[email protected]">mawen12</a>
*
* @see JdbcTransactionFactory
*/
class JdbcTransactionFactoryUnitTest extends TransactionFactoryBase {

@Mock
private Properties properties;

@Mock
private Connection connection;

@Mock
private DataSource dataSource;

private TransactionFactory transactionFactory;

@BeforeEach
void setup() {
this.transactionFactory = new JdbcTransactionFactory();
}

@Test
@Override
public void shouldSetProperties() throws Exception {
when(properties.getProperty("skipSetAutoCommitOnClose")).thenReturn("true");

transactionFactory.setProperties(properties);

assertTrue((Boolean) getValue(transactionFactory.getClass().getDeclaredField("skipSetAutoCommitOnClose"), transactionFactory));
}

@Test
@Override
public void shouldNewTransactionWithConnection() throws SQLException {
Transaction result = transactionFactory.newTransaction(connection);

assertNotNull(result);
assertInstanceOf(JdbcTransaction.class, result);
assertEquals(connection, result.getConnection());
}

@Test
@Override
public void shouldNewTransactionWithDataSource() throws Exception {
when(dataSource.getConnection()).thenReturn(connection);

Transaction result = transactionFactory.newTransaction(dataSource, TransactionIsolationLevel.READ_COMMITTED, false);

assertNotNull(result);
assertInstanceOf(JdbcTransaction.class, result);
assertEquals(connection, result.getConnection());
verify(connection).setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);

assertEquals(dataSource, getValue(result.getClass().getDeclaredField("dataSource"), result));
assertEquals(TransactionIsolationLevel.READ_COMMITTED, getValue(result.getClass().getDeclaredField("level"), result));
assertEquals(false, getValue(result.getClass().getDeclaredField("autoCommit"), result));
assertEquals(false, getValue(result.getClass().getDeclaredField("skipSetAutoCommitOnClose"), result));
}

@Test
void shouldNewTransactionWithDataSourceAndCustomProperties() throws Exception {
when(dataSource.getConnection()).thenReturn(connection);
when(properties.getProperty("skipSetAutoCommitOnClose")).thenReturn("true");

transactionFactory.setProperties(properties);
Transaction result = transactionFactory.newTransaction(dataSource, TransactionIsolationLevel.READ_COMMITTED, true);

assertNotNull(result);
assertInstanceOf(JdbcTransaction.class, result);
assertEquals(connection, result.getConnection());
verify(connection).setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);

assertEquals(dataSource, getValue(result.getClass().getDeclaredField("dataSource"), result));
assertEquals(TransactionIsolationLevel.READ_COMMITTED, getValue(result.getClass().getDeclaredField("level"), result));
assertEquals(true, getValue(result.getClass().getDeclaredField("autoCommit"), result));
assertEquals(true, getValue(result.getClass().getDeclaredField("skipSetAutoCommitOnClose"), result));
}
@Mock
private Properties properties;

@Mock
private Connection connection;

@Mock
private DataSource dataSource;

private TransactionFactory transactionFactory;

@BeforeEach
void setup() {
this.transactionFactory = new JdbcTransactionFactory();
}

@Test
@Override
public void shouldSetProperties() throws Exception {
when(properties.getProperty("skipSetAutoCommitOnClose")).thenReturn("true");

transactionFactory.setProperties(properties);

assertTrue((Boolean) getValue(transactionFactory.getClass().getDeclaredField("skipSetAutoCommitOnClose"),
transactionFactory));
}

@Test
@Override
public void shouldNewTransactionWithConnection() throws SQLException {
Transaction result = transactionFactory.newTransaction(connection);

assertNotNull(result);
assertInstanceOf(JdbcTransaction.class, result);
assertEquals(connection, result.getConnection());
}

@Test
@Override
public void shouldNewTransactionWithDataSource() throws Exception {
when(dataSource.getConnection()).thenReturn(connection);

Transaction result = transactionFactory.newTransaction(dataSource, TransactionIsolationLevel.READ_COMMITTED, false);

assertNotNull(result);
assertInstanceOf(JdbcTransaction.class, result);
assertEquals(connection, result.getConnection());
verify(connection).setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);

assertEquals(dataSource, getValue(result.getClass().getDeclaredField("dataSource"), result));
assertEquals(TransactionIsolationLevel.READ_COMMITTED,
getValue(result.getClass().getDeclaredField("level"), result));
assertEquals(false, getValue(result.getClass().getDeclaredField("autoCommit"), result));
assertEquals(false, getValue(result.getClass().getDeclaredField("skipSetAutoCommitOnClose"), result));
}

@Test
void shouldNewTransactionWithDataSourceAndCustomProperties() throws Exception {
when(dataSource.getConnection()).thenReturn(connection);
when(properties.getProperty("skipSetAutoCommitOnClose")).thenReturn("true");

transactionFactory.setProperties(properties);
Transaction result = transactionFactory.newTransaction(dataSource, TransactionIsolationLevel.READ_COMMITTED, true);

assertNotNull(result);
assertInstanceOf(JdbcTransaction.class, result);
assertEquals(connection, result.getConnection());
verify(connection).setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);

assertEquals(dataSource, getValue(result.getClass().getDeclaredField("dataSource"), result));
assertEquals(TransactionIsolationLevel.READ_COMMITTED,
getValue(result.getClass().getDeclaredField("level"), result));
assertEquals(true, getValue(result.getClass().getDeclaredField("autoCommit"), result));
assertEquals(true, getValue(result.getClass().getDeclaredField("skipSetAutoCommitOnClose"), result));
}

}
Loading
Loading