Skip to content

Commit 0344508

Browse files
update integration tests output
1 parent 003288d commit 0344508

15 files changed

Lines changed: 794 additions & 225 deletions

File tree

tests_integration/agents/run_agents.py

Lines changed: 50 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,34 +7,49 @@
77
from pathlib import Path
88

99

10-
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding="utf-8")
10+
try:
11+
sys.stdout.reconfigure(encoding="utf-8")
12+
except AttributeError:
13+
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding="utf-8", write_through=True)
1114

1215

13-
def run_scripts(pass_local: bool = True) -> int:
16+
17+
def run_scripts(pass_local: bool = True, collect: bool = False):
1418
"""Run all example scripts in this directory.
1519
1620
Args:
1721
pass_local: If True, skip tests with 'ollama' or 'local' in their name.
22+
collect: If True, return per-script results without printing.
1823
1924
Returns:
20-
Exit code (0 for success, 1 for failure).
25+
List of per-script results if collect is True, otherwise exit code (0 for success, 1 for failure).
2126
"""
2227
python_executable = sys.executable
2328
current_directory = Path(__file__).parent
2429

2530
# Find all example files
2631
example_files = sorted(current_directory.glob("*_example.py"))
2732

28-
passed_scripts = []
29-
failed_scripts = {}
33+
results = []
3034

3135
for file in example_files:
3236
filename = file.name
3337
if pass_local and ("ollama" in filename or "_local" in filename):
34-
print(f"Skipping {filename} (local test)")
38+
message = f"Skipping {filename} (local test)"
39+
if not collect:
40+
print(message)
41+
results.append(
42+
{
43+
"name": filename,
44+
"status": "skipped",
45+
"output": "",
46+
"error": message,
47+
}
48+
)
3549
continue
3650

37-
print(f"Running {filename}...")
51+
if not collect:
52+
print(f"Running {filename}...")
3853
try:
3954
result = subprocess.run(
4055
[python_executable, str(file)],
@@ -43,23 +58,44 @@ def run_scripts(pass_local: bool = True) -> int:
4358
check=True,
4459
cwd=current_directory,
4560
)
46-
print(f"Output of {filename}:\n{result.stdout}")
47-
passed_scripts.append(filename)
61+
if not collect:
62+
print(f"Output of {filename}:\n{result.stdout}")
63+
results.append(
64+
{
65+
"name": filename,
66+
"status": "passed",
67+
"output": result.stdout,
68+
"error": "",
69+
}
70+
)
4871
except subprocess.CalledProcessError as e:
49-
print(f"Error running {filename}:\n{e.stderr}")
50-
failed_scripts[filename] = e.stderr
72+
if not collect:
73+
print(f"Error running {filename}:\n{e.stderr}")
74+
results.append(
75+
{
76+
"name": filename,
77+
"status": "failed",
78+
"output": e.stdout,
79+
"error": e.stderr,
80+
}
81+
)
82+
83+
if collect:
84+
return results
85+
86+
passed_scripts = [r for r in results if r["status"] == "passed"]
87+
failed_scripts = [r for r in results if r["status"] == "failed"]
5188

52-
# Summary
5389
print("\n" + "=" * 50)
5490
print("Summary:")
5591
print(f"Passed: {len(passed_scripts)}")
5692
for script in passed_scripts:
57-
print(f" ✓ {script}")
93+
print(f" ✓ {script['name']}")
5894

5995
if failed_scripts:
6096
print(f"\nFailed: {len(failed_scripts)}")
6197
for script in failed_scripts:
62-
print(f" ✗ {script}")
98+
print(f" ✗ {script['name']}")
6399
return 1
64100

65101
return 0

tests_integration/embedding_assistant/run_embedding_assistant.py

Lines changed: 50 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,34 +7,49 @@
77
from pathlib import Path
88

99

10-
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding="utf-8")
10+
try:
11+
sys.stdout.reconfigure(encoding="utf-8")
12+
except AttributeError:
13+
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding="utf-8", write_through=True)
1114

1215

13-
def run_scripts(pass_local: bool = True) -> int:
16+
17+
def run_scripts(pass_local: bool = True, collect: bool = False):
1418
"""Run all example scripts in this directory.
1519
1620
Args:
1721
pass_local: If True, skip tests with 'ollama' or 'local' in their name.
22+
collect: If True, return per-script results without printing.
1823
1924
Returns:
20-
Exit code (0 for success, 1 for failure).
25+
List of per-script results if collect is True, otherwise exit code (0 for success, 1 for failure).
2126
"""
2227
python_executable = sys.executable
2328
current_directory = Path(__file__).parent
2429

2530
# Find all example files
2631
example_files = sorted(current_directory.glob("*_example.py"))
2732

28-
passed_scripts = []
29-
failed_scripts = {}
33+
results = []
3034

3135
for file in example_files:
3236
filename = file.name
3337
if pass_local and ("ollama" in filename or "_local" in filename):
34-
print(f"Skipping {filename} (local test)")
38+
message = f"Skipping {filename} (local test)"
39+
if not collect:
40+
print(message)
41+
results.append(
42+
{
43+
"name": filename,
44+
"status": "skipped",
45+
"output": "",
46+
"error": message,
47+
}
48+
)
3549
continue
3650

