/**
  * Pushes a class and template manifest instance that include tests onto the
  * top of the loader stacks.
  */
 public static function use_test_manifest()
 {
     $flush = true;
     if (isset($_GET['flush']) && $_GET['flush'] === '0') {
         $flush = false;
     }
     $classManifest = new ClassManifest(BASE_PATH, true, $flush);
     ClassLoader::instance()->pushManifest($classManifest, false);
     SapphireTest::set_test_class_manifest($classManifest);
     ThemeResourceLoader::instance()->addSet('$default', new ThemeManifest(BASE_PATH, project(), true, $flush));
     Config::inst()->pushConfigStaticManifest(new ConfigStaticManifest(BASE_PATH, true, $flush));
     // Invalidate classname spec since the test manifest will now pull out new subclasses for each internal class
     // (e.g. Member will now have various subclasses of DataObjects that implement TestOnly)
     DataObject::reset();
 }