FINERACT-1757: Uppercase letters in the datatable name is failing on postgres

This commit is contained in:
Jose Alberto Hernandez
2023-04-26 17:56:00 +02:00
committed by Adam Saghy
parent 5f713be7ec
commit 6f2b0198a2
4 changed files with 132 additions and 3 deletions
@@ -27,6 +27,7 @@ import com.google.gson.JsonObject;
import java.util.Collections;
import java.util.List;
import org.apache.fineract.infrastructure.core.exception.PlatformApiDataValidationException;
import org.apache.fineract.infrastructure.core.service.database.DatabaseSpecificSQLGenerator;
import org.apache.fineract.infrastructure.core.service.database.DatabaseTypeResolver;
import org.apache.fineract.infrastructure.dataqueries.data.ResultsetColumnHeaderData;
import org.apache.fineract.infrastructure.security.utils.SQLInjectionException;
@@ -52,6 +53,9 @@ public class ReadWriteNonCoreDataServiceImplTest {
@Mock
private DatabaseTypeResolver databaseTypeResolver;
@Mock
private DatabaseSpecificSQLGenerator sqlGenerator;
@InjectMocks
private ReadWriteNonCoreDataServiceImpl underTest;
@@ -81,6 +85,7 @@ public class ReadWriteNonCoreDataServiceImplTest {
.thenReturn(sqlRS);
when(sqlRS.next()).thenReturn(true).thenReturn(false);
when(sqlRS.getObject(ArgumentMatchers.anyString())).thenReturn("value1").thenReturn("value2");
when(sqlGenerator.escape(ArgumentMatchers.anyString())).thenReturn("rc1").thenReturn("rc2").thenReturn("table").thenReturn("cf1");
when(databaseTypeResolver.isPostgreSQL()).thenReturn(true);
ResultsetColumnHeaderData cf1 = ResultsetColumnHeaderData.detailed("cf1", "text", 10L, false, false, null, null, false, false);