fixeg code
diff --git a/tests/test_rpc.py b/tests/test_rpc.py
new file mode 100644
index 0000000..fd35555
--- /dev/null
+++ b/tests/test_rpc.py
@@ -0,0 +1,38 @@
+import contextlib
+
+from wally import ssh_utils, node, node_interfaces
+
+
+CONNECT_URI = "localhost"
+
+
+@contextlib.contextmanager
+def rpc_conn_ctx(uri):
+    creds = ssh_utils.parse_ssh_uri(uri)
+    rpc_code, modules = node.get_rpc_server_code()
+
+    ssh_conn = node.connect(node_interfaces.NodeInfo(creds, set()))
+    try:
+        rpc_conn = node.setup_rpc(ssh_conn, rpc_code, plugins=modules)
+        try:
+            yield rpc_conn
+        finally:
+            rpc_conn.conn.server.stop()
+            rpc_conn.disconnect()
+    finally:
+        ssh_conn.disconnect()
+
+
+def test_rpc_simple():
+    with rpc_conn_ctx(CONNECT_URI) as conn:
+        names = conn.conn.server.rpc_info()
+        assert 'server.list_modules' in names
+        assert 'server.load_module' in names
+        assert 'server.rpc_info' in names
+        assert 'server.stop' in names
+
+
+def test_rpc_plugins():
+    with rpc_conn_ctx(CONNECT_URI) as conn:
+        print(conn.conn.server.rpc_info())
+        assert conn.conn.fs.file_exists("/")