@@ -28,7 +28,9 @@ import org.apache.ibatis.session.SqlSessionFactoryBuilder
28
28
import org.apache.ibatis.transaction.jdbc.JdbcTransactionFactory
29
29
import org.assertj.core.api.Assertions.assertThat
30
30
import org.junit.jupiter.api.Test
31
+ import org.mybatis.dynamic.sql.util.kotlin.elements.insertBatch
31
32
import org.mybatis.dynamic.sql.util.kotlin.mybatis3.insertInto
33
+ import org.mybatis.dynamic.sql.util.kotlin.mybatis3.into
32
34
import java.io.InputStreamReader
33
35
import java.sql.DriverManager
34
36
@@ -123,6 +125,40 @@ class GeneratedAlwaysTest {
123
125
}
124
126
}
125
127
128
+ @Test
129
+ fun testDeprecatedInsertBatch () {
130
+ newSession(ExecutorType .BATCH ).use { session ->
131
+ val mapper = session.getMapper(GeneratedAlwaysMapper ::class .java)
132
+
133
+ val record1 = GeneratedAlwaysRecord (
134
+ firstName = " Fred" ,
135
+ lastName = " Flintstone"
136
+ )
137
+
138
+ val record2 = GeneratedAlwaysRecord (
139
+ firstName = " Barney" ,
140
+ lastName = " Rubble"
141
+ )
142
+
143
+ insertBatch(record1, record2).into(generatedAlways) {
144
+ map(firstName).toProperty(" firstName" )
145
+ map(lastName).toProperty(" lastName" )
146
+ }.insertStatements().map(mapper::insert)
147
+
148
+ val batchResults = mapper.flush()
149
+
150
+ assertThat(batchResults).hasSize(1 )
151
+ assertThat(batchResults[0 ].updateCounts).hasSize(2 )
152
+ assertThat(batchResults[0 ].updateCounts[0 ]).isEqualTo(1 )
153
+ assertThat(batchResults[0 ].updateCounts[1 ]).isEqualTo(1 )
154
+
155
+ assertThat(record1.id).isEqualTo(22 )
156
+ assertThat(record1.fullName).isEqualTo(" Fred Flintstone" )
157
+ assertThat(record2.id).isEqualTo(23 )
158
+ assertThat(record2.fullName).isEqualTo(" Barney Rubble" )
159
+ }
160
+ }
161
+
126
162
@Test
127
163
fun testGeneralInsert () {
128
164
newSession().use { session ->
0 commit comments