diff --git a/src/test/java/org/mybatis/scripting/freemarker/PreparedDatabaseIdParamsMapper.java b/src/test/java/org/mybatis/scripting/freemarker/PreparedDatabaseIdParamsMapper.java index 3d77981..e8faab5 100644 --- a/src/test/java/org/mybatis/scripting/freemarker/PreparedDatabaseIdParamsMapper.java +++ b/src/test/java/org/mybatis/scripting/freemarker/PreparedDatabaseIdParamsMapper.java @@ -15,15 +15,17 @@ */ package org.mybatis.scripting.freemarker; +import java.util.Optional; + import org.apache.ibatis.annotations.Lang; -import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; -import java.util.List; -import java.util.Optional; - public interface PreparedDatabaseIdParamsMapper { @Lang(FreeMarkerLanguageDriver.class) @Select("preparedDatabaseIdTest.ftl") Optional getDatabaseIdTest(); + + @Lang(FreeMarkerLanguageDriver.class) + @Select("preparedDatabaseIdTest.ftl") + Optional getDatabaseIdTestWithParam(PreparedParam param); } diff --git a/src/test/java/org/mybatis/scripting/freemarker/PreparedDatabaseIdParamsTest.java b/src/test/java/org/mybatis/scripting/freemarker/PreparedDatabaseIdParamsTest.java index 5e79bfb..27cc648 100644 --- a/src/test/java/org/mybatis/scripting/freemarker/PreparedDatabaseIdParamsTest.java +++ b/src/test/java/org/mybatis/scripting/freemarker/PreparedDatabaseIdParamsTest.java @@ -17,10 +17,8 @@ import java.io.Reader; import java.sql.Connection; -import java.util.ArrayList; -import java.util.List; +import java.util.Optional; -import org.apache.ibatis.exceptions.PersistenceException; import org.apache.ibatis.io.Resources; import org.apache.ibatis.jdbc.ScriptRunner; import org.apache.ibatis.mapping.Environment; @@ -35,8 +33,6 @@ import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; -import java.util.Optional; - /** * Test of using FreeMarker to generate prepared statements parameters. * @@ -81,13 +77,25 @@ static void setUp() throws Exception { } @Test - void testInCall() { + void testReferDatabaseIdInTemplate() { try (SqlSession sqlSession = sqlSessionFactory.openSession()) { PreparedDatabaseIdParamsMapper mapper = sqlSession.getMapper(PreparedDatabaseIdParamsMapper.class); Optional nameList = mapper.getDatabaseIdTest(); - Assertions.assertEquals(true, nameList.isPresent()); + Assertions.assertTrue(nameList.isPresent()); + Assertions.assertEquals("Fred", nameList.get().getFirstName()); + Assertions.assertEquals("Flintstone", nameList.get().getLastName()); + } + } + + @Test + void testReferDatabaseIdInTemplateWithParam() { + try (SqlSession sqlSession = sqlSessionFactory.openSession()) { + PreparedDatabaseIdParamsMapper mapper = sqlSession.getMapper(PreparedDatabaseIdParamsMapper.class); + Optional nameList = mapper.getDatabaseIdTestWithParam(new PreparedParam()); + Assertions.assertTrue(nameList.isPresent()); Assertions.assertEquals("Fred", nameList.get().getFirstName()); Assertions.assertEquals("Flintstone", nameList.get().getLastName()); } } + }