artefacts-cli 0.8.0__py3-none-any.whl → 0.9.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,496 @@
1
+ # Translations template for artefacts.
2
+ # Copyright (C) 2025 Asteria ART
3
+ # This file is distributed under the same license as the artefacts project.
4
+ # FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
5
+ #
6
+ #, fuzzy
7
+ msgid ""
8
+ msgstr ""
9
+ "Project-Id-Version: artefacts 0.9.2.dev8\n"
10
+ "Report-Msgid-Bugs-To: dev@artefacts.com\n"
11
+ "POT-Creation-Date: 2025-05-12 11:10+0900\n"
12
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
+ "Language-Team: LANGUAGE <LL@li.org>\n"
15
+ "MIME-Version: 1.0\n"
16
+ "Content-Type: text/plain; charset=utf-8\n"
17
+ "Content-Transfer-Encoding: 8bit\n"
18
+ "Generated-By: Babel 2.17.0\n"
19
+
20
+ #: venv/lib/python3.10/site-packages/click/_termui_impl.py:179
21
+ msgid "d"
22
+ msgstr ""
23
+
24
+ #: venv/lib/python3.10/site-packages/click/_termui_impl.py:606
25
+ #, python-brace-format
26
+ msgid "{editor}: Editing failed"
27
+ msgstr ""
28
+
29
+ #: venv/lib/python3.10/site-packages/click/_termui_impl.py:610
30
+ #, python-brace-format
31
+ msgid "{editor}: Editing failed: {e}"
32
+ msgstr ""
33
+
34
+ #: venv/lib/python3.10/site-packages/click/_winconsole.py:155
35
+ #, python-brace-format
36
+ msgid "Windows error: {error}"
37
+ msgstr ""
38
+
39
+ #: venv/lib/python3.10/site-packages/click/_winconsole.py:172
40
+ #, python-brace-format
41
+ msgid "Windows error {errno}"
42
+ msgstr ""
43
+
44
+ #: venv/lib/python3.10/site-packages/click/core.py:88
45
+ #, python-brace-format
46
+ msgid ""
47
+ "It is not possible to add the group {cmd_name!r} to another group "
48
+ "{base_cmd_name!r} that is in chain mode."
49
+ msgstr ""
50
+
51
+ #: venv/lib/python3.10/site-packages/click/core.py:93
52
+ #, python-brace-format
53
+ msgid ""
54
+ "Found the group {cmd_name!r} as subcommand to another group "
55
+ "{base_cmd_name!r} that is in chain mode. This is not supported."
56
+ msgstr ""
57
+
58
+ #: venv/lib/python3.10/site-packages/click/core.py:998
59
+ #, python-brace-format
60
+ msgid ""
61
+ "The parameter {param} is used more than once. Remove its duplicate as "
62
+ "parameters should be unique."
63
+ msgstr ""
64
+
65
+ #: venv/lib/python3.10/site-packages/click/core.py:1090
66
+ #: venv/lib/python3.10/site-packages/click/core.py:1127
67
+ #: venv/lib/python3.10/site-packages/click/core.py:2593
68
+ #, python-brace-format
69
+ msgid "(DEPRECATED: {target})"
70
+ msgstr ""
71
+
72
+ #: venv/lib/python3.10/site-packages/click/core.py:1092
73
+ #: venv/lib/python3.10/site-packages/click/core.py:1129
74
+ #: venv/lib/python3.10/site-packages/click/core.py:2595
75
+ msgid "(DEPRECATED)"
76
+ msgstr ""
77
+
78
+ #: venv/lib/python3.10/site-packages/click/core.py:1094
79
+ #: venv/lib/python3.10/site-packages/click/core.py:1131
80
+ #, python-brace-format
81
+ msgid "{text} {deprecated_message}"
82
+ msgstr ""
83
+
84
+ #: venv/lib/python3.10/site-packages/click/core.py:1150
85
+ msgid "Options"
86
+ msgstr ""
87
+
88
+ #: venv/lib/python3.10/site-packages/click/core.py:1212
89
+ #, python-brace-format
90
+ msgid "Got unexpected extra argument ({args})"
91
+ msgid_plural "Got unexpected extra arguments ({args})"
92
+ msgstr[0] ""
93
+ msgstr[1] ""
94
+
95
+ #: venv/lib/python3.10/site-packages/click/core.py:1231
96
+ #, python-brace-format
97
+ msgid "DeprecationWarning: The command {name!r} is deprecated.{extra_message}"
98
+ msgstr ""
99
+
100
+ #: venv/lib/python3.10/site-packages/click/core.py:1415
101
+ msgid "Aborted!"
102
+ msgstr ""
103
+
104
+ #: venv/lib/python3.10/site-packages/click/core.py:1789
105
+ msgid "Commands"
106
+ msgstr ""
107
+
108
+ #: venv/lib/python3.10/site-packages/click/core.py:1820
109
+ msgid "Missing command."
110
+ msgstr ""
111
+
112
+ #: venv/lib/python3.10/site-packages/click/core.py:1898
113
+ #, python-brace-format
114
+ msgid "No such command {name!r}."
115
+ msgstr ""
116
+
117
+ #: venv/lib/python3.10/site-packages/click/core.py:2137
118
+ #, python-brace-format
119
+ msgid "'nargs' must be {arity} (or None) for type {type!r}, but it was {nargs}."
120
+ msgstr ""
121
+
122
+ #: venv/lib/python3.10/site-packages/click/core.py:2173
123
+ #, python-brace-format
124
+ msgid "'default' {subject} must match nargs={nargs}."
125
+ msgstr ""
126
+
127
+ #: venv/lib/python3.10/site-packages/click/core.py:2181
128
+ #, python-brace-format
129
+ msgid ""
130
+ "The {type_name} '{readable_name}' is deprecated and still required. A "
131
+ "deprecated {type_name} cannot be required."
132
+ msgstr ""
133
+
134
+ #: venv/lib/python3.10/site-packages/click/core.py:2322
135
+ msgid "Value must be an iterable."
136
+ msgstr ""
137
+
138
+ #: venv/lib/python3.10/site-packages/click/core.py:2343
139
+ #, python-brace-format
140
+ msgid "Takes {nargs} values but 1 was given."
141
+ msgid_plural "Takes {nargs} values but {len} were given."
142
+ msgstr[0] ""
143
+ msgstr[1] ""
144
+
145
+ #: venv/lib/python3.10/site-packages/click/core.py:2423
146
+ #, python-brace-format
147
+ msgid ""
148
+ "DeprecationWarning: The {param_type} {name!r} is "
149
+ "deprecated.{extra_message}"
150
+ msgstr ""
151
+
152
+ #: venv/lib/python3.10/site-packages/click/core.py:2698
153
+ #, python-brace-format
154
+ msgid " (env var: '{var}')"
155
+ msgstr ""
156
+
157
+ #: venv/lib/python3.10/site-packages/click/core.py:2712
158
+ #, python-brace-format
159
+ msgid "Name '{name}' defined twice"
160
+ msgstr ""
161
+
162
+ #: venv/lib/python3.10/site-packages/click/core.py:2728
163
+ #, python-brace-format
164
+ msgid "Boolean option {decl!r} cannot use the same flag for true/false."
165
+ msgstr ""
166
+
167
+ #: venv/lib/python3.10/site-packages/click/core.py:2747
168
+ #, python-brace-format
169
+ msgid "Could not determine name for option with declarations {decls!r}"
170
+ msgstr ""
171
+
172
+ #: venv/lib/python3.10/site-packages/click/core.py:2754
173
+ #, python-brace-format
174
+ msgid ""
175
+ "No options defined but a name was passed ({name}). Did you mean to "
176
+ "declare an argument instead? Did you mean to pass '--{name}'?"
177
+ msgstr ""
178
+
179
+ #: venv/lib/python3.10/site-packages/click/core.py:2831
180
+ #, python-brace-format
181
+ msgid "env var: {var}"
182
+ msgstr ""
183
+
184
+ #: venv/lib/python3.10/site-packages/click/core.py:2834
185
+ #, python-brace-format
186
+ msgid "default: {default}"
187
+ msgstr ""
188
+
189
+ #: venv/lib/python3.10/site-packages/click/core.py:2838
190
+ msgid "required"
191
+ msgstr ""
192
+
193
+ #: venv/lib/python3.10/site-packages/click/core.py:2894
194
+ msgid "(dynamic)"
195
+ msgstr ""
196
+
197
+ #: venv/lib/python3.10/site-packages/click/core.py:3124
198
+ #, python-brace-format
199
+ msgid "Arguments take exactly one parameter declaration, got {length}: {decls}."
200
+ msgstr ""
201
+
202
+ #: venv/lib/python3.10/site-packages/click/decorators.py:97
203
+ #, python-brace-format
204
+ msgid ""
205
+ "Managed to invoke callback without a context object of type {type!r} "
206
+ "existing."
207
+ msgstr ""
208
+
209
+ #: venv/lib/python3.10/site-packages/click/decorators.py:134
210
+ #, python-brace-format
211
+ msgid "the {key!r} key from :attr:`click.Context.meta`"
212
+ msgstr ""
213
+
214
+ #: venv/lib/python3.10/site-packages/click/decorators.py:139
215
+ #, python-brace-format
216
+ msgid ""
217
+ "Decorator that passes {description} as the first argument to the "
218
+ "decorated function."
219
+ msgstr ""
220
+
221
+ #: venv/lib/python3.10/site-packages/click/decorators.py:477
222
+ #, python-format
223
+ msgid "%(prog)s, version %(version)s"
224
+ msgstr ""
225
+
226
+ #: venv/lib/python3.10/site-packages/click/decorators.py:514
227
+ #, python-brace-format
228
+ msgid "{name!r} is not installed. Try passing 'package_name' instead."
229
+ msgstr ""
230
+
231
+ #: venv/lib/python3.10/site-packages/click/decorators.py:521
232
+ #, python-brace-format
233
+ msgid "Could not determine the version for {name!r} automatically."
234
+ msgstr ""
235
+
236
+ #: venv/lib/python3.10/site-packages/click/decorators.py:538
237
+ msgid "Show the version and exit."
238
+ msgstr ""
239
+
240
+ #: venv/lib/python3.10/site-packages/click/decorators.py:564
241
+ msgid "Show this message and exit."
242
+ msgstr ""
243
+
244
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:50
245
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:89
246
+ #, python-brace-format
247
+ msgid "Error: {message}"
248
+ msgstr ""
249
+
250
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:81
251
+ #, python-brace-format
252
+ msgid "Try '{command} {option}' for help."
253
+ msgstr ""
254
+
255
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:130
256
+ #, python-brace-format
257
+ msgid "Invalid value: {message}"
258
+ msgstr ""
259
+
260
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:132
261
+ #, python-brace-format
262
+ msgid "Invalid value for {param_hint}: {message}"
263
+ msgstr ""
264
+
265
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:190
266
+ msgid "Missing argument"
267
+ msgstr ""
268
+
269
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:192
270
+ msgid "Missing option"
271
+ msgstr ""
272
+
273
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:194
274
+ msgid "Missing parameter"
275
+ msgstr ""
276
+
277
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:196
278
+ #, python-brace-format
279
+ msgid "Missing {param_type}"
280
+ msgstr ""
281
+
282
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:203
283
+ #, python-brace-format
284
+ msgid "Missing parameter: {param_name}"
285
+ msgstr ""
286
+
287
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:223
288
+ #, python-brace-format
289
+ msgid "No such option: {name}"
290
+ msgstr ""
291
+
292
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:235
293
+ #, python-brace-format
294
+ msgid "Did you mean {possibility}?"
295
+ msgid_plural "(Possible options: {possibilities})"
296
+ msgstr[0] ""
297
+ msgstr[1] ""
298
+
299
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:282
300
+ msgid "unknown error"
301
+ msgstr ""
302
+
303
+ #: venv/lib/python3.10/site-packages/click/exceptions.py:289
304
+ #, python-brace-format
305
+ msgid "Could not open file {filename!r}: {message}"
306
+ msgstr ""
307
+
308
+ #: venv/lib/python3.10/site-packages/click/formatting.py:156
309
+ msgid "Usage:"
310
+ msgstr ""
311
+
312
+ #: venv/lib/python3.10/site-packages/click/parser.py:154
313
+ #, python-brace-format
314
+ msgid "Invalid start character for option ({option})"
315
+ msgstr ""
316
+
317
+ #: venv/lib/python3.10/site-packages/click/parser.py:190
318
+ #, python-brace-format
319
+ msgid "unknown action '{action}'"
320
+ msgstr ""
321
+
322
+ #: venv/lib/python3.10/site-packages/click/parser.py:212
323
+ #, python-brace-format
324
+ msgid "Argument {name!r} takes {nargs} values."
325
+ msgstr ""
326
+
327
+ #: venv/lib/python3.10/site-packages/click/parser.py:395
328
+ #, python-brace-format
329
+ msgid "Option {name!r} does not take a value."
330
+ msgstr ""
331
+
332
+ #: venv/lib/python3.10/site-packages/click/parser.py:456
333
+ #, python-brace-format
334
+ msgid "Option {name!r} requires an argument."
335
+ msgid_plural "Option {name!r} requires {nargs} arguments."
336
+ msgstr[0] ""
337
+ msgstr[1] ""
338
+
339
+ #: venv/lib/python3.10/site-packages/click/parser.py:527
340
+ #, python-brace-format
341
+ msgid ""
342
+ "'parser.{name}' is deprecated and will be removed in Click 9.0. The old "
343
+ "parser is available in 'optparse'."
344
+ msgstr ""
345
+
346
+ #: venv/lib/python3.10/site-packages/click/parser.py:540
347
+ msgid ""
348
+ "Importing 'parser.split_arg_string' is deprecated, it will only be "
349
+ "available in 'shell_completion' in Click 9.0."
350
+ msgstr ""
351
+
352
+ #: venv/lib/python3.10/site-packages/click/shell_completion.py:326
353
+ msgid "Shell completion is not supported for Bash versions older than 4.4."
354
+ msgstr ""
355
+
356
+ #: venv/lib/python3.10/site-packages/click/shell_completion.py:333
357
+ msgid "Couldn't detect Bash version, shell completion is not supported."
358
+ msgstr ""
359
+
360
+ #: venv/lib/python3.10/site-packages/click/termui.py:162
361
+ msgid "Repeat for confirmation"
362
+ msgstr ""
363
+
364
+ #: venv/lib/python3.10/site-packages/click/termui.py:178
365
+ msgid "Error: The value you entered was invalid."
366
+ msgstr ""
367
+
368
+ #: venv/lib/python3.10/site-packages/click/termui.py:180
369
+ #, python-brace-format
370
+ msgid "Error: {e.message}"
371
+ msgstr ""
372
+
373
+ #: venv/lib/python3.10/site-packages/click/termui.py:191
374
+ msgid "Error: The two entered values do not match."
375
+ msgstr ""
376
+
377
+ #: venv/lib/python3.10/site-packages/click/termui.py:247
378
+ msgid "Error: invalid input"
379
+ msgstr ""
380
+
381
+ #: venv/lib/python3.10/site-packages/click/termui.py:611
382
+ #: venv/lib/python3.10/site-packages/click/termui.py:617
383
+ #, python-brace-format
384
+ msgid "Unknown color {colour!r}"
385
+ msgstr ""
386
+
387
+ #: venv/lib/python3.10/site-packages/click/termui.py:866
388
+ msgid "Press any key to continue..."
389
+ msgstr ""
390
+
391
+ #: venv/lib/python3.10/site-packages/click/types.py:340
392
+ #, python-brace-format
393
+ msgid ""
394
+ "Choose from:\n"
395
+ "\t{choices}"
396
+ msgstr ""
397
+
398
+ #: venv/lib/python3.10/site-packages/click/types.py:377
399
+ #, python-brace-format
400
+ msgid "{value!r} is not {choice}."
401
+ msgid_plural "{value!r} is not one of {choices}."
402
+ msgstr[0] ""
403
+ msgstr[1] ""
404
+
405
+ #: venv/lib/python3.10/site-packages/click/types.py:383
406
+ #, python-brace-format
407
+ msgid "Choice({choices})"
408
+ msgstr ""
409
+
410
+ #: venv/lib/python3.10/site-packages/click/types.py:468
411
+ #, python-brace-format
412
+ msgid "{value!r} does not match the format {format}."
413
+ msgid_plural "{value!r} does not match the formats {formats}."
414
+ msgstr[0] ""
415
+ msgstr[1] ""
416
+
417
+ #: venv/lib/python3.10/site-packages/click/types.py:490
418
+ #, python-brace-format
419
+ msgid "{value!r} is not a valid {number_type}."
420
+ msgstr ""
421
+
422
+ #: venv/lib/python3.10/site-packages/click/types.py:546
423
+ #, python-brace-format
424
+ msgid "{value} is not in the range {range}."
425
+ msgstr ""
426
+
427
+ #: venv/lib/python3.10/site-packages/click/types.py:687
428
+ #, python-brace-format
429
+ msgid "{value!r} is not a valid boolean."
430
+ msgstr ""
431
+
432
+ #: venv/lib/python3.10/site-packages/click/types.py:711
433
+ #, python-brace-format
434
+ msgid "{value!r} is not a valid UUID."
435
+ msgstr ""
436
+
437
+ #: venv/lib/python3.10/site-packages/click/types.py:905
438
+ msgid "file"
439
+ msgstr ""
440
+
441
+ #: venv/lib/python3.10/site-packages/click/types.py:907
442
+ msgid "directory"
443
+ msgstr ""
444
+
445
+ #: venv/lib/python3.10/site-packages/click/types.py:909
446
+ msgid "path"
447
+ msgstr ""
448
+
449
+ #: venv/lib/python3.10/site-packages/click/types.py:956
450
+ #, python-brace-format
451
+ msgid "{name} {filename!r} does not exist."
452
+ msgstr ""
453
+
454
+ #: venv/lib/python3.10/site-packages/click/types.py:965
455
+ #, python-brace-format
456
+ msgid "{name} {filename!r} is a file."
457
+ msgstr ""
458
+
459
+ #: venv/lib/python3.10/site-packages/click/types.py:973
460
+ #, python-brace-format
461
+ msgid "{name} {filename!r} is a directory."
462
+ msgstr ""
463
+
464
+ #: venv/lib/python3.10/site-packages/click/types.py:982
465
+ #, python-brace-format
466
+ msgid "{name} {filename!r} is not readable."
467
+ msgstr ""
468
+
469
+ #: venv/lib/python3.10/site-packages/click/types.py:991
470
+ #, python-brace-format
471
+ msgid "{name} {filename!r} is not writable."
472
+ msgstr ""
473
+
474
+ #: venv/lib/python3.10/site-packages/click/types.py:1000
475
+ #, python-brace-format
476
+ msgid "{name} {filename!r} is not executable."
477
+ msgstr ""
478
+
479
+ #: venv/lib/python3.10/site-packages/click/types.py:1067
480
+ #, python-brace-format
481
+ msgid "{len_type} values are required, but {len_value} was given."
482
+ msgid_plural "{len_type} values are required, but {len_value} were given."
483
+ msgstr[0] ""
484
+ msgstr[1] ""
485
+
486
+ #: venv/lib/python3.10/site-packages/click/types.py:1130
487
+ #, python-brace-format
488
+ msgid "Attempted to use an uninstantiated parameter type ({type})."
489
+ msgstr ""
490
+
491
+ #: venv/lib/python3.10/site-packages/click/utils.py:342
492
+ #: venv/lib/python3.10/site-packages/click/utils.py:363
493
+ #, python-brace-format
494
+ msgid "Unknown standard stream '{name}'"
495
+ msgstr ""
496
+
artefacts/cli/other.py CHANGED
@@ -23,6 +23,7 @@ def run_other_tests(run):
23
23
  if "params" in scenario:
