diff options
author | Ian Kasprzak <iankaz@google.com> | 2021-03-05 11:04:49 -0800 |
---|---|---|
committer | Ian Kasprzak <iankaz@google.com> | 2021-03-08 17:32:09 +0000 |
commit | 835a34bdb911e15e228cb760043d3f737dd56c84 (patch) | |
tree | 2152ffa9a3aa2ccb878ca2d92d67775a36de555f /tests/test_git_trace2_event_log.py | |
parent | ef99ec07b4687cef0129057b81c0c1ebd21bb640 (diff) | |
download | git-repo-835a34bdb911e15e228cb760043d3f737dd56c84.tar.gz |
Log repo.* config variables in git trace2 logger.
Bug: [google internal] b/181758736
Testing:
- Unit tests
- Verified repo git trace2 logs had expected data
Change-Id: I9af8a574377bd91115f085808c1271e9dee16a36
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/299182
Tested-by: Ian Kasprzak <iankaz@google.com>
Reviewed-by: Mike Frysinger <vapier@google.com>
Reviewed-by: Raman Tenneti <rtenneti@google.com>
Diffstat (limited to 'tests/test_git_trace2_event_log.py')
-rw-r--r-- | tests/test_git_trace2_event_log.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/tests/test_git_trace2_event_log.py b/tests/test_git_trace2_event_log.py index 8fb38dbe..3c5cb150 100644 --- a/tests/test_git_trace2_event_log.py +++ b/tests/test_git_trace2_event_log.py | |||
@@ -161,6 +161,55 @@ class EventLogTestCase(unittest.TestCase): | |||
161 | self.assertIn('code', exit_event) | 161 | self.assertIn('code', exit_event) |
162 | self.assertEqual(exit_event['code'], 2) | 162 | self.assertEqual(exit_event['code'], 2) |
163 | 163 | ||
164 | def test_def_params_event_repo_config(self): | ||
165 | """Test 'def_params' event data outputs only repo config keys. | ||
166 | |||
167 | Expected event log: | ||
168 | <version event> | ||
169 | <def_param event> | ||
170 | <def_param event> | ||
171 | """ | ||
172 | config = { | ||
173 | 'git.foo': 'bar', | ||
174 | 'repo.partialclone': 'true', | ||
175 | 'repo.partialclonefilter': 'blob:none', | ||
176 | } | ||
177 | self._event_log_module.DefParamRepoEvents(config) | ||
178 | |||
179 | with tempfile.TemporaryDirectory(prefix='event_log_tests') as tempdir: | ||
180 | log_path = self._event_log_module.Write(path=tempdir) | ||
181 | self._log_data = self.readLog(log_path) | ||
182 | |||
183 | self.assertEqual(len(self._log_data), 3) | ||
184 | def_param_events = self._log_data[1:] | ||
185 | self.verifyCommonKeys(self._log_data[0], expected_event_name='version') | ||
186 | |||
187 | for event in def_param_events: | ||
188 | self.verifyCommonKeys(event, expected_event_name='def_param') | ||
189 | # Check for 'def_param' event specific fields. | ||
190 | self.assertIn('param', event) | ||
191 | self.assertIn('value', event) | ||
192 | self.assertTrue(event['param'].startswith('repo.')) | ||
193 | |||
194 | def test_def_params_event_no_repo_config(self): | ||
195 | """Test 'def_params' event data won't output non-repo config keys. | ||
196 | |||
197 | Expected event log: | ||
198 | <version event> | ||
199 | """ | ||
200 | config = { | ||
201 | 'git.foo': 'bar', | ||
202 | 'git.core.foo2': 'baz', | ||
203 | } | ||
204 | self._event_log_module.DefParamRepoEvents(config) | ||
205 | |||
206 | with tempfile.TemporaryDirectory(prefix='event_log_tests') as tempdir: | ||
207 | log_path = self._event_log_module.Write(path=tempdir) | ||
208 | self._log_data = self.readLog(log_path) | ||
209 | |||
210 | self.assertEqual(len(self._log_data), 1) | ||
211 | self.verifyCommonKeys(self._log_data[0], expected_event_name='version') | ||
212 | |||
164 | def test_write_with_filename(self): | 213 | def test_write_with_filename(self): |
165 | """Test Write() with a path to a file exits with None.""" | 214 | """Test Write() with a path to a file exits with None.""" |
166 | self.assertIsNone(self._event_log_module.Write(path='path/to/file')) | 215 | self.assertIsNone(self._event_log_module.Write(path='path/to/file')) |