Skip to content

Commit f3621e6

Browse files
committed
more drivers
1 parent 6208fa1 commit f3621e6

14 files changed

Lines changed: 602 additions & 17 deletions

File tree

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -272,6 +272,9 @@ jdk_17_maven/cs/rest/signal-server/api-doc/target/
272272
jdk_17_maven/em/embedded/rest/signal-server/target/
273273
jdk_17_maven/cs/rest/familie-tilbake/target/
274274
jdk_17_maven/em/embedded/rest/familie-tilbake/target/
275+
jdk_17_maven/cs/rest/familie-ba-sak/target/
276+
jdk_17_maven/cs/rest/tiltaksgjennomforing-api/target/
277+
jdk_17_maven/em/embedded/rest/familie-ba-sak/target/
275278

276279
/jdk_8_maven/em/embedded/grpc/ncs/target/
277280
/jdk_8_maven/em/embedded/grpc/scs/target/

jdk_11_maven/em/embedded/rest/pay-publicapi/src/main/java/em/embedded/uk/gov/pay/api/app/EmbeddedEvoMasterController.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ public String getPackagePrefixesToCover() {
6565

6666
@Override
6767
public List<AuthenticationDto> getInfoForAuthentication() {
68+
// TODO: Application takes Bearer token through header
6869
return null;
6970
}
7071

jdk_11_maven/em/embedded/rest/pay-publicapi/src/main/resources/em_config.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
server:
2-
rootPath: '/*'
32
applicationConnectors:
43
- type: http
54
port: ${PORT:-8080}
6-
# adminConnectors: []
75
adminConnectors:
86
- type: http
97
port: ${ADMIN_PORT:-8081}
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5+
<modelVersion>4.0.0</modelVersion>
6+
<parent>
7+
<groupId>org.evomaster</groupId>
8+
<artifactId>evomaster-benchmark-jdk17-em-embedded-rest</artifactId>
9+
<version>2.0.1-SNAPSHOT</version>
10+
</parent>
11+
12+
<artifactId>evomaster-benchmark-jdk17-em-embedded-rest-familie-ba-sak</artifactId>
13+
<packaging>jar</packaging>
14+
15+
16+
<dependencyManagement>
17+
<dependencies>
18+
<dependency>
19+
<groupId>org.springframework.boot</groupId>
20+
<artifactId>spring-boot-dependencies</artifactId>
21+
<version>3.1.3</version>
22+
<type>pom</type>
23+
<scope>import</scope>
24+
</dependency>
25+
</dependencies>
26+
</dependencyManagement>
27+
28+
<dependencies>
29+
<dependency>
30+
<groupId>no.nav.familie.ba.sak</groupId>
31+
<artifactId>familie-ba-sak</artifactId>
32+
<version>1-SNAPSHOT</version>
33+
</dependency>
34+
<dependency>
35+
<groupId>org.testcontainers</groupId>
36+
<artifactId>testcontainers</artifactId>
37+
<version>1.19.1</version>
38+
<scope>compile</scope>
39+
</dependency>
40+
<dependency>
41+
<groupId>org.springframework</groupId>
42+
<artifactId>spring-context</artifactId>
43+
</dependency>
44+
</dependencies>
45+
46+
</project>
Lines changed: 157 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,157 @@
1+
package em.embedded.familie.ba.sak;
2+
3+
import no.nav.familie.ba.sak.ApplicationKt;
4+
import org.evomaster.client.java.controller.EmbeddedSutController;
5+
import org.evomaster.client.java.controller.InstrumentedSutStarter;
6+
import org.evomaster.client.java.controller.api.dto.SutInfoDto;
7+
import org.evomaster.client.java.controller.api.dto.auth.AuthenticationDto;
8+
import org.evomaster.client.java.controller.api.dto.database.schema.DatabaseType;
9+
import org.evomaster.client.java.controller.problem.ProblemInfo;
10+
import org.evomaster.client.java.sql.DbCleaner;
11+
import org.evomaster.client.java.sql.DbSpecification;
12+
import org.springframework.boot.SpringApplication;
13+
import org.springframework.context.ConfigurableApplicationContext;
14+
import org.springframework.jdbc.core.JdbcTemplate;
15+
import org.testcontainers.containers.GenericContainer;
16+
17+
import java.sql.Connection;
18+
import java.sql.SQLException;
19+
import java.util.Arrays;
20+
import java.util.List;
21+
import java.util.Map;
22+
23+
public class EmbeddedEvoMasterController extends EmbeddedSutController {
24+
25+
private static final String POSTGRES_VERSION = "13.13";
26+
27+
private static final String POSTGRES_PASSWORD = "password";
28+
29+
private static final int POSTGRES_PORT = 5432;
30+
31+
private static final GenericContainer postgresContainer = new GenericContainer("postgres:" + POSTGRES_VERSION)
32+
.withEnv("POSTGRES_PASSWORD", POSTGRES_PASSWORD)
33+
.withEnv("POSTGRES_HOST_AUTH_METHOD", "trust") //to allow all connections without a password
34+
.withEnv("POSTGRES_DB", "familiebasak")
35+
.withExposedPorts(POSTGRES_PORT);
36+
37+
private ConfigurableApplicationContext ctx;
38+
39+
private Connection sqlConnection;
40+
private List<DbSpecification> dbSpecification;
41+
42+
public EmbeddedEvoMasterController() {
43+
this(40100);
44+
}
45+
46+
public EmbeddedEvoMasterController(int port) {
47+
setControllerPort(port);
48+
}
49+
50+
51+
public static void main(String[] args) {
52+
int port = 40100;
53+
if (args.length > 0) {
54+
port = Integer.parseInt(args[0]);
55+
}
56+
57+
EmbeddedEvoMasterController controller = new EmbeddedEvoMasterController(port);
58+
InstrumentedSutStarter starter = new InstrumentedSutStarter(controller);
59+
60+
starter.start();
61+
}
62+
63+
@Override
64+
public boolean isSutRunning() {
65+
return ctx.isRunning();
66+
}
67+
68+
@Override
69+
public String getPackagePrefixesToCover() {
70+
return "no.nav.familie.ba.sak.";
71+
}
72+
73+
@Override
74+
public List<AuthenticationDto> getInfoForAuthentication() {
75+
return null;
76+
}
77+
78+
@Override
79+
public ProblemInfo getProblemInfo() {
80+
return null;
81+
}
82+
83+
@Override
84+
public SutInfoDto.OutputFormat getPreferredOutputFormat() {
85+
return SutInfoDto.OutputFormat.JAVA_JUNIT_5;
86+
}
87+
88+
@Override
89+
public String startSut() {
90+
postgresContainer.start();
91+
92+
String postgresURL = "jdbc:postgresql://" + postgresContainer.getHost() + ":" + postgresContainer.getMappedPort(POSTGRES_PORT) + "/familiebasak";
93+
94+
95+
ctx = SpringApplication.run(ApplicationKt.class, new String[]{
96+
"--server.port=0",
97+
"--spring.profiles.active=dev",
98+
"--management.server.port=-1",
99+
"--server.ssl.enabled=false",
100+
"--spring.datasource.url=" + postgresURL,
101+
"--spring.datasource.username=postgres",
102+
"--spring.datasource.password=" + POSTGRES_PASSWORD,
103+
"--sentry.logging.enabled=false",
104+
"--sentry.environment=local",
105+
"--funksjonsbrytere.kafka.producer.enabled=false",
106+
"--funksjonsbrytere.enabled=false",
107+
"--logging.level.root=OFF",
108+
"--logback.configurationFile=src/main/resources/logback.xml",
109+
"--logging.level.org.springframework=OFF",
110+
"--spring.main.web-application-type=none"
111+
});
112+
113+
114+
// https://www.baeldung.com/spring-boot-application-context-exception
115+
// spring.main.web-application-type=none
116+
117+
if (sqlConnection != null) {
118+
try {
119+
sqlConnection.close();
120+
} catch (SQLException e) {
121+
throw new RuntimeException(e);
122+
}
123+
}
124+
125+
JdbcTemplate jdbc = ctx.getBean(JdbcTemplate.class);try {
126+
sqlConnection = jdbc.getDataSource().getConnection();
127+
} catch (SQLException e) {
128+
throw new RuntimeException(e);
129+
}
130+
131+
dbSpecification = Arrays.asList(new DbSpecification(DatabaseType.POSTGRES, sqlConnection));
132+
133+
return "http://localhost:" + getSutPort();
134+
}
135+
136+
protected int getSutPort() {
137+
return (Integer) ((Map) ctx.getEnvironment()
138+
.getPropertySources().get("server.ports").getSource())
139+
.get("local.server.port");
140+
}
141+
142+
@Override
143+
public void stopSut() {
144+
postgresContainer.stop();
145+
ctx.stop();
146+
}
147+
148+
@Override
149+
public void resetStateOfSUT() {
150+
DbCleaner.clearDatabase(sqlConnection, List.of(), DatabaseType.POSTGRES);
151+
}
152+
153+
@Override
154+
public List<DbSpecification> getDbSpecifications() {
155+
return dbSpecification;
156+
}
157+
}
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<configuration>
3+
<property name="ROOT_LOG_LEVEL" value="OFF"/>
4+
5+
<!-- Logger for sensitive data -->
6+
<appender name="secureLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
7+
<file>/secure-logs/secure.log</file>
8+
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
9+
<fileNamePattern>/secure-logs/secure.log.%i</fileNamePattern>
10+
<minIndex>1</minIndex>
11+
<maxIndex>1</maxIndex>
12+
</rollingPolicy>
13+
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
14+
<maxFileSize>50MB</maxFileSize>
15+
</triggeringPolicy>
16+
<encoder class="net.logstash.logback.encoder.LogstashEncoder"/>
17+
</appender>
18+
19+
<logger name="secureLogger" level="INFO" additivity="false">
20+
<appender-ref ref="secureLog"/>
21+
</logger>
22+
23+
<appender name="auditLogger" class="com.papertrailapp.logback.Syslog4jAppender">
24+
<layout class="ch.qos.logback.classic.PatternLayout">
25+
<pattern>%m%n%xEx</pattern>
26+
</layout>
27+
28+
<syslogConfig class="org.productivity.java.syslog4j.impl.net.tcp.TCPNetSyslogConfig">
29+
<!-- remote system to log to -->
30+
<host>audit.nais</host>
31+
<!-- remote port to log to -->
32+
<port>6514</port>
33+
<ident>FAMILIE-BA-SAK</ident>
34+
<!-- max log message length in bytes -->
35+
<maxMessageLength>128000</maxMessageLength>
36+
</syslogConfig>
37+
</appender>
38+
39+
<logger name="auditLogger" level="INFO" additivity="false">
40+
<appender-ref ref="auditLogger"/>
41+
</logger>
42+
43+
<!-- Spesiell håndtering av loggeren no.nav.log.LogFilter for å forhindre logging av isAlive-sjekker o.l. -->
44+
<appender name="stdout_json" class="ch.qos.logback.core.ConsoleAppender">
45+
<encoder class="net.logstash.logback.encoder.LogstashEncoder"/>
46+
</appender>
47+
48+
<appender name="SENTRY" class="io.sentry.logback.SentryAppender">
49+
<options>
50+
<!-- NOTE: Trenger dsn her også for å kunne logge feil som oppstår før spring er satt opp -->
51+
<dsn>https://dd9a6107bdda4edeb51ece7283f37af4@sentry.gc.nav.no/112</dsn>
52+
</options>
53+
</appender>
54+
55+
<root level="${ROOT_LOG_LEVEL:-INFO}">
56+
<!-- nais+local -->
57+
<appender-ref ref="stdout_json"/>
58+
<Appender-ref ref="SENTRY"/>
59+
</root>
60+
61+
<logger name="no.nav" level="WARN"/>
62+
<logger name="no.nav.familie" level="INFO"/>
63+
<logger name="org.apache" level="INFO"/>
64+
<logger name="org.apache.cxf" level="ERROR"/>
65+
<logger name="org.apache.http.client.protocol.ResponseProcessCookies" level="ERROR"/>
66+
<logger name="org.apache.wss4j.common.crypto.CryptoBase" level="ERROR"/>
67+
68+
</configuration>
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<configuration>
3+
<property name="ROOT_LOG_LEVEL" value="OFF"/>
4+
5+
<!-- Logger for sensitive data -->
6+
<appender name="secureLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
7+
<file>/secure-logs/secure.log</file>
8+
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
9+
<fileNamePattern>/secure-logs/secure.log.%i</fileNamePattern>
10+
<minIndex>1</minIndex>
11+
<maxIndex>1</maxIndex>
12+
</rollingPolicy>
13+
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
14+
<maxFileSize>50MB</maxFileSize>
15+
</triggeringPolicy>
16+
<encoder class="net.logstash.logback.encoder.LogstashEncoder"/>
17+
</appender>
18+
19+
<logger name="secureLogger" level="INFO" additivity="false">
20+
<appender-ref ref="secureLog"/>
21+
</logger>
22+
23+
<appender name="auditLogger" class="com.papertrailapp.logback.Syslog4jAppender">
24+
<layout class="ch.qos.logback.classic.PatternLayout">
25+
<pattern>%m%n%xEx</pattern>
26+
</layout>
27+
28+
<syslogConfig class="org.productivity.java.syslog4j.impl.net.tcp.TCPNetSyslogConfig">
29+
<!-- remote system to log to -->
30+
<host>audit.nais</host>
31+
<!-- remote port to log to -->
32+
<port>6514</port>
33+
<ident>FAMILIE-BA-SAK</ident>
34+
<!-- max log message length in bytes -->
35+
<maxMessageLength>128000</maxMessageLength>
36+
</syslogConfig>
37+
</appender>
38+
39+
<logger name="auditLogger" level="INFO" additivity="false">
40+
<appender-ref ref="auditLogger"/>
41+
</logger>
42+
43+
<!-- Spesiell håndtering av loggeren no.nav.log.LogFilter for å forhindre logging av isAlive-sjekker o.l. -->
44+
<appender name="stdout_json" class="ch.qos.logback.core.ConsoleAppender">
45+
<encoder class="net.logstash.logback.encoder.LogstashEncoder"/>
46+
</appender>
47+
48+
<appender name="SENTRY" class="io.sentry.logback.SentryAppender">
49+
<options>
50+
<!-- NOTE: Trenger dsn her også for å kunne logge feil som oppstår før spring er satt opp -->
51+
<dsn>https://dd9a6107bdda4edeb51ece7283f37af4@sentry.gc.nav.no/112</dsn>
52+
</options>
53+
</appender>
54+
55+
<root level="${ROOT_LOG_LEVEL:-INFO}">
56+
<!-- nais+local -->
57+
<appender-ref ref="stdout_json"/>
58+
<Appender-ref ref="SENTRY"/>
59+
</root>
60+
61+
<logger name="no.nav" level="WARN"/>
62+
<logger name="no.nav.familie" level="INFO"/>
63+
<logger name="org.apache" level="INFO"/>
64+
<logger name="org.apache.cxf" level="ERROR"/>
65+
<logger name="org.apache.http.client.protocol.ResponseProcessCookies" level="ERROR"/>
66+
<logger name="org.apache.wss4j.common.crypto.CryptoBase" level="ERROR"/>
67+
68+
</configuration>

jdk_17_maven/em/embedded/rest/familie-tilbake/pom.xml

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,7 @@
1010
</parent>
1111

1212
<artifactId>evomaster-benchmark-jdk17-em-embedded-rest-familie-tilbake</artifactId>
13-
14-
<properties>
15-
<maven.compiler.source>17</maven.compiler.source>
16-
<maven.compiler.target>17</maven.compiler.target>
17-
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
18-
</properties>
19-
13+
<packaging>jar</packaging>
2014

2115
<dependencyManagement>
2216
<dependencies>

0 commit comments

Comments
 (0)