|
15 | 15 | */
|
16 | 16 | package org.apache.ibatis.submitted.maptypehandler;
|
17 | 17 |
|
| 18 | +import static org.assertj.core.api.Assertions.*; |
| 19 | + |
18 | 20 | import java.io.Reader;
|
19 | 21 | import java.util.HashMap;
|
20 | 22 | import java.util.Map;
|
21 | 23 |
|
22 | 24 | import org.apache.ibatis.BaseDataTest;
|
23 |
| -import org.apache.ibatis.exceptions.PersistenceException; |
24 | 25 | import org.apache.ibatis.io.Resources;
|
25 | 26 | import org.apache.ibatis.session.SqlSession;
|
26 | 27 | import org.apache.ibatis.session.SqlSessionFactory;
|
27 | 28 | import org.apache.ibatis.session.SqlSessionFactoryBuilder;
|
28 | 29 | import org.junit.jupiter.api.Assertions;
|
29 | 30 | import org.junit.jupiter.api.BeforeAll;
|
30 |
| -import org.junit.jupiter.api.Disabled; |
31 | 31 | import org.junit.jupiter.api.Test;
|
32 | 32 |
|
33 | 33 | /**
|
@@ -59,15 +59,15 @@ void shouldGetAUserFromAnnotation() {
|
59 | 59 | }
|
60 | 60 | }
|
61 | 61 |
|
62 |
| - @Disabled("The new implementation handles this usage as expected") |
63 | 62 | @Test
|
64 |
| - void shouldGetAUserFromXML() { |
| 63 | + void shouldNotUseMapTypeHandlerEvenIfTheParamIsAMap() { |
65 | 64 | try (SqlSession sqlSession = sqlSessionFactory.openSession()) {
|
66 | 65 | Mapper mapper = sqlSession.getMapper(Mapper.class);
|
67 | 66 | Map<String, Object> params = new HashMap<>();
|
68 | 67 | params.put("id", 1);
|
69 | 68 | params.put("name", "User1");
|
70 |
| - Assertions.assertThrows(PersistenceException.class, () -> mapper.getUserXML(params)); |
| 69 | + User user = mapper.getUserXML(params); |
| 70 | + assertThat(user).extracting(User::getId, User::getName).containsExactly(1, "User1"); |
71 | 71 | }
|
72 | 72 | }
|
73 | 73 |
|
|
0 commit comments