diff --git a/test/ganeti.rapi.rlib2_unittest.py b/test/ganeti.rapi.rlib2_unittest.py
index bd323e2eef1bd92fd6feb220c608abe721809011..8c70c3ea0ed60ad999b6d9768f9c312d5e169f08 100755
--- a/test/ganeti.rapi.rlib2_unittest.py
+++ b/test/ganeti.rapi.rlib2_unittest.py
@@ -1472,12 +1472,18 @@ class TestInstanceReplaceDisks(unittest.TestCase):
     self.assertRaises(IndexError, cl.GetNextSubmittedJob)
 
   def testNoDisks(self):
-    self.assertRaises(http.HttpBadRequest, self.Parse, "inst20661", {})
+    clfactory = _FakeClientFactory(_FakeClient)
+
+    handler = _CreateHandler(rlib2.R_2_instances_name_replace_disks,
+                             ["inst20661"], {}, {}, clfactory)
+    self.assertRaises(http.HttpBadRequest, handler.POST)
 
     for disks in [None, "", {}]:
-      self.assertRaises(http.HttpBadRequest, self.Parse, "inst20661", {
+      handler = _CreateHandler(rlib2.R_2_instances_name_replace_disks,
+                               ["inst20661"], {}, {
         "disks": disks,
-        })
+        }, clfactory)
+      self.assertRaises(http.HttpBadRequest, handler.POST)
 
   def testWrong(self):
     clfactory = _FakeClientFactory(_FakeClient)