@@ -61,19 +61,25 @@ def test_build_x11_window_tracker_ignores_invalid_mode(monkeypatch):
6161def test_build_x11_session_backend_groups_x11_services (monkeypatch ):
6262 windows = MagicMock ()
6363 previews = MagicMock ()
64+ visibility = MagicMock ()
65+ config = MagicMock ()
6466 monkeypatch .setattr (
6567 session , "build_x11_window_tracker" , MagicMock (return_value = windows )
6668 )
6769 monkeypatch .setattr (session , "X11PreviewService" , MagicMock (return_value = previews ))
70+ monkeypatch .setattr (
71+ session , "X11VisibilityService" , MagicMock (return_value = visibility )
72+ )
6873
6974 backend = session .build_x11_session_backend (
70- model = MagicMock (), launcher = MagicMock (), config = MagicMock ()
75+ model = MagicMock (), launcher = MagicMock (), config = config
7176 )
7277
7378 assert backend .name == "x11"
7479 assert backend .display_server is session .DisplayServer .X11
7580 assert backend .windows is windows
7681 assert backend .previews is previews
82+ assert backend .visibility is visibility
7783 assert backend .workspaces is None
7884 assert backend .desktop_actions is None
7985 assert backend .screen_capture is None
@@ -82,16 +88,22 @@ def test_build_x11_session_backend_groups_x11_services(monkeypatch):
8288 assert backend .capabilities .tracks_windows is True
8389 assert backend .capabilities .supports_window_menu is True
8490 assert backend .capabilities .supports_screen_reservation is True
91+ assert backend .capabilities .supports_overlap_active is True
8592 session .X11PreviewService .assert_called_once_with (window_tracker = windows )
93+ session .X11VisibilityService .assert_called_once_with (config = config )
8694
8795
8896def test_x11_session_backend_lifecycle_starts_and_stops_services (monkeypatch ):
8997 windows = MagicMock ()
9098 previews = MagicMock ()
99+ visibility = MagicMock ()
91100 monkeypatch .setattr (
92101 session , "build_x11_window_tracker" , MagicMock (return_value = windows )
93102 )
94103 monkeypatch .setattr (session , "X11PreviewService" , MagicMock (return_value = previews ))
104+ monkeypatch .setattr (
105+ session , "X11VisibilityService" , MagicMock (return_value = visibility )
106+ )
95107 backend = session .X11SessionBackend (
96108 model = MagicMock (), launcher = MagicMock (), config = MagicMock ()
97109 )
@@ -101,23 +113,31 @@ def test_x11_session_backend_lifecycle_starts_and_stops_services(monkeypatch):
101113
102114 windows .start .assert_called_once_with ()
103115 previews .start .assert_called_once_with ()
116+ visibility .start .assert_called_once_with ()
117+ visibility .stop .assert_called_once_with ()
104118 previews .stop .assert_called_once_with ()
105119 windows .stop .assert_called_once_with ()
106120
107121
108122def test_x11_session_backend_allows_legacy_tracker_without_lifecycle (monkeypatch ):
109123 windows = object ()
110124 previews = MagicMock ()
125+ visibility = MagicMock ()
111126 monkeypatch .setattr (
112127 session , "build_x11_window_tracker" , MagicMock (return_value = windows )
113128 )
114129 monkeypatch .setattr (session , "X11PreviewService" , MagicMock (return_value = previews ))
130+ monkeypatch .setattr (
131+ session , "X11VisibilityService" , MagicMock (return_value = visibility )
132+ )
115133 backend = session .X11SessionBackend (
116134 model = MagicMock (), launcher = MagicMock (), config = MagicMock ()
117135 )
118136
119137 backend .start ()
120138 backend .stop ()
121139
140+ visibility .start .assert_called_once_with ()
141+ visibility .stop .assert_called_once_with ()
122142 previews .start .assert_called_once_with ()
123143 previews .stop .assert_called_once_with ()
0 commit comments