37-
print(f"Running {filename}...")
51+
if not collect:
52+
print(f"Running {filename}...")
3853
try:
3954
result = subprocess.run(
4055
[python_executable, str(file)],
@@ -43,23 +58,44 @@ def run_scripts(pass_local: bool = True) -> int:
4358
check=True,
4459
cwd=current_directory,
4560
)
46-
print(f"Output of {filename}:\n{result.stdout}")
47-
passed_scripts.append(filename)
61+
if not collect:
62+
print(f"Output of {filename}:\n{result.stdout}")
63+
results.append(
64+
{
65+
"name": filename,
66+
"status": "passed",
67+
"output": result.stdout,
68+
"error": "",
69+
}
70+
)
4871
except subprocess.CalledProcessError as e:
49-
print(f"Error running {filename}:\n{e.stderr}")
50-
failed_scripts[filename] = e.stderr
72+
if not collect:
73+
print(f"Error running {filename}:\n{e.stderr}")
74+
results.append(
75+
{
76+
"name": filename,
77+
"status": "failed",
78+
"output": e.stdout,
79+
"error": e.stderr,
80+
}
81+
)
82+
83+
if collect:
84+
return results
85+
86+
passed_scripts = [r for r in results if r["status"] == "passed"]
87+
failed_scripts = [r for r in results if r["status"] == "failed"]
5188

52-
# Summary
5389
print("\n" + "=" * 50)
5490
print("Summary:")
5591
print(f"Passed: {len(passed_scripts)}")
5692
for script in passed_scripts:
57-
print(f" ✓ {script}")
93+
print(f" ✓ {script['name']}")
5894

5995
if failed_scripts:
6096
print(f"\nFailed: {len(failed_scripts)}")
6197
for script in failed_scripts:
62-
print(f" ✗ {script}")
98+
print(f" ✗ {script['name']}")
6399
return 1
64100

65101
return 0

tests_integration/event_store_postgres/run_event_store_postgres.py

Lines changed: 50 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,34 +7,49 @@
77
from pathlib import Path
88

99

10-
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding="utf-8")
10+
try:
11+
sys.stdout.reconfigure(encoding="utf-8")
12+
except AttributeError:
13+
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding="utf-8", write_through=True)
1114

1215

13-
def run_scripts(pass_local: bool = True) -> int:
16+
17+
def run_scripts(pass_local: bool = True, collect: bool = False):
1418
"""Run all example scripts in this directory.
1519
1620
Args:
1721
pass_local: If True, skip tests with 'ollama' or 'local' in their name.
22+
collect: If True, return per-script results without printing.
1823
1924
Returns:
20-
Exit code (0 for success, 1 for failure).
25+
List of per-script results if collect is True, otherwise exit code (0 for success, 1 for failure).
2126
"""
2227
python_executable = sys.executable
2328
current_directory = Path(__file__).parent
2429

2530
# Find all example files
2631
example_files = sorted(current_directory.glob("*_example.py"))
2732

28-
passed_scripts = []
29-
failed_scripts = {}
33+
results = []
3034

3135
for file in example_files:
3236
filename = file.name
3337
if pass_local and ("ollama" in filename or "_local" in filename):
34-
print(f"Skipping {filename} (local test)")
38+
message = f"Skipping {filename} (local test)"
39+
if not collect:
40+
print(message)
41+
results.append(
42+
{
43+
"name": filename,
44+
"status": "skipped",
45+
"output": "",
46+
"error": message,
47+
}
48+
)
3549
continue
3650

37-
print(f"Running {filename}...")
51+
if not collect:
52+
print(f"Running {filename}...")
3853
try:
3954
result = subprocess.run(
4055
[python_executable, str(file)],
@@ -43,23 +58,44 @@ def run_scripts(pass_local: bool = True) -> int:
4358
check=True,
4459
cwd=current_directory,
4560
)
46-
print(f"Output of {filename}:\n{result.stdout}")
47-
passed_scripts.append(filename)
61+
if not collect:
62+
print(f"Output of {filename}:\n{result.stdout}")
63+
results.append(
64+
{
65+
"name": filename,
66+
"status": "passed",
67+
"output": result.stdout,
68+
"error": "",
69+
}
70+
)
4871
except subprocess.CalledProcessError as e:
49-
print(f"Error running {filename}:\n{e.stderr}")
50-
failed_scripts[filename] = e.stderr
72+
if not collect:
73+
print(f"Error running {filename}:\n{e.stderr}")
74+
results.append(
75+
{
76+
"name": filename,
77+
"status": "failed",
78+
"output": e.stdout,
79+
"error": e.stderr,
80+
}
81+
)
82+
83+
if collect:
84+
return results
85+
86+
passed_scripts = [r for r in results if r["status"] == "passed"]
87+
failed_scripts = [r for r in results if r["status"] == "failed"]
5188

52-
# Summary
5389
print("\n" + "=" * 50)
5490
print("Summary:")
5591
print(f"Passed: {len(passed_scripts)}")
5692
for script in passed_scripts:
57-
print(f" ✓ {script}")
93+
print(f" ✓ {script['name']}")
5894

5995
if failed_scripts:
6096
print(f"\nFailed: {len(failed_scripts)}")
6197
for script in failed_scripts:
62-
print(f" ✗ {script}")
98+
print(f" ✗ {script['name']}")
6399
return 1
64100

65101
return 0

0 commit comments

Comments
 (0)