Skip to content

Commit 6a86a96

Browse files
committed
Merge remote-tracking branch 'origin/rpc-driver' into gestaohospital
2 parents a3d7a40 + 9275b1c commit 6a86a96

114 files changed

Lines changed: 23046 additions & 144 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,4 +192,11 @@ dotnet_3/em/embedded/rest/SampleProjectDriver/logs/
192192
*.sln.DotSettings.user
193193

194194

195+
# RPC
196+
/jdk_8_maven/cs/rpc/grpc/artificial/grpc-ncs/target/
197+
/jdk_8_maven/cs/rpc/grpc/artificial/grpc-scs/target/
198+
/jdk_8_maven/cs/rpc/thrift/artificial/thrift-scs/target/
199+
/jdk_8_maven/cs/rpc/thrift/artificial/thrift-ncs/target/
200+
201+
195202

README.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,12 @@ We just re-implemented in different languages, and put them behind a web service
113113
* SCS (not-known license, artificial string examples coming from different sources)
114114

115115

116+
### RPC (Thrift/gRPC): Java
117+
118+
* NCS (not-known license, artificial numerical examples coming from different sources)
119+
120+
* SCS (not-known license, artificial string examples coming from different sources)
121+
116122
## Using This Repository
117123

118124
Due to several reasons, the software in this repository is not published as a library (e.g., on Maven and NPM).
@@ -166,6 +172,7 @@ Each of these drivers has a "main" method that is running a REST API (binding on
166172
For JavaScript, you need to use the files `em-main.js`.
167173

168174

175+
169176
You can also build (and install) each module separately, based on needs.
170177
For example, a Maven module can be installed with:
171178

jdk_11_gradle/em/embedded/graphql/patio-api/src/main/java/em/embedded/patio/EmbeddedEvoMasterController.java

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,11 @@
77
import org.evomaster.client.java.controller.api.dto.AuthenticationDto;
88
import org.evomaster.client.java.controller.api.dto.JsonTokenPostLoginDto;
99
import org.evomaster.client.java.controller.api.dto.SutInfoDto;
10+
import org.evomaster.client.java.controller.api.dto.database.schema.DatabaseType;
1011
import org.evomaster.client.java.controller.db.DbCleaner;
1112
import org.evomaster.client.java.controller.db.SqlScriptRunnerCached;
1213
import org.evomaster.client.java.controller.internal.SutController;
14+
import org.evomaster.client.java.controller.internal.db.DbSpecification;
1315
import org.evomaster.client.java.controller.problem.GraphQlProblem;
1416
import org.evomaster.client.java.controller.problem.ProblemInfo;
1517
import org.testcontainers.containers.GenericContainer;
@@ -18,6 +20,7 @@
1820
import java.sql.Connection;
1921
import java.sql.DriverManager;
2022
import java.sql.SQLException;
23+
import java.util.Arrays;
2124
import java.util.Collections;
2225
import java.util.List;
2326

@@ -37,7 +40,8 @@ public static void main(String[] args){
3740
}
3841

3942
private ApplicationContext ctx;
40-
private Connection connection;
43+
private Connection sqlConnection;
44+
private List<DbSpecification> dbSpecification;
4145

4246
private final int portApp = 8080; //Hardcoded. will need fixing
4347
// TODO maybe report at https://github.com/micronaut-projects/micronaut-core/issues
@@ -76,20 +80,25 @@ public String startSut() {
7680
});
7781

7882

79-
if (connection != null) {
83+
if (sqlConnection != null) {
8084
try {
81-
connection.close();
85+
sqlConnection.close();
8286
} catch (SQLException e) {
8387
throw new RuntimeException(e);
8488
}
8589
}
8690

8791
try {
88-
connection = DriverManager.getConnection(url, "patio", "patio");
92+
sqlConnection = DriverManager.getConnection(url, "patio", "patio");
8993
} catch (SQLException e) {
9094
throw new RuntimeException(e);
9195
}
9296

97+
dbSpecification = Arrays.asList(new DbSpecification(){{
98+
dbType = DatabaseType.POSTGRES;
99+
schemaNames = Arrays.asList("public");
100+
initSqlOnResourcePath = "/initDb.sql";
101+
}});
93102

94103
return "http://localhost:" + getSutPort();
95104
}
@@ -121,8 +130,8 @@ public String getPackagePrefixesToCover() {
121130

122131
@Override
123132
public void resetStateOfSUT() {
124-
DbCleaner.clearDatabase_Postgres(connection, "public", List.of("flyway_schema_history"));
125-
SqlScriptRunnerCached.runScriptFromResourceFile(connection,"/initDB.sql");
133+
// DbCleaner.clearDatabase_Postgres(connection, "public", List.of("flyway_schema_history"));
134+
// SqlScriptRunnerCached.runScriptFromResourceFile(connection,"/initDB.sql");
126135
}
127136

128137
@Override
@@ -153,11 +162,16 @@ public List<AuthenticationDto> getInfoForAuthentication() {
153162
}
154163

155164
public Connection getConnection() {
156-
return connection;
165+
return sqlConnection;
157166
}
158167

159168
@Override
160169
public String getDatabaseDriverName() {
161170
return "org.postgresql.Driver";
162171
}
172+
173+
public List<DbSpecification> getDbSpecifications() {
174+
return dbSpecification;
175+
}
176+
163177
}

