diff --git a/test/functional/net.py b/test/functional/net.py
index e9463c7dc..a82cdabf5 100755
--- a/test/functional/net.py
+++ b/test/functional/net.py
@@ -7,15 +7,15 @@
 Tests correspond to code in rpc/net.cpp.
 """
 
-from decimal import Decimal
 import time
 
 from test_framework.test_framework import BitcoinTestFramework
-from test_framework.authproxy import JSONRPCException
 from test_framework.util import (
     assert_equal,
-    start_nodes,
+    assert_raises_jsonrpc,
     connect_nodes_bi,
+    p2p_port,
+    start_nodes,
 )
 
 
@@ -33,7 +33,7 @@ class NetTest(BitcoinTestFramework):
 
     def run_test(self):
         assert_equal(self.nodes[0].getnetworkinfo()['networkactive'], True)
-        assert_equal(self.nodes[0].getnetworkinfo()['connections'], 2) # bilateral connection
+        assert_equal(self.nodes[0].getnetworkinfo()['connections'], 2)
 
         self.nodes[0].setnetworkactive(False)
         assert_equal(self.nodes[0].getnetworkinfo()['networkactive'], False)
@@ -49,6 +49,19 @@ class NetTest(BitcoinTestFramework):
         assert_equal(self.nodes[0].getnetworkinfo()['networkactive'], True)
         assert_equal(self.nodes[0].getnetworkinfo()['connections'], 2)
 
+        # test getaddednodeinfo
+        assert_equal(self.nodes[0].getaddednodeinfo(), [])
+        # add a node (node2) to node0
+        ip_port = "127.0.0.1:{}".format(p2p_port(2))
+        self.nodes[0].addnode(ip_port, 'add')
+        # check that the node has indeed been added
+        added_nodes = self.nodes[0].getaddednodeinfo(ip_port)
+        assert_equal(len(added_nodes), 1)
+        assert_equal(added_nodes[0]['addednode'], ip_port)
+        # check that a non-existant node returns an error
+        assert_raises_jsonrpc(-24, "Node has not been added",
+                              self.nodes[0].getaddednodeinfo, '1.1.1.1')
+
 
 if __name__ == '__main__':
     NetTest().main()