| Index: tests/git_common_test.py
|
| diff --git a/tests/git_common_test.py b/tests/git_common_test.py
|
| index 66211796fe9cf1e4c1ec6d433859c37c27a40dd6..c44524dd716b586a728d6dffa9f200977547e631 100755
|
| --- a/tests/git_common_test.py
|
| +++ b/tests/git_common_test.py
|
| @@ -731,6 +731,23 @@ class GitMutableStructuredTest(git_test_utils.GitRepoReadWriteTestBase,
|
| CAT DOG
|
| """)
|
|
|
| + def testStatus(self):
|
| + def inner():
|
| + dictified_status = lambda: {
|
| + k: dict(v._asdict()) # pylint: disable=W0212
|
| + for k, v in self.repo.run(self.gc.status)
|
| + }
|
| + self.repo.git('mv', 'file', 'cat')
|
| + with open('COOL', 'w') as f:
|
| + f.write('Super cool file!')
|
| + self.assertDictEqual(
|
| + dictified_status(),
|
| + {'cat': {'lstat': 'R', 'rstat': ' ', 'src': 'file'},
|
| + 'COOL': {'lstat': '?', 'rstat': '?', 'src': 'COOL'}}
|
| + )
|
| +
|
| + self.repo.run(inner)
|
| +
|
|
|
| class GitFreezeThaw(git_test_utils.GitRepoReadWriteTestBase):
|
| @classmethod
|
| @@ -809,6 +826,52 @@ class GitFreezeThaw(git_test_utils.GitRepoReadWriteTestBase):
|
|
|
| self.repo.run(inner)
|
|
|
| + def testTooBig(self):
|
| + def inner():
|
| + self.repo.git('config', 'depot-tools.freeze-size-limit', '1')
|
| + with open('bigfile', 'w') as f:
|
| + chunk = 'NERDFACE' * 1024
|
| + for _ in xrange(128 * 2 + 1): # Just over 2 mb
|
| + f.write(chunk)
|
| + _, err = self.repo.capture_stdio(self.gc.freeze)
|
| + self.assertIn('too much untracked+unignored', err)
|
| +
|
| + self.repo.run(inner)
|
| +
|
| + def testTooBigMultipleFiles(self):
|
| + def inner():
|
| + self.repo.git('config', 'depot-tools.freeze-size-limit', '1')
|
| + for i in xrange(3):
|
| + with open('file%d' % i, 'w') as f:
|
| + chunk = 'NERDFACE' * 1024
|
| + for _ in xrange(50): # About 400k
|
| + f.write(chunk)
|
| + _, err = self.repo.capture_stdio(self.gc.freeze)
|
| + self.assertIn('too much untracked+unignored', err)
|
| +
|
| + self.repo.run(inner)
|
| +
|
| + def testMerge(self):
|
| + def inner():
|
| + self.repo.git('checkout', '-b', 'bad_merge_branch')
|
| + with open('bad_merge', 'w') as f:
|
| + f.write('bad_merge_left')
|
| + self.repo.git('add', 'bad_merge')
|
| + self.repo.git('commit', '-m', 'bad_merge')
|
| +
|
| + self.repo.git('checkout', 'branch_D')
|
| + with open('bad_merge', 'w') as f:
|
| + f.write('bad_merge_right')
|
| + self.repo.git('add', 'bad_merge')
|
| + self.repo.git('commit', '-m', 'bad_merge_d')
|
| +
|
| + self.repo.git('merge', 'bad_merge_branch')
|
| +
|
| + _, err = self.repo.capture_stdio(self.gc.freeze)
|
| + self.assertIn('Cannot freeze unmerged changes', err)
|
| +
|
| + self.repo.run(inner)
|
| +
|
|
|
| class GitMakeWorkdir(git_test_utils.GitRepoReadOnlyTestBase, GitCommonTestBase):
|
| def setUp(self):
|
|
|