jdk_11_gradle/em/external/graphql/patio-api/src/main/java/em/external/patio/ExternalEvoMasterController.java

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,18 @@
55
import org.evomaster.client.java.controller.api.dto.AuthenticationDto;
66
import org.evomaster.client.java.controller.api.dto.JsonTokenPostLoginDto;
77
import org.evomaster.client.java.controller.api.dto.SutInfoDto;
8+
import org.evomaster.client.java.controller.api.dto.database.schema.DatabaseType;
89
import org.evomaster.client.java.controller.db.DbCleaner;
910
import org.evomaster.client.java.controller.db.SqlScriptRunnerCached;
11+
import org.evomaster.client.java.controller.internal.db.DbSpecification;
1012
import org.evomaster.client.java.controller.problem.GraphQlProblem;
1113
import org.evomaster.client.java.controller.problem.ProblemInfo;
1214
import org.testcontainers.containers.GenericContainer;
1315

1416
import java.sql.Connection;
1517
import java.sql.DriverManager;
1618
import java.sql.SQLException;
19+
import java.util.Arrays;
1720
import java.util.Collections;
1821
import java.util.List;
1922

@@ -59,7 +62,8 @@ public static void main(String[] args) {
5962
private final int timeoutSeconds;
6063
private final int sutPort;
6164
private String jarLocation;
62-
private Connection connection;
65+
private Connection sqlConnection;
66+
private List<DbSpecification> dbSpecification;
6367

6468
private static final GenericContainer postgres = new GenericContainer("postgres:9")
6569
.withEnv("POSTGRES_HOST_AUTH_METHOD","trust")
@@ -148,16 +152,21 @@ public void postStart() {
148152

149153
try {
150154
Class.forName(getDatabaseDriverName());
151-
connection = DriverManager.getConnection(dbUrl(), "patio", "patio");
155+
sqlConnection = DriverManager.getConnection(dbUrl(), "patio", "patio");
156+
dbSpecification = Arrays.asList(new DbSpecification(){{
157+
dbType = DatabaseType.POSTGRES;
158+
schemaNames = Arrays.asList("public");
159+
initSqlOnResourcePath = "/initDb.sql";
160+
}});
152161
} catch (Exception e) {
153162
throw new RuntimeException(e);
154163
}
155164
}
156165

157166
@Override
158167
public void resetStateOfSUT() {
159-
DbCleaner.clearDatabase_Postgres(connection, "public", List.of("flyway_schema_history"));
160-
SqlScriptRunnerCached.runScriptFromResourceFile(connection,"/initDB.sql");
168+
// DbCleaner.clearDatabase_Postgres(connection, "public", List.of("flyway_schema_history"));
169+
// SqlScriptRunnerCached.runScriptFromResourceFile(connection,"/initDB.sql");
161170
}
162171

163172
@Override
@@ -171,13 +180,13 @@ public void postStop() {
171180
}
172181

173182
private void closeDataBaseConnection() {
174-
if (connection != null) {
183+
if (sqlConnection != null) {
175184
try {
176-
connection.close();
185+
sqlConnection.close();
177186
} catch (SQLException e) {
178187
e.printStackTrace();
179188
}
180-
connection = null;
189+
sqlConnection = null;
181190
}
182191
}
183192

@@ -198,7 +207,7 @@ public SutInfoDto.OutputFormat getPreferredOutputFormat() {
198207

199208
@Override
200209
public Connection getConnection() {
201-
return connection;
210+
return sqlConnection;
202211
}
203212

204213
@Override
@@ -221,4 +230,9 @@ public List<AuthenticationDto> getInfoForAuthentication() {
221230

222231
return List.of(dto);
223232
}
233+
234+
@Override
235+
public List<DbSpecification> getDbSpecifications() {
236+
return dbSpecification;
237+
}
224238
}

jdk_11_maven/em/embedded/graphql/timbuctoo/src/main/java/em/embedded/nl/knaw/huygens/EmbeddedEvoMasterController.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import org.evomaster.client.java.controller.InstrumentedSutStarter;
88
import org.evomaster.client.java.controller.api.dto.AuthenticationDto;
99
import org.evomaster.client.java.controller.api.dto.SutInfoDto;
10+
import org.evomaster.client.java.controller.internal.db.DbSpecification;
1011
import org.evomaster.client.java.controller.problem.GraphQlProblem;
1112
import org.evomaster.client.java.controller.problem.ProblemInfo;
1213
import org.testcontainers.containers.GenericContainer;
@@ -152,6 +153,11 @@ public void resetStateOfSUT() {
152153
}
153154
}
154155

156+
@Override
157+
public List<DbSpecification> getDbSpecifications() {
158+
return null;
159+
}
160+
155161
@Override
156162
public ProblemInfo getProblemInfo() {
157163
return new GraphQlProblem("/v5/graphql");

jdk_11_maven/em/embedded/rest/cwa-verification/src/main/java/em/embedded/app/coronawarn/verification/EmbeddedEvoMasterController.java

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@
66
import org.evomaster.client.java.controller.InstrumentedSutStarter;
77
import org.evomaster.client.java.controller.api.dto.AuthenticationDto;
88
import org.evomaster.client.java.controller.api.dto.SutInfoDto;
9+
import org.evomaster.client.java.controller.api.dto.database.schema.DatabaseType;
910
import org.evomaster.client.java.controller.db.DbCleaner;
11+
import org.evomaster.client.java.controller.internal.db.DbSpecification;
1012
import org.evomaster.client.java.controller.problem.ProblemInfo;
1113
import org.evomaster.client.java.controller.problem.RestProblem;
1214
import org.springframework.boot.SpringApplication;
@@ -15,6 +17,7 @@
1517

1618
import java.sql.Connection;
1719
import java.sql.SQLException;
20+
import java.util.Arrays;
1821
import java.util.List;
1922
import java.util.Map;
2023
import java.util.Scanner;
@@ -39,7 +42,8 @@ public static void main(String[] args) {
3942

4043

4144
private ConfigurableApplicationContext ctx;
42-
private Connection connection;
45+
private Connection sqlConnection;
46+
private List<DbSpecification> dbSpecification;
4347

4448

4549
public EmbeddedEvoMasterController() {
@@ -61,21 +65,25 @@ public String startSut() {
6165
"--spring.datasource.url=jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;"
6266
});
6367

64-
if (connection != null) {
68+
if (sqlConnection != null) {
6569
try {
66-
connection.close();
70+
sqlConnection.close();
6771
} catch (SQLException e) {
6872
throw new RuntimeException(e);
6973
}
7074
}
71-
JdbcTemplate jdbc = ctx.getBean(JdbcTemplate.class);
72-
73-
try {
74-
connection = jdbc.getDataSource().getConnection();
75+
JdbcTemplate jdbc = ctx.getBean(JdbcTemplate.class);try {
76+
sqlConnection = jdbc.getDataSource().getConnection();
7577
} catch (SQLException e) {
7678
throw new RuntimeException(e);
7779
}
7880

81+
// need to check tablesToSkip with DATABASECHANGELOG
82+
dbSpecification = Arrays.asList(new DbSpecification(){{
83+
dbType = DatabaseType.H2;
84+
connection = sqlConnection;
85+
}});
86+
7987
return "http://localhost:" + getSutPort();
8088
}
8189

@@ -103,7 +111,7 @@ public String getPackagePrefixesToCover() {
103111

104112
@Override
105113
public void resetStateOfSUT() {
106-
DbCleaner.clearDatabase_H2(connection, List.of("DATABASECHANGELOG"));
114+
// DbCleaner.clearDatabase_H2(connection, List.of("DATABASECHANGELOG"));
107115
}
108116

109117
@Override
@@ -129,9 +137,12 @@ public List<AuthenticationDto> getInfoForAuthentication() {
129137
}
130138

131139
public Connection getConnection() {
132-
return connection;
140+
return sqlConnection;
133141
}
134142

135143

136-
144+
@Override
145+
public List<DbSpecification> getDbSpecifications() {
146+
return dbSpecification;
147+
}
137148
}

jdk_11_maven/em/external/graphql/timbuctoo/src/main/java/em/external/nl/knaw/huygens/ExternalEvoMasterController.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import org.evomaster.client.java.controller.InstrumentedSutStarter;
66
import org.evomaster.client.java.controller.api.dto.AuthenticationDto;
77
import org.evomaster.client.java.controller.api.dto.SutInfoDto;
8+
import org.evomaster.client.java.controller.internal.db.DbSpecification;
89
import org.evomaster.client.java.controller.problem.GraphQlProblem;
910
import org.evomaster.client.java.controller.problem.ProblemInfo;
1011
import org.testcontainers.containers.GenericContainer;
@@ -227,5 +228,8 @@ public Connection getConnection() {
227228
return null;
228229
}
229230

230-
231+
@Override
232+
public List<DbSpecification> getDbSpecifications() {
233+
return null;
234+
}
231235
}

0 commit comments

Comments
 (0)