24
24
  generate_parameter_output(scenario["params"])
25
25
  full_env = {**os.environ, **scenario.get("params", {})}
26
+ full_env["ARTEFACTS_SCENARIO_PARAMS_FILE"] = TMP_SCENARIO_PARAMS_YAML
26
27
 
27
28
  command = scenario["run"]
28
29
  run_and_save_logs(
artefacts/cli/ros1.py CHANGED
@@ -4,6 +4,7 @@ from glob import glob
4
4
  import os
5
5
  import logging
6
6
 
7
+ from .i18n import localise
7
8
  from .utils import run_and_save_logs
8
9
  from .utils_ros import parse_tests_results
9
10
  from .parameters import TMP_RUNTIME_PARAMS_YAML, TMP_SCENARIO_PARAMS_YAML
@@ -50,7 +51,9 @@ def generate_rosbag_args(scenario: dict) -> str:
50
51
  return topics
51
52
  else:
52
53
  logging.warning(
53
- "[warning in generate_rosbag_args] rosbag_record asks for 'subscriptions' but they are not specified. Falling back to default: no rosbag will be recorded"
54
+ localise(
55
+ "[warning in generate_rosbag_args] rosbag_record asks for 'subscriptions' but they are not specified. Falling back to default: no rosbag will be recorded"
56
+ )
54
57
  )
55
58
  return "none"
56
59
  else:
@@ -101,10 +104,20 @@ def get_result_path(scenario, PKGDIR, PACKAGE):
101
104
  )
