Page MenuHomePhabricator

D13185.id32093.diff
No OneTemporary

D13185.id32093.diff

diff --git a/src/unit/engine/PhutilUnitTestEngine.php b/src/unit/engine/PhutilUnitTestEngine.php
--- a/src/unit/engine/PhutilUnitTestEngine.php
+++ b/src/unit/engine/PhutilUnitTestEngine.php
@@ -205,12 +205,12 @@
continue;
}
- do {
- $paths[$library_name.':'.$library_path] = array(
+ foreach (Filesystem::walkToRoot($path, $library_root) as $subpath) {
+ $paths[$library_name.':'.$subpath] = array(
'library' => $library_name,
- 'path' => $library_path.'/__tests__/',
+ 'path' => Filesystem::readablePath($subpath.'/__tests__/', $library_root),
);
- } while (($library_path = dirname($library_path)) != '.');
+ }
}
return $paths;
diff --git a/src/unit/engine/__tests__/PhutilUnitTestEngineTestCase.php b/src/unit/engine/__tests__/PhutilUnitTestEngineTestCase.php
--- a/src/unit/engine/__tests__/PhutilUnitTestEngineTestCase.php
+++ b/src/unit/engine/__tests__/PhutilUnitTestEngineTestCase.php
@@ -142,6 +142,7 @@
dirname(dirname(__FILE__)).'/__tests__/',
dirname(dirname(dirname(__FILE__))).'/__tests__/',
+ phutil_get_library_root('arcanist').'/__tests__/',
),
),
'normal directory' => array(
@@ -151,25 +152,26 @@
array(
dirname(dirname(__FILE__)).'/__tests__/',
dirname(dirname(dirname(__FILE__))).'/__tests__/',
+ phutil_get_library_root('arcanist').'/__tests__/',
),
),
'library root' => array(
- array(phutil_get_library_root()),
- array(phutil_get_library_root().'/__tests__/'),
+ array(phutil_get_library_root('arcanist')),
+ array(phutil_get_library_root('arcanist').'/__tests__/'),
),
);
$test_engine = id(new PhutilUnitTestEngine())
->setWorkingCopy($this->getWorkingCopy());
+ $library = phutil_get_current_library_name();
+ $library_root = phutil_get_library_root($library);
+
foreach ($tests as $name => $test) {
- list($paths, $tests) = $test;
+ list($paths, $test_paths) = $test;
$expected = array();
- foreach ($tests as $path) {
- $library_root = phutil_get_library_root_for_path($path);
- $library = phutil_get_library_name_for_root($library_root);
-
+ foreach ($test_paths as $path) {
$expected[] = array(
'library' => $library,
'path' => Filesystem::readablePath($path, $library_root),

File Metadata

Mime Type
text/plain
Expires
Mon, Apr 21, 6:47 PM (4 d, 6 h ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7707178
Default Alt Text
D13185.id32093.diff (2 KB)

Event Timeline