Skip to content

Commit 7512a3d

Browse files
committed
Addressing Review
1 parent c9b4c29 commit 7512a3d

1 file changed

Lines changed: 21 additions & 1 deletion

File tree

newton/tests/test_viewer_get_frame.py

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,26 @@
1515
from newton._src.viewer.viewer_gl import ViewerGL
1616

1717

18+
def _viewer_gl_unavailable_errors() -> tuple[type[BaseException], ...]:
19+
try:
20+
from pyglet import gl, window
21+
except ImportError:
22+
return ()
23+
24+
errors: list[type[BaseException]] = [
25+
window.NoSuchConfigException,
26+
window.NoSuchDisplayException,
27+
gl.ContextException,
28+
]
29+
try:
30+
from pyglet.display import xlib
31+
except ImportError:
32+
pass
33+
else:
34+
errors.append(xlib.NoSuchDisplayException)
35+
return tuple(errors)
36+
37+
1838
def _make_box_model(device: str | wp.Device):
1939
builder = newton.ModelBuilder()
2040
body = builder.add_body(xform=wp.transform(wp.vec3(0.0, 0.0, 0.0), wp.quat_identity()))
@@ -116,7 +136,7 @@ def test_headless_capture_main_image_frame(self):
116136
"""Verify get_frame captures a main image rendered headlessly."""
117137
try:
118138
viewer = newton.viewer.ViewerGL(width=64, height=48, headless=True)
119-
except Exception as exc:
139+
except _viewer_gl_unavailable_errors() as exc:
120140
self.skipTest(f"ViewerGL not available: {exc}")
121141
return
122142

0 commit comments

Comments
 (0)