102
105
  return test_result_file_path
103
106
  except Exception as e:
104
- logging.error(f"[Exception in get_result_path()] {e}")
105
107
  logging.error(
106
- f"Unable to parse the ros1 .launch specified ({scenario['ros_testfile']}) and the <test> tag within to find the unittest test method's name.",
107
- "Please ensure all ROS and unittest naming conventions are respected. Exiting..",
108
+ localise("[Exception in get_result_path()] {message}".format(message=e))
109
+ )
110
+ logging.error(
111
+ localise(
112
+ "Unable to parse the ros1 .launch specified ({testfile}) and the <test> tag within to find the unittest test method's name.".format(
113
+ testfile=scenario["ros_testfile"]
114
+ )
115
+ )
116
+ )
117
+ logging.error(
118
+ localise(
119
+ "Please ensure all ROS and unittest naming conventions are respected. Exiting.."
120
+ )
108
121
  )
109
122
  return None
110
123
 
@@ -210,12 +223,14 @@ def run_ros1_tests(run):
210
223
  new_rosbags = set(rosbags).difference(set(preexisting_rosbags))
211
224
  if len(new_rosbags) > 0:
212
225
  new_rosbag = new_rosbags.pop()
213
- logging.info(f"new rosbag found: {new_rosbag}")
226
+ logging.info(
227
+ localise("New rosbag found: {file_name}".format(file_name=new_rosbag))
228
+ )
214
229
  # upload rosbag to dashboard
