Verify arguments are "sane".
(name, package, level)
| 1288 | |
| 1289 | |
| 1290 | def _sanity_check(name, package, level): |
| 1291 | """Verify arguments are "sane".""" |
| 1292 | if not isinstance(name, str): |
| 1293 | raise TypeError(f'module name must be str, not {type(name)}') |
| 1294 | if level < 0: |
| 1295 | raise ValueError('level must be >= 0') |
| 1296 | if level > 0: |
| 1297 | if not isinstance(package, str): |
| 1298 | raise TypeError('__package__ not set to a string') |
| 1299 | elif not package: |
| 1300 | raise ImportError('attempted relative import with no known parent ' |
| 1301 | 'package') |
| 1302 | if not name and level == 0: |
| 1303 | raise ValueError('Empty module name') |
| 1304 | |
| 1305 | |
| 1306 | _ERR_MSG_PREFIX = 'No module named ' |
no test coverage detected