Skip to content

Commit 90fa3c6

Browse files
committed
Correct library location in tests
Re ECFLOW-1943
1 parent 2662760 commit 90fa3c6

Some content is hidden

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

42 files changed

+126
-123
lines changed

libs/attribute/test/TestMigration.cpp

+3-2
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,8 @@ BOOST_AUTO_TEST_SUITE(T_Migration)
4949
BOOST_AUTO_TEST_CASE(test_migration_restore_def_con) {
5050
cout << "ANattr:: ...test_migration_restore_def_con\n";
5151

52-
std::string file_name = File::test_data("ANattr/test/data/migration/default_constructor_1_2_2/", "ANattr");
52+
std::string file_name =
53+
File::test_data("libs/attribute/test/data/migration/default_constructor_1_2_2/", "libs/attribute");
5354
// BOOST_CHECK_MESSAGE(File::createDirectories(file_name ),"Could not create directory " << file_name);
5455

5556
// Create migration data
@@ -104,7 +105,7 @@ BOOST_AUTO_TEST_CASE(test_migration_restore_def_con) {
104105
BOOST_AUTO_TEST_CASE(test_migration_restore) {
105106
cout << "ANattr:: ...test_migration_restore\n";
106107

107-
std::string file_name = File::test_data("ANattr/test/data/migration/1_2_2/", "ANattr");
108+
std::string file_name = File::test_data("libs/attribute/test/data/migration/1_2_2/", "libs/attribute");
108109
// BOOST_CHECK_MESSAGE(File::createDirectories(file_name ),"Could not create directory " << file_name);
109110

110111
std::vector<std::string> theVec;

libs/base/test/TestArchiveAndRestoreCmd.cpp

+6-6
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ BOOST_AUTO_TEST_CASE(test_archive_and_restore_suite) {
4949

5050
// We use Pid::unique_name, to allow multiple invocation of this test
5151
Defs theDefs;
52-
std::string ecf_home = File::test_data("Base/test", "Base");
52+
std::string ecf_home = File::test_data("libs/base/test", "libs/base");
5353
theDefs.set_server().add_or_update_user_variables(Str::ECF_HOME(), ecf_home);
5454
suite_ptr suite = theDefs.add_suite(Pid::unique_name("test_archive_and_restore_suite"));
5555
suite->add_family("f1")->add_task("t1");
@@ -95,7 +95,7 @@ BOOST_AUTO_TEST_CASE(test_archive_and_restore_family) {
9595
// task t1
9696

9797
Defs theDefs;
98-
std::string ecf_home = File::test_data("Base/test", "Base");
98+
std::string ecf_home = File::test_data("libs/base/test", "libs/base");
9999
theDefs.set_server().add_or_update_user_variables(Str::ECF_HOME(), ecf_home);
100100
suite_ptr suite = theDefs.add_suite(Pid::unique_name("test_archive_and_restore_family"));
101101
family_ptr f3 = suite->add_family("f1")->add_family("f2")->add_family("f3");
@@ -146,7 +146,7 @@ BOOST_AUTO_TEST_CASE(test_archive_and_restore_all) {
146146

147147
Defs theDefs;
148148
{
149-
std::string ecf_home = File::test_data("Base/test", "Base");
149+
std::string ecf_home = File::test_data("libs/base/test", "libs/base");
150150
theDefs.set_server().add_or_update_user_variables(Str::ECF_HOME(), ecf_home);
151151
suite_ptr suite = theDefs.add_suite(Pid::unique_name("test_archive_and_restore_all"));
152152
family_ptr f1 = suite->add_family("f1");
@@ -242,7 +242,7 @@ BOOST_AUTO_TEST_CASE(test_archive_and_restore_overlap) {
242242
// task t1
243243

244244
Defs theDefs;
245-
std::string ecf_home = File::test_data("Base/test", "Base");
245+
std::string ecf_home = File::test_data("libs/base/test", "libs/base");
246246
theDefs.set_server().add_or_update_user_variables(Str::ECF_HOME(), ecf_home);
247247
suite_ptr suite = theDefs.add_suite(Pid::unique_name("test_archive_and_restore_overlap"));
248248
std::string f1_abs_node_path;
@@ -288,7 +288,7 @@ BOOST_AUTO_TEST_CASE(test_archive_and_delete_suite) {
288288

289289
// We use Pid::unique_name, to allow multiple invocation of this test
290290
Defs theDefs;
291-
std::string ecf_home = File::test_data("Base/test", "Base");
291+
std::string ecf_home = File::test_data("libs/base/test", "libs/base");
292292
theDefs.set_server().add_or_update_user_variables(Str::ECF_HOME(), ecf_home);
293293
suite_ptr suite = theDefs.add_suite(Pid::unique_name("test_archive_and_delete_suite"));
294294
family_ptr family = suite->add_family("f1");
@@ -325,7 +325,7 @@ BOOST_AUTO_TEST_CASE(test_archive_and_restore_errors) {
325325

326326
// We use Pid::unique_name, to allow multiple invocation of this test
327327
Defs theDefs;
328-
std::string ecf_home = File::test_data("Base/test", "Base");
328+
std::string ecf_home = File::test_data("libs/base/test", "libs/base");
329329
theDefs.set_server().add_or_update_user_variables(Str::ECF_HOME(), ecf_home);
330330
suite_ptr suite = theDefs.add_suite(Pid::unique_name("test_archive_and_restore_errors"));
331331
family_ptr f1 = suite->add_family("f1");

libs/base/test/TestLogCmd.cpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,12 @@ BOOST_AUTO_TEST_CASE(test_log_cmd) {
5959

6060
// Create a new log file, equivalent --log=new .../Base/test/new_logfile.txt
6161
// LogCmd::doHandleRequest needs log file to have been created first
62-
std::string old_log_file = File::test_data("Base/test/old_logfile.txt", "Base");
62+
std::string old_log_file = File::test_data("libs/base/test/old_logfile.txt", "libs/base");
6363
Log::instance()->create(old_log_file);
6464

6565
std::string new_log_file =
66-
File::test_data("Base/test/new_logfile.txt ", "Base"); // ECFLOW-377 note extra space at the end
67-
std::string expected_new_log_file = File::test_data("Base/test/new_logfile.txt", "Base"); // space removed
66+
File::test_data("libs/base/test/new_logfile.txt ", "libs/base"); // ECFLOW-377 note extra space at the end
67+
std::string expected_new_log_file = File::test_data("libs/base/test/new_logfile.txt", "libs/base"); // space removed
6868

6969
// ECFLOW-376 --log=new <path> should be treated same as changing ECF_LOG from the gui. i.e added as a user
7070
// variable. hence visible in GUI

libs/base/test/TestRequeueNodeCmd.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -346,10 +346,10 @@ BOOST_AUTO_TEST_CASE(test_reque_with_repeat_and_defstatus_complete) {
346346

347347
// Create a log file with a unique name, to avoid problems when running in paralle
348348
// This test relies on log file contents to be flushed.
349-
std::string log_file = "Base/test/test_reque_with_repeat_and_defstatus_complete_";
349+
std::string log_file = "libs/base/test/test_reque_with_repeat_and_defstatus_complete_";
350350
log_file += Pid::getpid(); // can throw
351351
log_file += ".log";
352-
log_file = File::test_data(log_file, "Base");
352+
log_file = File::test_data(log_file, "libs/base");
353353

354354
Log::create(log_file);
355355

libs/client/test/TestCheckPtDefsCmd.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ BOOST_AUTO_TEST_CASE(test_check_pt_defs_cmd) {
4242
CtsApi::restartServer() << " should return 0 server not started, or connection refused\n"
4343
<< theClient.errorMsg());
4444

45-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
45+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
4646

4747
BOOST_REQUIRE_MESSAGE(theClient.loadDefs(path) == 0, "load defs failed \n" << theClient.errorMsg());
4848

@@ -322,7 +322,7 @@ BOOST_AUTO_TEST_CASE(test_check_pt_edit_history) {
322322
BOOST_REQUIRE_MESSAGE(theClient.restartServer() == 0,
323323
CtsApi::restartServer() << " should return 0 server not started, or connection refused\n"
324324
<< theClient.errorMsg());
325-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
325+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
326326
BOOST_REQUIRE_MESSAGE(theClient.loadDefs(path) == 0, "load defs failed \n" << theClient.errorMsg());
327327
BOOST_REQUIRE_MESSAGE(theClient.shutdownServer() == 0,
328328
CtsApi::shutdownServer() << " should return 0\n"

libs/client/test/TestClientEnvironment.cpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ BOOST_AUTO_TEST_SUITE(T_ClientEnvironment)
3232
BOOST_AUTO_TEST_CASE(test_client_environment_host_file_parsing) {
3333
std::cout << "Client:: ...test_client_environment_host_file_parsing" << endl;
3434

35-
std::string good_host_file = File::test_data("Client/test/data/good_hostfile", "Client");
35+
std::string good_host_file = File::test_data("libs/client/test/data/good_hostfile", "libs/client");
3636

3737
// local host should be implicitly added to internal host list
3838
std::string the_host = ClientEnvironment::hostSpecified();
@@ -86,7 +86,7 @@ BOOST_AUTO_TEST_CASE(test_client_environment_host_file_defaults) {
8686
// config or environment. To test this correctly we need to specify a port
8787
// other than the default
8888

89-
std::string good_host_file = File::test_data("Client/test/data/good_hostfile", "Client");
89+
std::string good_host_file = File::test_data("libs/client/test/data/good_hostfile", "libs/client");
9090

9191
// local host should be implicitly added to internal host list
9292
std::vector<std::pair<std::string, std::string>> expectedHost;
@@ -135,7 +135,7 @@ BOOST_AUTO_TEST_CASE(test_client_environment_host_file_defaults) {
135135
BOOST_AUTO_TEST_CASE(test_client_environment_empty_host_file) {
136136
std::cout << "Client:: ...test_client_environment_empty_host_file" << endl;
137137

138-
std::string empty_host_file = File::test_data("Client/test/data/empty_hostfile", "Client");
138+
std::string empty_host_file = File::test_data("libs/client/test/data/empty_hostfile", "libs/client");
139139

140140
std::string errormsg;
141141
BOOST_CHECK_MESSAGE(File::create(empty_host_file, "", errormsg), "Failed to create empty host file " << errormsg);

libs/client/test/TestClientInterface.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -305,7 +305,7 @@ BOOST_AUTO_TEST_CASE(test_client_interface) {
305305
CtsApi::to_string(CtsApi::run(paths, true)) << " should return 0\n"
306306
<< theClient.errorMsg());
307307

308-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
308+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
309309
BOOST_REQUIRE_MESSAGE(theClient.loadDefs(path) == 0, " should return 0\n" << theClient.errorMsg());
310310
BOOST_REQUIRE_MESSAGE(theClient.loadDefs(path, true /*force*/) == 0, " should return 0\n" << theClient.errorMsg());
311311
BOOST_REQUIRE_MESSAGE(theClient.loadDefs(path, true /*force*/, true /*check_only*/) == 0,
@@ -408,7 +408,7 @@ BOOST_AUTO_TEST_CASE(test_client_interface) {
408408
CtsApi::get_log_path() << " should return 0\n"
409409
<< theClient.errorMsg());
410410

411-
std::string new_log_path = File::test_data("Client/test/data/new_log.log", "Client");
411+
std::string new_log_path = File::test_data("libs/client/test/data/new_log.log", "libs/client");
412412
BOOST_REQUIRE_MESSAGE(theClient.new_log(new_log_path) == 0, " should return 0\n" << theClient.errorMsg());
413413
BOOST_REQUIRE_MESSAGE(theClient.new_log("") == 0, " should return 0\n" << theClient.errorMsg());
414414
}

libs/client/test/TestGroupCmd.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ BOOST_AUTO_TEST_CASE(test_client_group_lifecyle) {
6464
{
6565
// restart server, load lifecycle, and get the defs tree from the server
6666
std::string groupRequest = "--restart; load=";
67-
groupRequest += File::test_data("Client/test/data/lifecycle.txt", "Client");
67+
groupRequest += File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
6868
groupRequest += "; get";
6969

7070
BOOST_REQUIRE_MESSAGE(theClient.group(groupRequest) == 0,

libs/client/test/TestJobGenOnly.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ BOOST_AUTO_TEST_CASE(test_jobgenonly) {
3030

3131
// Define paths to ECF_HOME and location of the defs file
3232

33-
std::string defsFile = File::test_data("Client/test/data/jobgenonly.def", "Client");
34-
std::string ecf_home = File::test_data("Client/test/data/ECF_HOME", "Client");
33+
std::string defsFile = File::test_data("libs/client/test/data/jobgenonly.def", "libs/client");
34+
std::string ecf_home = File::test_data("libs/client/test/data/ECF_HOME", "libs/client");
3535

3636
/// Remove existing job file if any.
3737
/// Job file location may NOT be same as ecf file.

libs/client/test/TestLifeCycle.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ BOOST_AUTO_TEST_CASE(test_node_tree_lifecycle) {
3838
TestLog test_log(
3939
"test_node_tree_lifecycle.log"); // will create log file, and destroy log and remove file at end of scope
4040

41-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
41+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
4242

4343
Defs defs;
4444
std::string errorMsg, warningMsg;

libs/client/test/TestLoadDefsCmd.cpp

+4-4
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ BOOST_AUTO_TEST_CASE(test_load_defs_cmd_handleRequest) {
4343
TestLog test_log("test_load_defs_cmd_handleRequest.log"); // will create log file, and destroy log and remove file
4444
// at end of scope
4545

46-
std::string firstDef = File::test_data("Client/test/data/first.def", "Client");
46+
std::string firstDef = File::test_data("libs/client/test/data/first.def", "libs/client");
4747

4848
// Load the FIRST file with a set of unresolved extrens
4949
defs_ptr firstDefs = Defs::create();
@@ -56,7 +56,7 @@ BOOST_AUTO_TEST_CASE(test_load_defs_cmd_handleRequest) {
5656
size_t noOfSuites = firstDefs->suiteVec().size();
5757

5858
// load the SECOND file, which should resolve the externs
59-
std::string secondDef = File::test_data("Client/test/data/second.def", "Client");
59+
std::string secondDef = File::test_data("libs/client/test/data/second.def", "libs/client");
6060
Defs secondDefs;
6161
{
6262
std::string errorMsg, warningMsg;
@@ -101,7 +101,7 @@ BOOST_AUTO_TEST_CASE(test_load_defs_check_only) {
101101
BOOST_REQUIRE_MESSAGE(invokeServer.server_started(),
102102
"Server failed to start on " << invokeServer.host() << ":" << invokeServer.port());
103103

104-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
104+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
105105

106106
// Do not load the defs do a check only
107107
ClientInvoker theClient(invokeServer.host(), invokeServer.port());
@@ -126,7 +126,7 @@ BOOST_AUTO_TEST_CASE(test_load_defs_check_only) {
126126
<< theClient.errorMsg());
127127
}
128128
// provide path to definition that should fail to parse
129-
std::string path_bad_def = File::test_data("Client/test/data/bad.def", "Client");
129+
std::string path_bad_def = File::test_data("libs/client/test/data/bad.def", "libs/client");
130130
BOOST_REQUIRE_THROW(theClient.loadDefs(path_bad_def, false, true /* check only*/), std::runtime_error);
131131
}
132132

libs/client/test/TestLogAndCheckptErrors.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ BOOST_AUTO_TEST_CASE(test_log_and_checkpt_write_errors) {
7676

7777
if (debug_me)
7878
cout << "->load a defs file to the server\n";
79-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
79+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
8080
BOOST_CHECK_MESSAGE(theClient.loadDefs(path) == 0, "load defs failed \n" << theClient.errorMsg());
8181
if (debug_me) {
8282
BOOST_CHECK_MESSAGE(theClient.sync_local() == 0, "sync_local failed \n" << theClient.errorMsg());

libs/client/test/TestPlugCmd.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ static void get_defs(Defs& defs) {
4141
// trigger ../family1/a:myMeter >= 50 || ../family1/a:myEvent
4242
// endfamily
4343
// endsuite
44-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
44+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
4545
std::string errorMsg, warningMsg;
4646
bool parse = defs.restore(path, errorMsg, warningMsg);
4747
if (!parse)
@@ -234,7 +234,7 @@ static void test_plug_on_multiple_server(const std::string& host1,
234234

235235
// std::cout << " LOAD the defs into FIRST server(" << host1 << ":" << port1 << ") There is NO DEFS in the second
236236
// server." << endl;
237-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
237+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
238238
BOOST_REQUIRE_MESSAGE(server1Client.loadDefs(path) == 0, "load defs failed \n" << server1Client.errorMsg());
239239

240240
// cout << " Test the ERROR conditions in MoveCmd" << endl;

libs/client/test/TestRtt.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ BOOST_AUTO_TEST_SUITE(T_Rtt)
2525
BOOST_AUTO_TEST_CASE(test_client_invoker_round_trip_times) {
2626
cout << "Client:: ...test_client_invoker_round_trip_times" << endl;
2727

28-
std::string root_path = File::test_data("Client/test/data/", "Client");
28+
std::string root_path = File::test_data("libs/client/test/data/", "libs/client");
2929

3030
/// Open file rtt.dat and compute average round trip times
3131
std::string result = Rtt::analyis(root_path + "rtt.dat");

libs/client/test/TestServer.cpp

+5-5
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ BOOST_AUTO_TEST_CASE(test_server_state_changes) {
6565
BOOST_REQUIRE_MESSAGE(invokeServer.server_started(),
6666
"Server failed to start on " << invokeServer.host() << ":" << invokeServer.port());
6767

68-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
68+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
6969

7070
ClientInvoker theClient(invokeServer.host(), invokeServer.port());
7171
BOOST_REQUIRE_MESSAGE(theClient.loadDefs(path) == 0, "load defs failed \n" << theClient.errorMsg());
@@ -171,7 +171,7 @@ BOOST_AUTO_TEST_CASE(test_server_state_changes_with_auto_sync) {
171171
BOOST_REQUIRE_MESSAGE(invokeServer.server_started(),
172172
"Server failed to start on " << invokeServer.host() << ":" << invokeServer.port());
173173

174-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
174+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
175175

176176
ClientInvoker theClient(invokeServer.host(), invokeServer.port());
177177
theClient.set_auto_sync(true);
@@ -235,7 +235,7 @@ BOOST_AUTO_TEST_CASE(test_server_stress_test) {
235235
BOOST_REQUIRE_MESSAGE(invokeServer.server_started(),
236236
"Server failed to start on " << invokeServer.host() << ":" << invokeServer.port());
237237

238-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
238+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
239239

240240
ClientInvoker theClient(invokeServer.host(), invokeServer.port());
241241
int load = 125;
@@ -332,7 +332,7 @@ BOOST_AUTO_TEST_CASE(test_server_group_stress_test) {
332332
BOOST_REQUIRE_MESSAGE(invokeServer.server_started(),
333333
"Server failed to start on " << invokeServer.host() << ":" << invokeServer.port());
334334

335-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
335+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
336336

337337
boost::timer::cpu_timer
338338
boost_timer; // measures CPU, replace with cpu_timer with boost > 1.51, measures cpu & elapsed
@@ -383,7 +383,7 @@ BOOST_AUTO_TEST_CASE(test_server_stress_test_2) {
383383
BOOST_REQUIRE_MESSAGE(invokeServer.server_started(),
384384
"Server failed to start on " << invokeServer.host() << ":" << invokeServer.port());
385385

386-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
386+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
387387

388388
Zombie z(Child::USER,
389389
ecf::Child::INIT,

libs/client/test/TestServerAndLifeCycle.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ BOOST_AUTO_TEST_CASE(test_client_lifecyle) {
6161

6262
// load the defs into the server
6363
{
64-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
64+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
6565
BOOST_REQUIRE_MESSAGE(theClient.delete_all() == 0,
6666
CtsApi::to_string(CtsApi::delete_node()) << " should return 0\n"
6767
<< theClient.errorMsg());

libs/client/test/TestSignalSIGTERM.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ BOOST_AUTO_TEST_CASE(test_signal_SIGTERM) {
5757
CtsApi::restartServer() << " should return 0 server not started, or connection refused\n"
5858
<< theClient.errorMsg());
5959

60-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
60+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
6161
BOOST_REQUIRE_MESSAGE(theClient.loadDefs(path) == 0, "load defs failed \n" << theClient.errorMsg());
6262

6363
// Get the definition

libs/client/test/TestUrlCmd.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ BOOST_AUTO_TEST_SUITE(T_UrlCmd)
3030
BOOST_AUTO_TEST_CASE(test_url_cmd) {
3131
cout << "Client:: ...test_url_cmd" << endl;
3232

33-
std::string path = File::test_data("Client/test/data/lifecycle.txt", "Client");
33+
std::string path = File::test_data("libs/client/test/data/lifecycle.txt", "libs/client");
3434

3535
defs_ptr defs = Defs::create();
3636

0 commit comments

Comments
 (0)