GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — GitPython/test/test_exc.py at 3.1.57 · gitpython-developers/GitPython Expand file tree/ Copy pathtest_exc.pyMore file actions 179 lines (154 loc) · 4.92 KB / Copy pathtest_exc.pyFile metadata and controls179 lines (154 loc) · 4.92 KB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 # Copyright (C) 2008, 2009, 2016 Michael Trier ([email protected]) and contributors # # This module is part of GitPython and is released under the # 3-Clause BSD License: https://opensource.org/license/bsd-3-clause/ from itertools import product import re import ddt from git.exc import ( InvalidGitRepositoryError, WorkTreeRepositoryUnsupported, NoSuchPathError, CommandError, GitCommandNotFound, GitCommandError, CheckoutError, CacheError, UnmergedEntriesError, HookExecutionError, RepositoryDirtyError, ) from git.util import remove_password_if_present from test.lib import TestBase _cmd_argvs = ( ("cmd",), ("θνιψοδε",), ("θνιψοδε", "normal", "argvs"), ("cmd", "ελληνικα", "args"), ("θνιψοδε", "κι", "αλλα", "strange", "args"), ("θνιψοδε", "κι", "αλλα", "non-unicode", "args"), ( "git", "clone", "-v", "https://fakeuser:[email protected]/testrepo", ), ) _causes_n_substrings = ( (None, None), (7, "exit code(7)"), ("Some string", "'Some string'"), ("παλιο string", "'παλιο string'"), (Exception("An exc."), "Exception('An exc.')"), (Exception("Κακια exc."), "Exception('Κακια exc.')"), (object(), "<object object at "), ) _streams_n_substrings = ( None, "stream", "ομορφο stream", ) @ddt.ddt class TExc(TestBase): def test_ExceptionsHaveBaseClass(self): from git.exc import GitError self.assertIsInstance(GitError(), Exception) exception_classes = [ InvalidGitRepositoryError, WorkTreeRepositoryUnsupported, NoSuchPathError, CommandError, GitCommandNotFound, GitCommandError, CheckoutError, CacheError, UnmergedEntriesError, HookExecutionError, RepositoryDirtyError, ] for ex_class in exception_classes: self.assertTrue(issubclass(ex_class, GitError)) @ddt.data(*list(product(_cmd_argvs, _causes_n_substrings, _streams_n_substrings))) def test_CommandError_unicode(self, case): argv, (cause, subs), stream = case cls = CommandError c = cls(argv, cause) s = str(c) self.assertIsNotNone(c._msg) self.assertIn(" cmdline: ", s) for a in remove_password_if_present(argv): self.assertIn(a, s) if not cause: self.assertIn("failed!", s) else: self.assertIn(" failed due to:", s) if subs is not None: # Substrings (must) already contain opening `'`. subs = r"(?<!')%s(?!')" % re.escape(subs) self.assertRegex(s, subs) if not stream: c = cls(argv, cause) s = str(c) self.assertNotIn(" stdout:", s) self.assertNotIn(" stderr:", s) else: c = cls(argv, cause, stream) s = str(c) self.assertIn(" stderr:", s) self.assertIn(stream, s) c = cls(argv, cause, None, stream) s = str(c) self.assertIn(" stdout:", s) self.assertIn(stream, s) c = cls(argv, cause, stream, stream + "no2") s = str(c) self.assertIn(" stderr:", s) self.assertIn(stream, s) self.assertIn(" stdout:", s) self.assertIn(stream + "no2", s) @ddt.data( (["cmd1"], None), (["cmd1"], "some cause"), (["cmd1"], Exception()), ) def test_GitCommandNotFound(self, init_args): argv, cause = init_args c = GitCommandNotFound(argv, cause) s = str(c) self.assertIn(argv[0], s) if cause: self.assertIn(" not found due to: ", s) self.assertIn(str(cause), s) else: self.assertIn(" not found!", s) @ddt.data( (["cmd1"], None), (["cmd1"], "some cause"), (["cmd1", "https://[email protected]/testrepo"], Exception()), ) def test_GitCommandError(self, init_args): argv, cause = init_args c = GitCommandError(argv, cause) s = str(c) for arg in remove_password_if_present(argv): self.assertIn(arg, s) if cause: self.assertIn(" failed due to: ", s) self.assertIn(str(cause), s) else: self.assertIn(" failed!", s) @ddt.data( (["cmd1"], None), (["cmd1"], "some cause"), (["cmd1"], Exception()), ) def test_HookExecutionError(self, init_args): argv, cause = init_args c = HookExecutionError(argv, cause) s = str(c) self.assertIn(argv[0], s) if cause: self.assertTrue(s.startswith("Hook("), s) self.assertIn(str(cause), s) else: self.assertIn(" failed!", s) |
| You are visitor 01402520 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |