Index: tests/gclient_test.py |
diff --git a/tests/gclient_test.py b/tests/gclient_test.py |
index c136dc2711f1c124143929874b97193576a8289f..0a5da250ff536ad6964bf0c99d70e9ae5bb922ea 100755 |
--- a/tests/gclient_test.py |
+++ b/tests/gclient_test.py |
@@ -88,6 +88,8 @@ class GclientTest(trial_dir.TestCase): |
# fetched until 'src' is done. |
# jobs is the number of parallel jobs simulated. reverse is to reshuffle the |
# list to see if it is still processed in order correctly. |
+ # Also test that a From() dependency that should not be processed is listed |
+ # as a requirement. |
parser = gclient.Parser() |
options, args = parser.parse_args(['--jobs', jobs]) |
write( |
@@ -101,9 +103,11 @@ class GclientTest(trial_dir.TestCase): |
os.path.join('foo', 'DEPS'), |
'deps = {\n' |
' "foo/dir1": "/dir1",\n' |
+ # This one will depend on dir1/dir2 in bar. |
' "foo/dir1/dir2/dir3": "/dir1/dir2/dir3",\n' |
- ' "foo/dir1/dir4": "/dir1/dir4",\n' |
' "foo/dir1/dir2/dir3/dir4": "/dir1/dir2/dir3/dir4",\n' |
+ ' "foo/dir1/dir2/dir5/dir6":\n' |
+ ' From("foo/dir1/dir2/dir3/dir4", "foo/dir1/dir2"),\n' |
'}') |
write( |
os.path.join('bar', 'DEPS'), |
@@ -114,6 +118,14 @@ class GclientTest(trial_dir.TestCase): |
os.path.join('bar/empty', 'DEPS'), |
'deps = {\n' |
'}') |
+ # Test From() |
+ write( |
+ os.path.join('foo/dir1/dir2/dir3/dir4', 'DEPS'), |
+ 'deps = {\n' |
+ # This one should not be fetched or set as a requirement. |
+ ' "foo/dir1/dir2/dir5": "svn://example.com/x",\n' |
+ ' "foo/dir1/dir2": "/dir1/another",\n' |
+ '}') |
obj = gclient.GClient.LoadCurrentConfig(options) |
self._check_requirements(obj.dependencies[0], {}) |
@@ -139,9 +151,10 @@ class GclientTest(trial_dir.TestCase): |
self.assertEquals( |
[ |
'svn://example.com/foo/dir1', |
- 'svn://example.com/foo/dir1/dir4', |
'svn://example.com/foo/dir1/dir2/dir3', |
'svn://example.com/foo/dir1/dir2/dir3/dir4', |
+ # TODO(maruel): This is probably wrong. |
+ 'svn://example.com/foo/dir1/dir2/dir3/dir4/dir1/another', |
], |
actual) |
self._check_requirements( |
@@ -151,7 +164,8 @@ class GclientTest(trial_dir.TestCase): |
'foo/dir1/dir2/dir3': ['foo', 'foo/dir1', 'foo/dir1/dir2'], |
'foo/dir1/dir2/dir3/dir4': |
['foo', 'foo/dir1', 'foo/dir1/dir2', 'foo/dir1/dir2/dir3'], |
- 'foo/dir1/dir4': ['foo', 'foo/dir1'], |
+ 'foo/dir1/dir2/dir5/dir6': |
+ ['foo', 'foo/dir1', 'foo/dir1/dir2', 'foo/dir1/dir2/dir3/dir4'], |
}) |
self._check_requirements( |
obj.dependencies[1], |