Changeset - b788ae5c2251
[Not reviewed]
0 2 0
Christopher Esterhuyse - 5 years ago 2020-02-04 16:35:45
christopheresterhuyse@gmail.com
smaller testg
2 files changed with 50 insertions and 0 deletions:
0 comments (0 inline, 0 general)
src/runtime/actors.rs
Show inline comments
 
@@ -79,9 +79,20 @@ impl PolyP {
 
                    assert!(self.ekeys.contains(&ekey));
 
                    let channel_id =
 
                        r_ctx.m_ctx.inner.endpoint_exts.get(ekey).unwrap().info.channel_id;
 
                    lockprintln!(
 
                        "{:?}: ~ ... {:?} couldnt read msg for port {:?}. has inbox {:?}",
 
                        cid,
 
                        m_ctx.my_subtree_id,
 
                        channel_id,
 
                        &branch.inbox,
 
                    );
 
                    if predicate.replace_assignment(channel_id, true) != Some(false) {
 
                        // don't rerun now. Rerun at next `sync_run`
 

	
 
                        lockprintln!("{:?}: ~ ... Delay {:?}", cid, m_ctx.my_subtree_id,);
 
                        self.incomplete.insert(predicate, branch);
 
                    } else {
 
                        lockprintln!("{:?}: ~ ... Drop {:?}", cid, m_ctx.my_subtree_id,);
 
                    }
 
                    // ELSE DROP
 
                }
src/test/connector.rs
Show inline comments
 
@@ -53,3 +53,42 @@ fn duo(one: String, two: String) {
 
    handle(a.join());
 
    handle(b.join());
 
}
 

	
 
#[test]
 
fn incremental() {
 
    let timeout = Duration::from_millis(1_500);
 
    let addrs = ["127.0.0.1:7010".parse().unwrap(), "127.0.0.1:7011".parse().unwrap()];
 
    let a = thread::spawn(move || {
 
        let mut x = Connector::Unconfigured(Unconfigured { controller_id: 0 });
 
        x.configure(
 
            b"primitive main(out a, out b) {
 
            synchronous {
 
                msg m = create(0);
 
                put(a, m);
 
            }
 
        }",
 
        )
 
        .unwrap();
 
        x.bind_port(0, PortBinding::Passive(addrs[0])).unwrap();
 
        x.bind_port(1, PortBinding::Passive(addrs[1])).unwrap();
 
        x.connect(timeout).unwrap();
 
        assert_eq!(0, x.sync(timeout).unwrap());
 
    });
 
    let b = thread::spawn(move || {
 
        let mut x = Connector::Unconfigured(Unconfigured { controller_id: 1 });
 
        x.configure(
 
            b"primitive main(in a, in b) {
 
            synchronous {
 
                get(a);
 
            }
 
        }",
 
        )
 
        .unwrap();
 
        x.bind_port(0, PortBinding::Active(addrs[0])).unwrap();
 
        x.bind_port(1, PortBinding::Active(addrs[1])).unwrap();
 
        x.connect(timeout).unwrap();
 
        assert_eq!(0, x.sync(timeout).unwrap());
 
    });
 
    handle(a.join());
 
    handle(b.join());
 
}
0 comments (0 inline, 0 general)