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

templates.repository.sp.ProcedureImplTest.ftl Maven / Gradle / Ivy

Go to download

Maven plugin to generate Java classes from StoredProcedure and Functions in Database

There is a newer version: 1.8.20
Show newest version
package ${javaPackage}.${repositoryFolderName}.sp;
<#assign importList = ["org.springframework.jdbc.core.JdbcTemplate", "javax.sql.DataSource"]>
<#if junit == 'junit5'>
<#assign importList = importList + ["org.junit.jupiter.api.extension.ExtendWith", "org.mockito.junit.jupiter.MockitoExtension", "org.junit.jupiter.api.Assertions", "org.junit.jupiter.api.Test"]>
<#else>
<#assign importList = importList + ["org.junit.runner.RunWith", "org.mockito.runners.MockitoJUnitRunner", "org.junit.Assert", "org.junit.Test"]>

<#assign importList = importList + ["org.mockito.Mock", "org.mockito.Mockito"]>
<#list proc.parameters as parameter>
<#if parameter.resultSet || parameter.returnResultSet>
<#assign importList = importList + ["${javaPackage}.${repositoryFolderName}.mapper.${parameter.javaTypeName}RowMapper"]>



<#list importSort(importList) as import>
<#if previousImportMatch?? && !import?starts_with(previousImportMatch)>


import ${import};
<#assign previousImportMatch = import?keep_before_last(".") >

<#if importList?has_content>


<#if junit == 'junit5'>
@ExtendWith(MockitoExtension.class)
<#else>
@RunWith(MockitoJUnitRunner.class)

class ${proc.className}SPImplTest {

    @Mock
    private DataSource dataSourceMock;

    @Mock
    private JdbcTemplate jdbcTemplateMock;
<#list proc.parameters as parameter>
<#if parameter.resultSet || parameter.returnResultSet>

    @Mock
    private ${parameter.javaTypeName}RowMapper ${parameter.fieldName}RowMapperMock;



    @Test
    void should_check_${proc.constantFullName?lower_case}_sp_data_source() {

        Mockito.when(jdbcTemplateMock.getDataSource()).thenReturn(dataSourceMock);

        ${proc.className}SPImpl sp = new ${proc.className}SPImpl(${'\n'}            jdbcTemplateMock<#list proc.parameters as parameter><#if parameter.resultSet || parameter.returnResultSet>,${'\n'}            ${parameter.fieldName}RowMapperMock${'\n'}        );

        <#if junit == 'junit5'>Assertions<#else>Assert.assertSame(dataSourceMock, sp.getJdbcTemplate().getDataSource());

        <#if junit == 'junit5'>Assertions<#else>Assert.assertEquals("{<#if proc.function>? = call ${proc.fullName}(<#list proc.parameters as parameter><#if parameter.position != 0>?<#sep>, )}", sp.getCallString());
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy