You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
2.5 KiB
55 lines
2.5 KiB
package de.superx.common; |
|
|
|
import java.sql.Connection; |
|
import java.sql.ResultSet; |
|
import java.sql.Statement; |
|
import java.util.Locale; |
|
|
|
import org.junit.Assert; |
|
import org.junit.Before; |
|
import org.junit.Test; |
|
import org.springframework.jdbc.core.JdbcTemplate; |
|
import org.springframework.mock.web.MockHttpServletRequest; |
|
import org.springframework.test.context.ContextConfiguration; |
|
|
|
import de.superx.BaseDbTest; |
|
import de.superx.TestApplicationConfigPg; |
|
import de.superx.TestUtils; |
|
import de.superx.servlet.UserInitializer; |
|
|
|
//@ContextConfiguration(classes = { TestApplicationConfigPg.class }) |
|
public class OrgunitLidInBerichtsCodeTest extends BaseDbTest { |
|
|
|
private static final String USER_NAME = "admin"; |
|
private static final String KEY_PHILOSOPHISCHE_FAKULTAET = "04"; |
|
private SxUser sxUser = null; |
|
|
|
@Before |
|
public void setupTest() throws Exception { |
|
try (Connection conn = dataSource.getConnection(); Statement stmt = conn.createStatement();) { |
|
sxUser = TestUtils.initUser(conn, stmt, KEY_PHILOSOPHISCHE_FAKULTAET); |
|
} |
|
} |
|
|
|
// dieser Test überprüft, dass - bei entsprechender Feldkonfiguration - die Orgunit des eingeloggten Nutzers in der |
|
// Institutionssicht vorbelegt ist |
|
@Test |
|
public void test10010Vorbelegung() throws Exception { |
|
JdbcTemplate jt = new JdbcTemplate(dataSource); |
|
Integer maskenTid = Integer.valueOf(10010); |
|
// in der Standardauslieferung gibt es eine solche Vorbelegung nicht, daher konfigurieren wir die in der felderinfo direkt |
|
jt.execute("UPDATE felderinfo SET defaultwert = " + |
|
"'<<SQL>> SELECT key_apnr, drucktext FROM organigramm WHERE 1 = 1" + |
|
" <#if UserHISinOneOrgunitLid??> AND lid = ''${UserHISinOneOrgunitLid}'' </#if>" + |
|
" AND current_date between gueltig_seit and gueltig_bis;' WHERE tid = 10010;"); |
|
//org.h2.tools.Server.startWebServer(dataSource.getConnection().unwrap(org.h2.jdbc.JdbcConnection.class)); |
|
Maske maske = new Maske(MANDANTEN_ID, sxUser, maskenTid, Locale.GERMANY); |
|
MockHttpServletRequest request = new MockHttpServletRequest(); |
|
maske.setFieldDefaults(sxUser, request, true); |
|
FieldContainer felder = maske.getIndividualFields(); |
|
Field feld = (Field) felder.getByName("Institution"); |
|
String vorbelegung = feld.getDefaultValue().getName(); |
|
Assert.assertEquals("Die Vorbelegung des Feldes sollte einen anderen Default enthalten", "Philosophische Fakultät", vorbelegung); |
|
} |
|
|
|
} |