mirror of
https://chromium.googlesource.com/chromium/tools/depot_tools.git
synced 2026-01-11 18:51:29 +00:00
gclient: Add a command to get revision/variable information.
Introduce a getdep command to get revision/version/variable value information as a counterpart for gclient setdep. It will be useful for autorollers. Bug: 760633 Change-Id: Iabeae0e78c6fbdcb1a3a79cfb380ac2d83f256d5 Reviewed-on: https://chromium-review.googlesource.com/999171 Reviewed-by: Aaron Gable <agable@chromium.org> Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
This commit is contained in:
committed by
Commit Bot
parent
5e79d07891
commit
411041f9be
@@ -236,7 +236,7 @@ class EvaluateConditionTest(unittest.TestCase):
|
||||
str(cm.exception))
|
||||
|
||||
|
||||
class AddVarTest(unittest.TestCase):
|
||||
class VarTest(unittest.TestCase):
|
||||
def assert_adds_var(self, before, after):
|
||||
local_scope = gclient_eval.Exec('\n'.join(before))
|
||||
gclient_eval.AddVar(local_scope, 'baz', 'lemur')
|
||||
@@ -276,7 +276,26 @@ class AddVarTest(unittest.TestCase):
|
||||
'}',
|
||||
]))
|
||||
|
||||
def test_preserves_formatting(self):
|
||||
def test_gets_and_sets_var(self):
|
||||
local_scope = gclient_eval.Exec('\n'.join([
|
||||
'vars = {',
|
||||
' "foo": "bar",',
|
||||
'}',
|
||||
]))
|
||||
|
||||
result = gclient_eval.GetVar(local_scope, 'foo')
|
||||
self.assertEqual(result, "bar")
|
||||
|
||||
gclient_eval.SetVar(local_scope, 'foo', 'baz')
|
||||
result = gclient_eval.RenderDEPSFile(local_scope)
|
||||
|
||||
self.assertEqual(result, '\n'.join([
|
||||
'vars = {',
|
||||
' "foo": "baz",',
|
||||
'}',
|
||||
]))
|
||||
|
||||
def test_add_preserves_formatting(self):
|
||||
before = [
|
||||
'# Copyright stuff',
|
||||
'# some initial comments',
|
||||
@@ -310,25 +329,7 @@ class AddVarTest(unittest.TestCase):
|
||||
]
|
||||
self.assert_adds_var(before, after)
|
||||
|
||||
|
||||
class SetVarTest(unittest.TestCase):
|
||||
def test_sets_var(self):
|
||||
local_scope = gclient_eval.Exec('\n'.join([
|
||||
'vars = {',
|
||||
' "foo": "bar",',
|
||||
'}',
|
||||
]))
|
||||
|
||||
gclient_eval.SetVar(local_scope, 'foo', 'baz')
|
||||
result = gclient_eval.RenderDEPSFile(local_scope)
|
||||
|
||||
self.assertEqual(result, '\n'.join([
|
||||
'vars = {',
|
||||
' "foo": "baz",',
|
||||
'}',
|
||||
]))
|
||||
|
||||
def test_preserves_formatting(self):
|
||||
def test_set_preserves_formatting(self):
|
||||
local_scope = gclient_eval.Exec('\n'.join([
|
||||
'vars = {',
|
||||
' # Comment with trailing space ',
|
||||
@@ -347,8 +348,8 @@ class SetVarTest(unittest.TestCase):
|
||||
]))
|
||||
|
||||
|
||||
class SetCipdTest(unittest.TestCase):
|
||||
def test_sets_cipd(self):
|
||||
class CipdTest(unittest.TestCase):
|
||||
def test_gets_and_sets_cipd(self):
|
||||
local_scope = gclient_eval.Exec('\n'.join([
|
||||
'deps = {',
|
||||
' "src/cipd/package": {',
|
||||
@@ -368,6 +369,10 @@ class SetCipdTest(unittest.TestCase):
|
||||
'}',
|
||||
]))
|
||||
|
||||
result = gclient_eval.GetCIPD(
|
||||
local_scope, 'src/cipd/package', 'another/cipd/package')
|
||||
self.assertEqual(result, '5678')
|
||||
|
||||
gclient_eval.SetCIPD(
|
||||
local_scope, 'src/cipd/package', 'another/cipd/package', '6.789')
|
||||
result = gclient_eval.RenderDEPSFile(local_scope)
|
||||
@@ -392,13 +397,17 @@ class SetCipdTest(unittest.TestCase):
|
||||
]))
|
||||
|
||||
|
||||
class SetRevisionTest(unittest.TestCase):
|
||||
def assert_changes_revision(self, before, after):
|
||||
class RevisionTest(unittest.TestCase):
|
||||
def assert_gets_and_sets_revision(self, before, after, rev_before='deadbeef'):
|
||||
local_scope = gclient_eval.Exec('\n'.join(before))
|
||||
|
||||
result = gclient_eval.GetRevision(local_scope, 'src/dep')
|
||||
self.assertEqual(result, rev_before)
|
||||
|
||||
gclient_eval.SetRevision(local_scope, 'src/dep', 'deadfeed')
|
||||
self.assertEqual('\n'.join(after), gclient_eval.RenderDEPSFile(local_scope))
|
||||
|
||||
def test_sets_revision(self):
|
||||
def test_revision(self):
|
||||
before = [
|
||||
'deps = {',
|
||||
' "src/dep": "https://example.com/dep.git@deadbeef",',
|
||||
@@ -409,9 +418,9 @@ class SetRevisionTest(unittest.TestCase):
|
||||
' "src/dep": "https://example.com/dep.git@deadfeed",',
|
||||
'}',
|
||||
]
|
||||
self.assert_changes_revision(before, after)
|
||||
self.assert_gets_and_sets_revision(before, after)
|
||||
|
||||
def test_sets_revision_new_line(self):
|
||||
def test_revision_new_line(self):
|
||||
before = [
|
||||
'deps = {',
|
||||
' "src/dep": "https://example.com/dep.git@"',
|
||||
@@ -424,9 +433,9 @@ class SetRevisionTest(unittest.TestCase):
|
||||
' + "deadfeed",',
|
||||
'}',
|
||||
]
|
||||
self.assert_changes_revision(before, after)
|
||||
self.assert_gets_and_sets_revision(before, after)
|
||||
|
||||
def test_sets_revision_inside_dict(self):
|
||||
def test_revision_inside_dict(self):
|
||||
before = [
|
||||
'deps = {',
|
||||
' "src/dep": {',
|
||||
@@ -443,7 +452,7 @@ class SetRevisionTest(unittest.TestCase):
|
||||
' },',
|
||||
'}',
|
||||
]
|
||||
self.assert_changes_revision(before, after)
|
||||
self.assert_gets_and_sets_revision(before, after)
|
||||
|
||||
def test_follows_var_braces(self):
|
||||
before = [
|
||||
@@ -462,7 +471,7 @@ class SetRevisionTest(unittest.TestCase):
|
||||
' "src/dep": "https://example.com/dep.git@{dep_revision}",',
|
||||
'}',
|
||||
]
|
||||
self.assert_changes_revision(before, after)
|
||||
self.assert_gets_and_sets_revision(before, after)
|
||||
|
||||
def test_follows_var_braces_newline(self):
|
||||
before = [
|
||||
@@ -483,7 +492,7 @@ class SetRevisionTest(unittest.TestCase):
|
||||
' + "@{dep_revision}",',
|
||||
'}',
|
||||
]
|
||||
self.assert_changes_revision(before, after)
|
||||
self.assert_gets_and_sets_revision(before, after)
|
||||
|
||||
def test_follows_var_function(self):
|
||||
before = [
|
||||
@@ -502,7 +511,7 @@ class SetRevisionTest(unittest.TestCase):
|
||||
' "src/dep": "https://example.com/dep.git@" + Var("dep_revision"),',
|
||||
'}',
|
||||
]
|
||||
self.assert_changes_revision(before, after)
|
||||
self.assert_gets_and_sets_revision(before, after)
|
||||
|
||||
def test_pins_revision(self):
|
||||
before = [
|
||||
@@ -515,7 +524,7 @@ class SetRevisionTest(unittest.TestCase):
|
||||
' "src/dep": "https://example.com/dep.git@deadfeed",',
|
||||
'}',
|
||||
]
|
||||
self.assert_changes_revision(before, after)
|
||||
self.assert_gets_and_sets_revision(before, after, rev_before=None)
|
||||
|
||||
|
||||
def test_preserves_formatting(self):
|
||||
@@ -545,7 +554,7 @@ class SetRevisionTest(unittest.TestCase):
|
||||
' },',
|
||||
'}',
|
||||
]
|
||||
self.assert_changes_revision(before, after)
|
||||
self.assert_gets_and_sets_revision(before, after)
|
||||
|
||||
|
||||
class ParseTest(unittest.TestCase):
|
||||
|
||||
Reference in New Issue
Block a user