From a524f0a06b8f75dbb8cfe82bfa67057b1983fa96 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Wed, 26 Jun 2019 22:49:42 +0100 Subject: [PATCH] Display nodes only when there's somewhere to put the display --- packages/server/src/monitor.js | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/server/src/monitor.js b/packages/server/src/monitor.js index 957ac8b..16cddd1 100644 --- a/packages/server/src/monitor.js +++ b/packages/server/src/monitor.js @@ -16,6 +16,8 @@ assertion type OverlayLink(downNode, upNode); assertion type OverlayNode(id); assertion type OverlayRoot(); +assertion type DisplayingNode(nodeDescription); + spawn { const ui = new UI.Anchor(); assert ui.html('body', @@ -86,15 +88,20 @@ spawn { ); + assert DisplayingNode(OverlayRoot()); const nodeName = (n) => { if (OverlayNode.isClassOf(n)) return "node_" + Bytes.from(OverlayNode._id(n)).toHex(); return "root"; }; during FromServer(addr, $item(OverlayLink($down, $up))) { - console.log(down.toString(), '-->', up.toString()); - const ui = new UI.Anchor(); - assert ui.html(`#overlays div.o_${scope} ul.${nodeName(up)}`, -
  • {down.toString()}
  • ); + console.log(down.toString(), 'waiting for', up.toString()); + during DisplayingNode(up) { + console.log(down.toString(), 'sees', up.toString()); + const ui = new UI.Anchor(); + assert ui.html(`#overlays div.o_${scope} ul.${nodeName(up)}`, +
  • {down.toString()}
  • ); + assert DisplayingNode(down); + } } during FromServer(addr, $item(AddressMap(_, _, _))) { const ui = new UI.Anchor();