diff options
Diffstat (limited to 'tests/test_git_trace2_event_log.py')
-rw-r--r-- | tests/test_git_trace2_event_log.py | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/tests/test_git_trace2_event_log.py b/tests/test_git_trace2_event_log.py index 3905630f..686802ea 100644 --- a/tests/test_git_trace2_event_log.py +++ b/tests/test_git_trace2_event_log.py | |||
@@ -15,8 +15,10 @@ | |||
15 | """Unittests for the git_trace2_event_log.py module.""" | 15 | """Unittests for the git_trace2_event_log.py module.""" |
16 | 16 | ||
17 | import json | 17 | import json |
18 | import os | ||
18 | import tempfile | 19 | import tempfile |
19 | import unittest | 20 | import unittest |
21 | from unittest import mock | ||
20 | 22 | ||
21 | import git_trace2_event_log | 23 | import git_trace2_event_log |
22 | 24 | ||
@@ -157,12 +159,27 @@ class EventLogTestCase(unittest.TestCase): | |||
157 | self.assertIn('code', exit_event) | 159 | self.assertIn('code', exit_event) |
158 | self.assertEqual(exit_event['code'], 2) | 160 | self.assertEqual(exit_event['code'], 2) |
159 | 161 | ||
160 | # TODO(https://crbug.com/gerrit/13706): Add additional test coverage for | 162 | def test_write_with_filename(self): |
161 | # Write() where: | 163 | """Test Write() with a path to a file exits with None.""" |
162 | # - path=None (using git config call) | 164 | self.assertIsNone(self._event_log_module.Write(path='path/to/file')) |
163 | # - path=<Non-String type> (raises TypeError) | 165 | |
164 | # - path=<Non-Directory> (should return None) | 166 | def test_write_with_git_config(self): |
165 | # - tempfile.NamedTemporaryFile errors with FileExistsError (should return None) | 167 | """Test Write() uses the git config path when 'git config' call succeeds.""" |
168 | with tempfile.TemporaryDirectory(prefix='event_log_tests') as tempdir: | ||
169 | with mock.patch.object(self._event_log_module, | ||
170 | '_GetEventTargetPath', return_value=tempdir): | ||
171 | self.assertEqual(os.path.dirname(self._event_log_module.Write()), tempdir) | ||
172 | |||
173 | def test_write_no_git_config(self): | ||
174 | """Test Write() with no git config variable present exits with None.""" | ||
175 | with mock.patch.object(self._event_log_module, | ||
176 | '_GetEventTargetPath', return_value=None): | ||
177 | self.assertIsNone(self._event_log_module.Write()) | ||
178 | |||
179 | def test_write_non_string(self): | ||
180 | """Test Write() with non-string type for |path| throws TypeError.""" | ||
181 | with self.assertRaises(TypeError): | ||
182 | self._event_log_module.Write(path=1234) | ||
166 | 183 | ||
167 | 184 | ||
168 | if __name__ == '__main__': | 185 | if __name__ == '__main__': |