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();