diff --git a/setup.py b/setup.py
index 94a18ea..3dd2bd6 100644
--- a/setup.py
+++ b/setup.py
@@ -224,44 +224,35 @@
                         "free command or option.")
 
 
-class DummyCFFIBuild(CFFIBuild):
+class DummyCFFIBuild(build):
     """
     This class makes it very obvious when ``keywords_with_side_effects()`` has
     incorrectly interpreted the command line arguments to ``setup.py build`` as
     one of the 'side effect free' commands or options.
     """
 
-    def finalize_options(self):
-        build.finalize_options(self)
-
     def run(self):
         raise RuntimeError(setup_requires_error)
 
 
-class DummyCFFIInstall(CFFIInstall):
+class DummyCFFIInstall(install):
     """
     This class makes it very obvious when ``keywords_with_side_effects()`` has
     incorrectly interpreted the command line arguments to ``setup.py install``
     as one of the 'side effect free' commands or options.
     """
 
-    def finalize_options(self):
-        install.finalize_options(self)
-
     def run(self):
         raise RuntimeError(setup_requires_error)
 
 
-class DummyPyTest(PyTest):
+class DummyPyTest(test):
     """
     This class makes it very obvious when ``keywords_with_side_effects()`` has
     incorrectly interpreted the command line arguments to ``setup.py test`` as
     one of the 'side effect free' commands or options.
     """
 
-    def finalize_options(self):
-        test.finalize_options(self)
-
     def run_tests(self):
         raise RuntimeError(setup_requires_error)
 
