| 287 | |
| 288 | |
| 289 | def create_cli_parser() -> argparse.ArgumentParser: |
| 290 | parser = argparse.ArgumentParser(description="Solidity LSP Test suite") |
| 291 | parser.set_defaults(fail_fast=False) |
| 292 | parser.add_argument( |
| 293 | "-f", "--fail-fast", |
| 294 | dest="fail_fast", |
| 295 | action="store_true", |
| 296 | help="Terminates the running tests on first failure." |
| 297 | ) |
| 298 | parser.set_defaults(non_interactive=False) |
| 299 | parser.add_argument( |
| 300 | "-n", "--non-interactive", |
| 301 | dest="non_interactive", |
| 302 | action="store_true", |
| 303 | help="Prevent interactive queries and just fail instead." |
| 304 | ) |
| 305 | parser.set_defaults(print_solc_pid=False) |
| 306 | parser.add_argument( |
| 307 | "-p", "--print-solc-pid", |
| 308 | dest="print_solc_pid", |
| 309 | action="store_true", |
| 310 | help="Print pid of each started solc for debugging purposes." |
| 311 | ) |
| 312 | parser.set_defaults(trace_io=False) |
| 313 | parser.add_argument( |
| 314 | "-T", "--trace-io", |
| 315 | dest="trace_io", |
| 316 | action="store_true", |
| 317 | help="Be more verbose by also printing assertions." |
| 318 | ) |
| 319 | parser.set_defaults(print_assertions=False) |
| 320 | parser.add_argument( |
| 321 | "-v", "--print-assertions", |
| 322 | dest="print_assertions", |
| 323 | action="store_true", |
| 324 | help="Be more verbose by also printing assertions." |
| 325 | ) |
| 326 | parser.add_argument( |
| 327 | "-t", "--test-pattern", |
| 328 | dest="test_pattern", |
| 329 | type=str, |
| 330 | default="*", |
| 331 | help="Filters all available tests by matching against this test pattern (using globbing)", |
| 332 | nargs="?" |
| 333 | ) |
| 334 | parser.add_argument( |
| 335 | "solc_path", |
| 336 | type=str, |
| 337 | default="solc", |
| 338 | help="Path to solc binary to test against", |
| 339 | nargs="?" |
| 340 | ) |
| 341 | parser.add_argument( |
| 342 | "project_root_dir", |
| 343 | type=str, |
| 344 | default=f"{os.path.dirname(os.path.realpath(__file__))}/..", |
| 345 | help="Path to Solidity project's root directory (must be fully qualified).", |
| 346 | nargs="?" |