diff options
| author | Danilo M. <danix@danix.xyz> | 2026-10-21 10:03:31 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-10-21 10:03:31 +0200 |
| commit | 6b0f67655b40fef221f9c84cfb6c0bcedf34e3bb (patch) | |
| tree | b4f66f2e0f327d9da5c40566518225606a517135 /tests | |
| parent | 8a63cde8346c6ff30dd79cf7862e28ce6dff56fc (diff) | |
| download | sb-builder-6b0f67655b40fef221f9c84cfb6c0bcedf34e3bb.tar.gz sb-builder-6b0f67655b40fef221f9c84cfb6c0bcedf34e3bb.zip | |
Repository, Packages: no stale detail pane; scan survives races
A reload or filter that drops the current row left its pane and link up,
and the link then crashed on current() being None (Packages had the same).
A .txz slackrepo replaces between glob and stat is skipped, and any
exception in the scan thread reaches the stats line instead of leaving it
at loading.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/test_gui.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/tests/test_gui.py b/tests/test_gui.py index 7d0b7dd..a12efdd 100644 --- a/tests/test_gui.py +++ b/tests/test_gui.py @@ -655,6 +655,11 @@ class SmokeTest(unittest.TestCase): tab.link.linkActivated.emit("#") self.assertIs(w.tabs.currentWidget(), w.packages_tab) self.assertEqual(w.packages_tab.query.text(), "foo") + tab.table.setCurrentIndex(tab.proxy.index(0, 0)) + tab.reload() # the reset drops the current row: no stale pane or link + self.wait(lambda: tab.stats.text() != "loading…") + self.assertTrue(tab.link.isHidden()) + self.assertEqual(tab.detail.text(), "") def test_repository_missing(self): w, _remote = self.window() |
