Merge branch 'ui-2-connection' into ui-3-home

This commit is contained in:
saphid committed 2026-10-01 21:03:13 +10:00
commit fab04f0558
6 files changed
+105 -33

No files matched your search

+14
View File
@@ -296,6 +296,20 @@ class Pins(Base):
class Registry(Base):
def test_an_address_added_first_wins_on_its_own_network(self):
# The page's "Add 192.168.x.x" offer: the headset is reached over Tailscale, which has
# worked here before. The LAN address has to go ahead of it to be used at home.
d = self.reg.add_device("frame-4", hosts=["frame.tail1234.ts.net"])
self.reg.record_success(d["id"], "frame.tail1234.ts.net", "n-home", 6.0)
self.reg.add_address(d["id"], "192.168.1.40", kind="lan", first=True)
self.reg.record_success(d["id"], "192.168.1.40", "n-home", 1.0) # Test now found it
addrs = self.reg.get(d["id"])["addresses"]
self.assertEqual([a["host"] for a in addrs], ["192.168.1.40", "frame.tail1234.ts.net"])
at_home = [a["host"] for a, _ in fd.order_addresses(addrs, "n-home", True)]
self.assertEqual(at_home[0], "192.168.1.40")
away = [a["host"] for a, _ in fd.order_addresses(addrs, "n-cafe", True)]
self.assertEqual(away[0], "frame.tail1234.ts.net") # elsewhere Tailscale still leads
def test_address_editing(self):
d = self.reg.add_device("frame-3", hosts=["192.168.1.40"])
a = self.reg.add_address(d["id"], "frame-3.local", label="mDNS")
+13
View File
@@ -304,6 +304,19 @@ class Connecting(unittest.TestCase):
self.assertEqual(self.link.active_device()["alias"], "frame-bare")
self.assertEqual(self.routes[-1][0], "frame-bare")
def test_devices_view_ranks_addresses_for_the_current_network(self):
# The page offers Use now only on the address a reconnect would pick: rank says which.
d = self.device("frame.tail1234.ts.net")
self.reg.add_address(d["id"], "192.168.1.40", kind="lan", first=True)
self.reg.record_success(d["id"], "frame.tail1234.ts.net", "n-home", 6.0)
self.link.state["network"] = {"id": "n-home", "name": "Home", "tailscale": {"up": True}}
view = next(x for x in fl.devices_view(self.link)["devices"] if x["id"] == d["id"])
self.assertEqual({a["host"]: a["rank"] for a in view["addresses"]},
{"192.168.1.40": 1, "frame.tail1234.ts.net": 0}) # only Tailscale worked here so far
self.reg.record_success(d["id"], "192.168.1.40", "n-home", 1.0)
view = next(x for x in fl.devices_view(self.link)["devices"] if x["id"] == d["id"])
self.assertEqual([a["rank"] for a in view["addresses"]], [0, 1]) # now the user's order decides
def test_removing_the_headset_frame_alias_named_doesnt_bring_it_back_bare(self):
d = self.device("localhost")
self.link.override = self.link.session_alias = "frame-t"