def METHOD_NAME(self, sync):
    _latest_future = None
    a = _TestClass.create(10, sync=sync)
    b = _TestClassDownStream.create(7, sync=sync)
    if not sync:
        assert a.x is None
        assert a._latest_future is not None
        assert b.x is None
        assert b._latest_future is not None
        _latest_future = b._latest_future
    c = b.add_to_input_arg(a, sync=sync)
    if not sync:
        assert b._latest_future is _latest_future
        assert c.x is None
        assert c._latest_future is not None
        assert c is a
        c.wait()
    assert a._latest_future is None
    assert a.x == 17
    assert b._latest_future is None
    assert b.x == 7
    assert c._latest_future is None
    assert c.x == 17
    assert isinstance(a, _TestClass)
    assert isinstance(b, _TestClassDownStream)
    assert isinstance(c, _TestClass)