From 591f2bd4264f41f104d7d2e8e625c992f33202de Mon Sep 17 00:00:00 2001 From: Frando Date: Mon, 12 May 2025 10:04:50 +0200 Subject: [PATCH 1/3] fix: updates for changed transfer example --- netsim/main.py | 7 +++---- netsim/parsing/netsim.py | 4 ++-- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/netsim/main.py b/netsim/main.py index 1be054d..f4b3f99 100644 --- a/netsim/main.py +++ b/netsim/main.py @@ -52,11 +52,10 @@ def parse_node_params(node, prefix, node_params, runner_id): ].strip() break if node["param_parser"] == "iroh_ticket_v2" and line.startswith( - "NodeTicket" + "Ticket with our home relay and direct addresses:" ): - node_params[node_name] = line[ - len("NodeTicket: ") : - ].strip() + next_line = next(f) + node_params[node_name] = next_line break return node_params diff --git a/netsim/parsing/netsim.py b/netsim/parsing/netsim.py index 34ade27..8472287 100644 --- a/netsim/parsing/netsim.py +++ b/netsim/parsing/netsim.py @@ -35,7 +35,7 @@ def parse_iroh_output(lines, size): transfer_lines = [ line for line in lines - if "Transferred" in line and "in" in line and "/s" in line + if ("Transferred" in line or "Received" in line) and "in" in line and "/s" in line ] if not transfer_lines: raise Exception("bad run") @@ -84,7 +84,7 @@ def parse_magic_iroh_client(lines): s["transfer_success"] = ( "true" if any( - "Transferred" in line and "in" in line and "/s" in line for line in lines + "Received" in line and "in" in line and "/s" in line for line in lines ) else "false" ) From 20c643eb081ef4f122758dea3d2affe3aef05351 Mon Sep 17 00:00:00 2001 From: Frando Date: Mon, 12 May 2025 10:31:19 +0200 Subject: [PATCH 2/3] try to fix bytesize parsing --- netsim/parsing/netsim.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/netsim/parsing/netsim.py b/netsim/parsing/netsim.py index 8472287..9fe0e41 100644 --- a/netsim/parsing/netsim.py +++ b/netsim/parsing/netsim.py @@ -1,4 +1,5 @@ import json +import re import os import humanfriendly @@ -51,7 +52,12 @@ def parse_iroh_output(lines, size): def parse_humanized_output(line): """Convert human-readable size to megabits.""" - bytes_size = humanfriendly.parse_size(line.split(", ")[-1], binary=True) + x = re.search("\((.*)\/s", line) + if x is None: + raise Exception("Line does not match bytesize pattern") + + match = x.groups()[0] + bytes_size = humanfriendly.parse_size(match, binary=True) return bytes_size * 8 / 1e6 From 2b66519bedca3bd46e2c530e4f992e839fd7d3c1 Mon Sep 17 00:00:00 2001 From: Asmir Avdicevic Date: Mon, 12 May 2025 12:54:38 +0200 Subject: [PATCH 3/3] fix ticket parsing --- netsim/main.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/netsim/main.py b/netsim/main.py index f4b3f99..0ee2504 100644 --- a/netsim/main.py +++ b/netsim/main.py @@ -55,7 +55,7 @@ def parse_node_params(node, prefix, node_params, runner_id): "Ticket with our home relay and direct addresses:" ): next_line = next(f) - node_params[node_name] = next_line + node_params[node_name] = next_line.strip() break return node_params