1010import com .fasterxml .jackson .databind .ObjectMapper ;
1111import io .hexlet .blog .dto .PostCommentDTO ;
1212import io .hexlet .blog .mapper .PostCommentMapper ;
13+ import io .hexlet .blog .model .User ;
1314import org .assertj .core .api .Assertions ;
1415import org .instancio .Instancio ;
1516import org .junit .jupiter .api .BeforeEach ;
17+ import org .junit .jupiter .api .AfterEach ;
1618import org .junit .jupiter .api .Test ;
1719import org .springframework .beans .factory .annotation .Autowired ;
1820import org .springframework .boot .test .autoconfigure .web .servlet .AutoConfigureMockMvc ;
2426import io .hexlet .blog .repository .PostCommentRepository ;
2527import io .hexlet .blog .repository .PostRepository ;
2628import io .hexlet .blog .util .ModelGenerator ;
27- import io .hexlet .blog .util .UserUtils ;
28- import jakarta .transaction .Transactional ;
2929import org .springframework .test .web .servlet .setup .MockMvcBuilders ;
3030import org .springframework .web .context .WebApplicationContext ;
31+ import io .hexlet .blog .repository .UserRepository ;
3132
3233import java .nio .charset .StandardCharsets ;
3334import java .util .List ;
3435import java .util .Map ;
3536
3637
3738@ SpringBootTest
38- @ Transactional
3939@ AutoConfigureMockMvc
4040public class PostsCommentsControllerTest {
4141
@@ -55,7 +55,7 @@ public class PostsCommentsControllerTest {
5555 private PostCommentRepository postCommentRepository ;
5656
5757 @ Autowired
58- private UserUtils userUtils ;
58+ private UserRepository userRepository ;
5959
6060 private JwtRequestPostProcessor token ;
6161
@@ -67,6 +67,8 @@ public class PostsCommentsControllerTest {
6767 @ Autowired
6868 private PostCommentMapper postCommentMapper ;
6969
70+ private User testUser ;
71+
7072
7173 @ BeforeEach
7274 public void setUp () {
@@ -75,29 +77,38 @@ public void setUp() {
7577 .apply (springSecurity ())
7678 .build ();
7779
78- token =
jwt ().
jwt (
builder ->
builder .
subject (
"[email protected] " ));
80+ testUser = Instancio .of (modelGenerator .getUserModel ()).create ();
81+ userRepository .save (testUser );
82+ token = jwt ().jwt (builder -> builder .subject (testUser .getEmail ()));
7983
8084 testPost = Instancio .of (modelGenerator .getPostModel ())
8185 .create ();
82- testPost .setAuthor (userUtils . getTestUser () );
86+ testPost .setAuthor (testUser );
8387 postRepository .save (testPost );
8488
8589 var testPost2 = Instancio .of (modelGenerator .getPostModel ())
8690 .create ();
87- testPost2 .setAuthor (userUtils . getTestUser () );
91+ testPost2 .setAuthor (testUser );
8892 postRepository .save (testPost2 );
8993
9094 var testPostComment = Instancio .of (modelGenerator .getPostCommentModel ()).create ();
9195 testPostComment .setPost (testPost );
92- testPostComment .setAuthor (userUtils . getTestUser () );
96+ testPostComment .setAuthor (testUser );
9397 postCommentRepository .save (testPostComment );
9498
9599 var testPostComment2 = Instancio .of (modelGenerator .getPostCommentModel ()).create ();
96100 testPostComment2 .setPost (testPost2 );
97- testPostComment2 .setAuthor (userUtils . getTestUser () );
101+ testPostComment2 .setAuthor (testUser );
98102 postCommentRepository .save (testPostComment2 );
99103 }
100104
105+ @ AfterEach
106+ public void clean () {
107+ postCommentRepository .deleteAll ();
108+ postRepository .deleteAll ();
109+ userRepository .deleteAll ();
110+ }
111+
101112 @ Test
102113 public void testIndex () throws Exception {
103114 var result = mockMvc .perform (get ("/api/posts_comments" ).with (token ))
0 commit comments