215
230
  run.log_single_artifact(new_rosbag, "rosbag")
216
231
  # perform any post processing, using the rosbag
217
232
  if "rosbag_postprocess" in scenario.keys():
218
- logging.info("starting rosbag postprocess")
233
+ logging.info(localise("starting rosbag postprocess"))
219
234
  post_process_folder = os.path.expanduser(f"{PKGDIR}/{PACKAGE}_postprocess")
220
235
  os.makedirs(post_process_folder, exist_ok=True)
221
236
  existing_files = glob(f"{post_process_folder}/*")
artefacts/cli/ros2.py CHANGED
@@ -1,7 +1,10 @@
1
- import yaml
2
1
  from glob import glob
3
2
  import os
4
3
  import shutil
4
+
5
+ import yaml
6
+
7
+ from .i18n import localise
5
8
  from .utils import run_and_save_logs
6
9
  from .utils_ros import parse_tests_results, get_TestSuite_error_result
7
10
  from .parameters import TMP_SCENARIO_PARAMS_YAML
@@ -65,7 +68,11 @@ def generate_scenario_parameter_output(params: dict, param_file: str):
65
68
  try:
66
69
  node, pname = k.split("/")
67
70
  except Exception:
68
- print("ensure params are in the format `{node_name}/{param_name}`")
71
+ print(
72
+ localise(
73
+ "Problem with parameter name. Please ensure params are in the format `node/param`"
74
+ )
75
+ )
69
76
  return
