diff options
Diffstat (limited to 'tests')
| -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')) |
