diff options
author | Bastien Nocera <hadess@hadess.net> | 2021-12-10 14:25:33 +0100 |
---|---|---|
committer | Bastien Nocera <hadess@hadess.net> | 2021-12-10 14:25:33 +0100 |
commit | 34b19876ca695351750ba9703aa962ed6c99c61e (patch) | |
tree | 10d53cbe1b098faae1eb21dc53000d53ad5b08a9 | |
parent | aeacc445dd37d93925530dbfc98a60011f631571 (diff) | |
download | gnome-bluetooth-34b19876ca695351750ba9703aa962ed6c99c61e.tar.gz |
tests: Add test for missing row-changed signal
-rwxr-xr-x | tests/integration-test | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/integration-test b/tests/integration-test index 72b4b8d0..edf42585 100755 --- a/tests/integration-test +++ b/tests/integration-test @@ -60,6 +60,8 @@ class OopTests(dbusmock.DBusTestCase): self.client = GnomeBluetoothPriv.Client.new() # used in test_pairing self.paired = False + # used in test_default_notify + self.default_adapter = None def print_tree(self, model): def print_row(model, treepath, treeiter): @@ -141,6 +143,29 @@ class OopTests(dbusmock.DBusTestCase): self.assertTrue(agent.register()) self.assertTrue(agent.unregister()) + def test_default_notify(self): + model = self.client.get_model() + + def _sync(self, model): + for adapter in model: + default = adapter[GnomeBluetoothPriv.Column.DEFAULT] + powered = adapter[GnomeBluetoothPriv.Column.POWERED] + if default and powered: + self.default_adapter = adapter[GnomeBluetoothPriv.Column.ADDRESS] + break + def row_inserted_cb(model, path, _iter): + _sync(self, model) + def row_deleted_cb(model, path): + _sync(self, model) + def row_changed_cb(model, path, _iter): + _sync(self, model) + model.connect('row-inserted', row_inserted_cb) + model.connect('row-deleted', row_deleted_cb) + model.connect('row-changed', row_changed_cb) + + self.wait_for_mainloop() + self.assertEqual(self.default_adapter, '00:11:22:33:44:55') + class Tests(dbusmock.DBusTestCase): @classmethod @@ -198,5 +223,8 @@ class Tests(dbusmock.DBusTestCase): def test_agent(self): self.run_test_process() + def test_default_notify(self): + self.run_test_process() + if __name__ == '__main__': unittest.main() |