70
77
  if node not in content:
71
78
  content[node] = {"ros__parameters": {}}
@@ -128,7 +135,7 @@ def run_ros2_tests(run):
128
135
  },
129
136
  output_path=os.path.join(run.output_path, "test_process_log.txt"),
130
137
  )
131
- except Launch_test_CmdNotFoundError as e:
138
+ except Launch_test_CmdNotFoundError:
132
139
  # raise Exception(
133
140
  # f"Running {scenario['ros_testfile']} failed. Please check that the launch file exists."
134
141
  # )
artefacts/cli/utils.py CHANGED
@@ -8,7 +8,7 @@ import click
8
8
 
9
9
  import artefacts_copava as copava
10
10
  from artefacts import ARTEFACTS_DEFAULT_OUTPUT_DIR
11
- from artefacts.cli import WarpRun
11
+ from artefacts.cli import WarpRun, localise
12
12
 
13
13
 
14
14
  def run_and_save_logs(
@@ -74,13 +74,17 @@ def ensure_available(package: str) -> None:
74
74
  def read_config(filename: str) -> dict:
75
75
  try:
76
76
  with open(filename) as f:
77
- return copava.parse(f.read())
77
+ return copava.parse(f.read()) or {}
78
78
  except FileNotFoundError:
79
- raise click.ClickException(f"Project config file {filename} not found.")
79
+ raise click.ClickException(
80
+ localise(
81
+ "Project config file {file_name} not found.".format(file_name=filename)
82
+ )
83
+ )
80
84
 
81
85
 
82
86
  # Click callback syntax
83
- def config_validation(context: dict, param: str, value: str) -> str:
87
+ def config_validation(context: click.Context, param: str, value: str) -> str:
84
88
  if context.params.get("skip_validation", False):
85
89
  return value
86
90
  config = read_config(value)