diff --git a/src/__tests__/PhabricatorInfrastructureTestCase.php b/src/__tests__/PhabricatorInfrastructureTestCase.php --- a/src/__tests__/PhabricatorInfrastructureTestCase.php +++ b/src/__tests__/PhabricatorInfrastructureTestCase.php @@ -1,7 +1,6 @@ assertTrue(true); } + /** + * This is more of an acceptance test case instead of a unit test. It verifies + * that all the library map is up-to-date. + */ + public function testLibraryMap() { + $root = phutil_get_library_root('phabricator'); + + $new_library_map = id(new PhutilLibraryMapBuilder($root)) + ->setQuiet(true) + ->setDryRun(true) + ->buildMap(); + + $bootloader = PhutilBootloader::getInstance(); + $old_library_map = $bootloader->getLibraryMap('phabricator'); + unset($old_library_map[PhutilLibraryMapBuilder::LIBRARY_MAP_VERSION_KEY]); + + $this->assertEqual( + $new_library_map, + $old_library_map, + 'The library map does not appear to be up-to-date. Try '. + 'rebuilding the map with `arc liberate`.'); + } + public function testApplicationsInstalled() { $all = PhabricatorApplication::getAllApplications(); $installed = PhabricatorApplication::getAllInstalledApplications();