123456789101112131415161718192021222324252627282930313233343536 |
- import sys
- from io import BytesIO
- import atheris
- from test_utils import is_expected_exception
- with atheris.instrument_imports():
- from dulwich.config import ConfigFile
- def TestOneInput(data):
- try:
- ConfigFile.from_file(BytesIO(data))
- except ValueError as e:
- expected_exceptions = [
- "without section",
- "invalid variable name",
- "expected trailing ]",
- "invalid section name",
- "Invalid subsection",
- "escape character",
- "missing end quote",
- ]
- if is_expected_exception(expected_exceptions, e):
- return -1
- else:
- raise e
- def main():
- atheris.Setup(sys.argv, TestOneInput)
- atheris.Fuzz()
- if __name__ == "__main__":
- main()
|