All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.wimdeblauwe.jpearl.mavenplugin.entity-repository-test-template Maven / Gradle / Ivy

package ;

import ;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;

import jakarta.persistence.EntityManager;
import jakarta.persistence.PersistenceContext;
import ;

import static org.assertj.core.api.Assertions.assertThat;


class RepositoryTest {
    private final Repository repository;
    private final JdbcTemplate jdbcTemplate;
    @PersistenceContext
    private EntityManager entityManager;

    @Autowired
    RepositoryTest(Repository repository,
                           JdbcTemplate jdbcTemplate) {
        this.repository = repository;
        this.jdbcTemplate = jdbcTemplate;
    }

    @BeforeEach
    void validatePreconditions() {
        assertThat(repository.count()).isZero();
    }

    @Test
    void testSave() {
         id = repository.nextId();
        repository.save(new (id));

        entityManager.flush();

         idInDb = jdbcTemplate.queryForObject("SELECT id FROM ", .class);
        assertThat(idInDb).isEqualTo(id.getId());
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy