pynguin 0.43.0__tar.gz → 0.45.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (997) hide show
  1. pynguin-0.45.0/PKG-INFO +234 -0
  2. pynguin-0.45.0/README.md +169 -0
  3. pynguin-0.45.0/pyproject.toml +293 -0
  4. pynguin-0.45.0/src/pynguin/__init__.py +87 -0
  5. pynguin-0.45.0/src/pynguin/__main__.py +17 -0
  6. pynguin-0.45.0/src/pynguin/__version__.py +9 -0
  7. pynguin-0.45.0/src/pynguin/analyses/__init__.py +7 -0
  8. pynguin-0.45.0/src/pynguin/analyses/constants.py +374 -0
  9. pynguin-0.45.0/src/pynguin/analyses/generator.py +412 -0
  10. pynguin-0.45.0/src/pynguin/analyses/module.py +2043 -0
  11. pynguin-0.45.0/src/pynguin/analyses/modulecomplexity.py +324 -0
  12. pynguin-0.45.0/src/pynguin/analyses/seeding.py +917 -0
  13. pynguin-0.45.0/src/pynguin/analyses/string_subtypes.py +166 -0
  14. pynguin-0.45.0/src/pynguin/analyses/syntaxtree.py +559 -0
  15. pynguin-0.45.0/src/pynguin/analyses/type_inference.py +490 -0
  16. pynguin-0.45.0/src/pynguin/analyses/typesystem.py +2139 -0
  17. pynguin-0.45.0/src/pynguin/assertion/__init__.py +7 -0
  18. pynguin-0.45.0/src/pynguin/assertion/assertion.py +437 -0
  19. pynguin-0.45.0/src/pynguin/assertion/assertion_to_ast.py +336 -0
  20. pynguin-0.45.0/src/pynguin/assertion/assertion_trace.py +127 -0
  21. pynguin-0.45.0/src/pynguin/assertion/assertiongenerator.py +394 -0
  22. pynguin-0.45.0/src/pynguin/assertion/assertiontraceobserver.py +342 -0
  23. pynguin-0.45.0/src/pynguin/assertion/llmassertiongenerator.py +168 -0
  24. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/__init__.py +7 -0
  25. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/controller.py +90 -0
  26. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/mutators.py +121 -0
  27. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/operators/__init__.py +77 -0
  28. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/operators/arithmetic.py +233 -0
  29. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/operators/base.py +303 -0
  30. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/operators/decorator.py +35 -0
  31. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/operators/exception.py +86 -0
  32. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/operators/inheritance.py +378 -0
  33. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/operators/logical.py +300 -0
  34. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/operators/loop.py +128 -0
  35. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/operators/misc.py +235 -0
  36. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/strategies.py +164 -0
  37. pynguin-0.45.0/src/pynguin/assertion/mutation_analysis/transformer.py +101 -0
  38. pynguin-0.45.0/src/pynguin/cli.py +253 -0
  39. pynguin-0.45.0/src/pynguin/configuration.py +1026 -0
  40. pynguin-0.45.0/src/pynguin/ga/__init__.py +7 -0
  41. pynguin-0.45.0/src/pynguin/ga/algorithms/__init__.py +7 -0
  42. pynguin-0.45.0/src/pynguin/ga/algorithms/abstractmosaalgorithm.py +174 -0
  43. pynguin-0.45.0/src/pynguin/ga/algorithms/archive.py +425 -0
  44. pynguin-0.45.0/src/pynguin/ga/algorithms/dynamosaalgorithm.py +321 -0
  45. pynguin-0.45.0/src/pynguin/ga/algorithms/generationalgorithm.py +326 -0
  46. pynguin-0.45.0/src/pynguin/ga/algorithms/llmosalgorithm.py +208 -0
  47. pynguin-0.45.0/src/pynguin/ga/algorithms/mioalgorithm.py +142 -0
  48. pynguin-0.45.0/src/pynguin/ga/algorithms/mosaalgorithm.py +67 -0
  49. pynguin-0.45.0/src/pynguin/ga/algorithms/randomalgorithm.py +163 -0
  50. pynguin-0.45.0/src/pynguin/ga/algorithms/randomsearchalgorithm.py +55 -0
  51. pynguin-0.45.0/src/pynguin/ga/algorithms/wholesuitealgorithm.py +181 -0
  52. pynguin-0.45.0/src/pynguin/ga/chromosome.py +207 -0
  53. pynguin-0.45.0/src/pynguin/ga/chromosomefactory.py +26 -0
  54. pynguin-0.45.0/src/pynguin/ga/chromosomevisitor.py +29 -0
  55. pynguin-0.45.0/src/pynguin/ga/computations.py +1013 -0
  56. pynguin-0.45.0/src/pynguin/ga/coveragegoals.py +508 -0
  57. pynguin-0.45.0/src/pynguin/ga/generationalgorithmfactory.py +440 -0
  58. pynguin-0.45.0/src/pynguin/ga/llmtestsuitechromosomefactory.py +127 -0
  59. pynguin-0.45.0/src/pynguin/ga/operators/__init__.py +7 -0
  60. pynguin-0.45.0/src/pynguin/ga/operators/comparator.py +133 -0
  61. pynguin-0.45.0/src/pynguin/ga/operators/crossover.py +52 -0
  62. pynguin-0.45.0/src/pynguin/ga/operators/ranking.py +224 -0
  63. pynguin-0.45.0/src/pynguin/ga/operators/selection.py +169 -0
  64. pynguin-0.45.0/src/pynguin/ga/postprocess.py +709 -0
  65. pynguin-0.45.0/src/pynguin/ga/searchobserver.py +84 -0
  66. pynguin-0.45.0/src/pynguin/ga/stoppingcondition.py +644 -0
  67. pynguin-0.45.0/src/pynguin/ga/testcasechromosome.py +304 -0
  68. pynguin-0.45.0/src/pynguin/ga/testcasechromosomefactory.py +84 -0
  69. pynguin-0.45.0/src/pynguin/ga/testcasefactory.py +89 -0
  70. pynguin-0.45.0/src/pynguin/ga/testsuitechromosome.py +193 -0
  71. pynguin-0.45.0/src/pynguin/ga/testsuitechromosomefactory.py +61 -0
  72. pynguin-0.45.0/src/pynguin/generator.py +1014 -0
  73. pynguin-0.45.0/src/pynguin/instrumentation/__init__.py +44 -0
  74. pynguin-0.45.0/src/pynguin/instrumentation/controlflow.py +926 -0
  75. pynguin-0.45.0/src/pynguin/instrumentation/machinery.py +294 -0
  76. pynguin-0.45.0/src/pynguin/instrumentation/tracer.py +1893 -0
  77. pynguin-0.45.0/src/pynguin/instrumentation/transformer.py +1303 -0
  78. pynguin-0.45.0/src/pynguin/instrumentation/version/__init__.py +237 -0
  79. pynguin-0.45.0/src/pynguin/instrumentation/version/common.py +363 -0
  80. pynguin-0.45.0/src/pynguin/instrumentation/version/python3_10.py +1998 -0
  81. pynguin-0.45.0/src/pynguin/instrumentation/version/python3_11.py +638 -0
  82. pynguin-0.45.0/src/pynguin/instrumentation/version/python3_12.py +600 -0
  83. pynguin-0.45.0/src/pynguin/instrumentation/version/python3_13.py +438 -0
  84. pynguin-0.45.0/src/pynguin/instrumentation/version/python3_14.py +314 -0
  85. pynguin-0.45.0/src/pynguin/large_language_model/helpers/testcasereferencecopier.py +144 -0
  86. pynguin-0.45.0/src/pynguin/large_language_model/llmagent.py +435 -0
  87. pynguin-0.45.0/src/pynguin/large_language_model/llmtestcasehandler.py +165 -0
  88. pynguin-0.45.0/src/pynguin/large_language_model/parsing/astscoping.py +560 -0
  89. pynguin-0.45.0/src/pynguin/large_language_model/parsing/deserializer.py +908 -0
  90. pynguin-0.45.0/src/pynguin/large_language_model/parsing/helpers.py +199 -0
  91. pynguin-0.45.0/src/pynguin/large_language_model/parsing/rewriter.py +988 -0
  92. pynguin-0.45.0/src/pynguin/large_language_model/parsing/type_str_parser.py +182 -0
  93. pynguin-0.45.0/src/pynguin/large_language_model/prompts/localsearchprompt.py +69 -0
  94. pynguin-0.45.0/src/pynguin/large_language_model/prompts/testcasegenerationprompt.py +33 -0
  95. pynguin-0.45.0/src/pynguin/large_language_model/prompts/typeinferenceprompt.py +201 -0
  96. pynguin-0.45.0/src/pynguin/large_language_model/prompts/uncoveredtargetsprompt.py +81 -0
  97. pynguin-0.45.0/src/pynguin/master_worker/__init__.py +7 -0
  98. pynguin-0.45.0/src/pynguin/master_worker/client.py +99 -0
  99. pynguin-0.45.0/src/pynguin/master_worker/master.py +222 -0
  100. pynguin-0.45.0/src/pynguin/master_worker/worker.py +130 -0
  101. pynguin-0.45.0/src/pynguin/resources/__init__.py +7 -0
  102. pynguin-0.45.0/src/pynguin/resources/coverage-template.html +80 -0
  103. pynguin-0.45.0/src/pynguin/resources/fans/__init__.py +7 -0
  104. pynguin-0.45.0/src/pynguin/resources/fans/camel_case.fan +11 -0
  105. pynguin-0.45.0/src/pynguin/resources/fans/colour.fan +9 -0
  106. pynguin-0.45.0/src/pynguin/resources/fans/csv.fan +24 -0
  107. pynguin-0.45.0/src/pynguin/resources/fans/delimited.fan +13 -0
  108. pynguin-0.45.0/src/pynguin/resources/fans/email.fan +18 -0
  109. pynguin-0.45.0/src/pynguin/resources/fans/faker/__init__.py +7 -0
  110. pynguin-0.45.0/src/pynguin/resources/fans/faker/camel_case.fan +11 -0
  111. pynguin-0.45.0/src/pynguin/resources/fans/faker/colour.fan +11 -0
  112. pynguin-0.45.0/src/pynguin/resources/fans/faker/csv.fan +12 -0
  113. pynguin-0.45.0/src/pynguin/resources/fans/faker/delimited.fan +11 -0
  114. pynguin-0.45.0/src/pynguin/resources/fans/faker/email.fan +11 -0
  115. pynguin-0.45.0/src/pynguin/resources/fans/faker/ipv4.fan +11 -0
  116. pynguin-0.45.0/src/pynguin/resources/fans/faker/standard_date.fan +11 -0
  117. pynguin-0.45.0/src/pynguin/resources/fans/faker/unix_path.fan +11 -0
  118. pynguin-0.45.0/src/pynguin/resources/fans/faker/xml.fan +11 -0
  119. pynguin-0.45.0/src/pynguin/resources/fans/ipv4.fan +11 -0
  120. pynguin-0.45.0/src/pynguin/resources/fans/numeric.fan +14 -0
  121. pynguin-0.45.0/src/pynguin/resources/fans/standard_date.fan +24 -0
  122. pynguin-0.45.0/src/pynguin/resources/fans/unix_path.fan +14 -0
  123. pynguin-0.45.0/src/pynguin/resources/fans/xml.fan +24 -0
  124. pynguin-0.45.0/src/pynguin/slicer/__init__.py +7 -0
  125. pynguin-0.45.0/src/pynguin/slicer/dynamicslicer.py +909 -0
  126. pynguin-0.45.0/src/pynguin/slicer/executedinstruction.py +144 -0
  127. pynguin-0.45.0/src/pynguin/slicer/executionflowbuilder.py +605 -0
  128. pynguin-0.45.0/src/pynguin/slicer/stack/__init__.py +9 -0
  129. pynguin-0.45.0/src/pynguin/slicer/stack/stacksimulation.py +228 -0
  130. pynguin-0.45.0/src/pynguin/slicer/statementslicingobserver.py +78 -0
  131. pynguin-0.45.0/src/pynguin/testcase/__init__.py +7 -0
  132. pynguin-0.45.0/src/pynguin/testcase/defaulttestcase.py +215 -0
  133. pynguin-0.45.0/src/pynguin/testcase/execution.py +2183 -0
  134. pynguin-0.45.0/src/pynguin/testcase/export.py +308 -0
  135. pynguin-0.45.0/src/pynguin/testcase/llmlocalsearch.py +230 -0
  136. pynguin-0.45.0/src/pynguin/testcase/localsearch.py +304 -0
  137. pynguin-0.45.0/src/pynguin/testcase/localsearchobjective.py +143 -0
  138. pynguin-0.45.0/src/pynguin/testcase/localsearchstatement.py +1494 -0
  139. pynguin-0.45.0/src/pynguin/testcase/localsearchtimer.py +42 -0
  140. pynguin-0.45.0/src/pynguin/testcase/statement.py +2951 -0
  141. pynguin-0.45.0/src/pynguin/testcase/statement_to_ast.py +480 -0
  142. pynguin-0.45.0/src/pynguin/testcase/testcase.py +352 -0
  143. pynguin-0.45.0/src/pynguin/testcase/testcase_to_ast.py +191 -0
  144. pynguin-0.45.0/src/pynguin/testcase/testcasevisitor.py +21 -0
  145. pynguin-0.45.0/src/pynguin/testcase/testfactory.py +1915 -0
  146. pynguin-0.45.0/src/pynguin/testcase/variablereference.py +492 -0
  147. pynguin-0.45.0/src/pynguin/utils/__init__.py +7 -0
  148. pynguin-0.45.0/src/pynguin/utils/ast_util.py +218 -0
  149. pynguin-0.45.0/src/pynguin/utils/atomicinteger.py +67 -0
  150. pynguin-0.45.0/src/pynguin/utils/collection_utils.py +24 -0
  151. pynguin-0.45.0/src/pynguin/utils/configuration_writer.py +241 -0
  152. pynguin-0.45.0/src/pynguin/utils/controlflowdistance.py +217 -0
  153. pynguin-0.45.0/src/pynguin/utils/exceptions.py +56 -0
  154. pynguin-0.45.0/src/pynguin/utils/execution_recorder.py +96 -0
  155. pynguin-0.45.0/src/pynguin/utils/fandango_faker_utils.py +43 -0
  156. pynguin-0.45.0/src/pynguin/utils/fs_isolation.py +288 -0
  157. pynguin-0.45.0/src/pynguin/utils/generic/__init__.py +7 -0
  158. pynguin-0.45.0/src/pynguin/utils/generic/genericaccessibleobject.py +591 -0
  159. pynguin-0.45.0/src/pynguin/utils/llm.py +161 -0
  160. pynguin-0.45.0/src/pynguin/utils/logging_utils.py +107 -0
  161. pynguin-0.45.0/src/pynguin/utils/mirror.py +19 -0
  162. pynguin-0.45.0/src/pynguin/utils/mutation_utils.py +206 -0
  163. pynguin-0.45.0/src/pynguin/utils/namingscope.py +191 -0
  164. pynguin-0.45.0/src/pynguin/utils/openai_key_resolver.py +92 -0
  165. pynguin-0.45.0/src/pynguin/utils/orderedset.py +453 -0
  166. pynguin-0.45.0/src/pynguin/utils/pynguinml/__init__.py +7 -0
  167. pynguin-0.45.0/src/pynguin/utils/pynguinml/ml_parsing_utils.py +414 -0
  168. pynguin-0.45.0/src/pynguin/utils/pynguinml/ml_testfactory_utils.py +527 -0
  169. pynguin-0.45.0/src/pynguin/utils/pynguinml/ml_testing_resources.py +302 -0
  170. pynguin-0.45.0/src/pynguin/utils/pynguinml/mlparameter.py +572 -0
  171. pynguin-0.45.0/src/pynguin/utils/pynguinml/np_rng.py +43 -0
  172. pynguin-0.45.0/src/pynguin/utils/randomness.py +235 -0
  173. pynguin-0.45.0/src/pynguin/utils/report.py +407 -0
  174. pynguin-0.45.0/src/pynguin/utils/statistics/__init__.py +7 -0
  175. pynguin-0.45.0/src/pynguin/utils/statistics/outputvariablefactory.py +314 -0
  176. pynguin-0.45.0/src/pynguin/utils/statistics/runtimevariable.py +298 -0
  177. pynguin-0.45.0/src/pynguin/utils/statistics/statisticsbackend.py +73 -0
  178. pynguin-0.45.0/src/pynguin/utils/statistics/statisticsobserver.py +88 -0
  179. pynguin-0.45.0/src/pynguin/utils/statistics/stats.py +493 -0
  180. pynguin-0.45.0/src/pynguin/utils/type_utils.py +406 -0
  181. pynguin-0.45.0/src/pynguin/utils/typeevalpy_json_schema.py +474 -0
  182. pynguin-0.45.0/src/pynguin/utils/typetracing.py +784 -0
  183. pynguin-0.45.0/tests/__init__.py +6 -0
  184. pynguin-0.45.0/tests/analyses/__init__.py +6 -0
  185. pynguin-0.45.0/tests/analyses/test_constants.py +101 -0
  186. pynguin-0.45.0/tests/analyses/test_initialpopulationseeding.py +261 -0
  187. pynguin-0.45.0/tests/analyses/test_module.py +737 -0
  188. pynguin-0.45.0/tests/analyses/test_modulecomplexity.py +155 -0
  189. pynguin-0.45.0/tests/analyses/test_seeding.py +70 -0
  190. pynguin-0.45.0/tests/analyses/test_staticconstantseeding.py +46 -0
  191. pynguin-0.45.0/tests/analyses/test_string_subtypes.py +125 -0
  192. pynguin-0.45.0/tests/analyses/test_syntaxtree.py +582 -0
  193. pynguin-0.45.0/tests/analyses/test_type_inference.py +124 -0
  194. pynguin-0.45.0/tests/analyses/test_typesystem.py +1070 -0
  195. pynguin-0.45.0/tests/analyses/test_typesystem_string_subtypes.py +56 -0
  196. pynguin-0.45.0/tests/assertion/__init__.py +6 -0
  197. pynguin-0.45.0/tests/assertion/mutation_analysis/__init__.py +6 -0
  198. pynguin-0.45.0/tests/assertion/mutation_analysis/operators/test_arithmetic.py +289 -0
  199. pynguin-0.45.0/tests/assertion/mutation_analysis/operators/test_exception.py +130 -0
  200. pynguin-0.45.0/tests/assertion/mutation_analysis/operators/test_inheritance.py +328 -0
  201. pynguin-0.45.0/tests/assertion/mutation_analysis/operators/test_logical.py +487 -0
  202. pynguin-0.45.0/tests/assertion/mutation_analysis/operators/test_loop.py +179 -0
  203. pynguin-0.45.0/tests/assertion/mutation_analysis/operators/test_misc.py +290 -0
  204. pynguin-0.45.0/tests/assertion/mutation_analysis/test_controller.py +70 -0
  205. pynguin-0.45.0/tests/assertion/mutation_analysis/test_mutators.py +152 -0
  206. pynguin-0.45.0/tests/assertion/mutation_analysis/test_strategies.py +199 -0
  207. pynguin-0.45.0/tests/assertion/test_assertion.py +165 -0
  208. pynguin-0.45.0/tests/assertion/test_assertion_generation_integration.py +461 -0
  209. pynguin-0.45.0/tests/assertion/test_assertion_to_ast.py +121 -0
  210. pynguin-0.45.0/tests/assertion/test_assertion_trace.py +82 -0
  211. pynguin-0.45.0/tests/assertion/test_assertiongenerator.py +32 -0
  212. pynguin-0.45.0/tests/assertion/test_assertiontraceobserver.py +49 -0
  213. pynguin-0.45.0/tests/assertion/test_llmassertiongenerator.py +214 -0
  214. pynguin-0.45.0/tests/conftest.py +693 -0
  215. pynguin-0.45.0/tests/fixtures/__init__.py +6 -0
  216. pynguin-0.45.0/tests/fixtures/accessibles/__init__.py +6 -0
  217. pynguin-0.45.0/tests/fixtures/accessibles/accessible.py +19 -0
  218. pynguin-0.45.0/tests/fixtures/branchcoverage/__init__.py +6 -0
  219. pynguin-0.45.0/tests/fixtures/branchcoverage/nestedbranches.py +16 -0
  220. pynguin-0.45.0/tests/fixtures/branchcoverage/nobranches.py +22 -0
  221. pynguin-0.45.0/tests/fixtures/branchcoverage/simplenesting.py +15 -0
  222. pynguin-0.45.0/tests/fixtures/branchcoverage/singlebranches.py +12 -0
  223. pynguin-0.45.0/tests/fixtures/branchcoverage/twomethodsinglebranches.py +18 -0
  224. pynguin-0.45.0/tests/fixtures/c/__init__.py +6 -0
  225. pynguin-0.45.0/tests/fixtures/c/my_ctypes.py +7 -0
  226. pynguin-0.45.0/tests/fixtures/cluster/__init__.py +6 -0
  227. pynguin-0.45.0/tests/fixtures/cluster/abstract.py +14 -0
  228. pynguin-0.45.0/tests/fixtures/cluster/alias_module.py +14 -0
  229. pynguin-0.45.0/tests/fixtures/cluster/async_class_gen.py +9 -0
  230. pynguin-0.45.0/tests/fixtures/cluster/async_class_method.py +9 -0
  231. pynguin-0.45.0/tests/fixtures/cluster/async_func.py +8 -0
  232. pynguin-0.45.0/tests/fixtures/cluster/async_gen.py +8 -0
  233. pynguin-0.45.0/tests/fixtures/cluster/attributes.py +19 -0
  234. pynguin-0.45.0/tests/fixtures/cluster/blacklist.py +38 -0
  235. pynguin-0.45.0/tests/fixtures/cluster/blacklist_transitive.py +16 -0
  236. pynguin-0.45.0/tests/fixtures/cluster/comments.py +91 -0
  237. pynguin-0.45.0/tests/fixtures/cluster/complex_dependencies.py +12 -0
  238. pynguin-0.45.0/tests/fixtures/cluster/complex_dependency.py +23 -0
  239. pynguin-0.45.0/tests/fixtures/cluster/conditional_import.py +16 -0
  240. pynguin-0.45.0/tests/fixtures/cluster/dependency.py +11 -0
  241. pynguin-0.45.0/tests/fixtures/cluster/diamond_bottom.py +13 -0
  242. pynguin-0.45.0/tests/fixtures/cluster/diamond_left.py +13 -0
  243. pynguin-0.45.0/tests/fixtures/cluster/diamond_right.py +13 -0
  244. pynguin-0.45.0/tests/fixtures/cluster/diamond_top.py +13 -0
  245. pynguin-0.45.0/tests/fixtures/cluster/enums.py +22 -0
  246. pynguin-0.45.0/tests/fixtures/cluster/import_dependency.py +21 -0
  247. pynguin-0.45.0/tests/fixtures/cluster/inheritance.py +14 -0
  248. pynguin-0.45.0/tests/fixtures/cluster/lambda.py +11 -0
  249. pynguin-0.45.0/tests/fixtures/cluster/nested_functions.py +19 -0
  250. pynguin-0.45.0/tests/fixtures/cluster/no_any_annotations.py +23 -0
  251. pynguin-0.45.0/tests/fixtures/cluster/no_dependencies.py +22 -0
  252. pynguin-0.45.0/tests/fixtures/cluster/overridden_inherited_methods.py +23 -0
  253. pynguin-0.45.0/tests/fixtures/cluster/simple_dependencies.py +12 -0
  254. pynguin-0.45.0/tests/fixtures/cluster/typing_parameters.py +22 -0
  255. pynguin-0.45.0/tests/fixtures/cluster/uses_async_dependency.py +17 -0
  256. pynguin-0.45.0/tests/fixtures/crash/__init__.py +6 -0
  257. pynguin-0.45.0/tests/fixtures/crash/partly_crashing.py +15 -0
  258. pynguin-0.45.0/tests/fixtures/crash/seg_fault.py +11 -0
  259. pynguin-0.45.0/tests/fixtures/duckmock/__init__.py +6 -0
  260. pynguin-0.45.0/tests/fixtures/duckmock/complex.py +97 -0
  261. pynguin-0.45.0/tests/fixtures/errors/__init__.py +6 -0
  262. pynguin-0.45.0/tests/fixtures/errors/import_error.py +11 -0
  263. pynguin-0.45.0/tests/fixtures/examples/__init__.py +6 -0
  264. pynguin-0.45.0/tests/fixtures/examples/assertions.py +27 -0
  265. pynguin-0.45.0/tests/fixtures/examples/basket.py +13 -0
  266. pynguin-0.45.0/tests/fixtures/examples/calculator.py +61 -0
  267. pynguin-0.45.0/tests/fixtures/examples/calculator_simple.py +46 -0
  268. pynguin-0.45.0/tests/fixtures/examples/collections.py +43 -0
  269. pynguin-0.45.0/tests/fixtures/examples/constructors.py +77 -0
  270. pynguin-0.45.0/tests/fixtures/examples/difficult.py +23 -0
  271. pynguin-0.45.0/tests/fixtures/examples/dummies.py +14 -0
  272. pynguin-0.45.0/tests/fixtures/examples/dynamosa_example.py +17 -0
  273. pynguin-0.45.0/tests/fixtures/examples/enums.py +16 -0
  274. pynguin-0.45.0/tests/fixtures/examples/exceptions.py +17 -0
  275. pynguin-0.45.0/tests/fixtures/examples/flaky.py +22 -0
  276. pynguin-0.45.0/tests/fixtures/examples/impossible.py +11 -0
  277. pynguin-0.45.0/tests/fixtures/examples/inheritance.py +25 -0
  278. pynguin-0.45.0/tests/fixtures/examples/loop.py +19 -0
  279. pynguin-0.45.0/tests/fixtures/examples/module_alias.py +10 -0
  280. pynguin-0.45.0/tests/fixtures/examples/monkey.py +45 -0
  281. pynguin-0.45.0/tests/fixtures/examples/nested.py +14 -0
  282. pynguin-0.45.0/tests/fixtures/examples/objects.py +27 -0
  283. pynguin-0.45.0/tests/fixtures/examples/private_methods.py +16 -0
  284. pynguin-0.45.0/tests/fixtures/examples/queue.py +43 -0
  285. pynguin-0.45.0/tests/fixtures/examples/simple.py +11 -0
  286. pynguin-0.45.0/tests/fixtures/examples/triangle.py +15 -0
  287. pynguin-0.45.0/tests/fixtures/examples/type_inference.py +14 -0
  288. pynguin-0.45.0/tests/fixtures/examples/type_tracing/__init__.py +6 -0
  289. pynguin-0.45.0/tests/fixtures/examples/type_tracing/geometry.py +17 -0
  290. pynguin-0.45.0/tests/fixtures/examples/type_tracing/invoice.py +17 -0
  291. pynguin-0.45.0/tests/fixtures/examples/type_tracing/large_test_cluster.py +59 -0
  292. pynguin-0.45.0/tests/fixtures/examples/type_tracing/mixed.py +58 -0
  293. pynguin-0.45.0/tests/fixtures/examples/type_tracing/string_subtype.py +10 -0
  294. pynguin-0.45.0/tests/fixtures/examples/unasserted_exceptions.py +14 -0
  295. pynguin-0.45.0/tests/fixtures/grammar/__init__.py +6 -0
  296. pynguin-0.45.0/tests/fixtures/grammar/parameters.py +14 -0
  297. pynguin-0.45.0/tests/fixtures/instrumentation/__init__.py +6 -0
  298. pynguin-0.45.0/tests/fixtures/instrumentation/comparison.py +74 -0
  299. pynguin-0.45.0/tests/fixtures/instrumentation/covered_branches.py +95 -0
  300. pynguin-0.45.0/tests/fixtures/instrumentation/covered_classes.py +18 -0
  301. pynguin-0.45.0/tests/fixtures/instrumentation/covered_functions.py +28 -0
  302. pynguin-0.45.0/tests/fixtures/instrumentation/covered_lines.py +65 -0
  303. pynguin-0.45.0/tests/fixtures/instrumentation/inherited.py +15 -0
  304. pynguin-0.45.0/tests/fixtures/instrumentation/mixed.py +62 -0
  305. pynguin-0.45.0/tests/fixtures/instrumentation/simple.py +78 -0
  306. pynguin-0.45.0/tests/fixtures/linecoverage/__init__.py +6 -0
  307. pynguin-0.45.0/tests/fixtures/linecoverage/artificial_none.py +44 -0
  308. pynguin-0.45.0/tests/fixtures/linecoverage/emptyfile.py +6 -0
  309. pynguin-0.45.0/tests/fixtures/linecoverage/exception.py +11 -0
  310. pynguin-0.45.0/tests/fixtures/linecoverage/list.py +10 -0
  311. pynguin-0.45.0/tests/fixtures/linecoverage/plus.py +18 -0
  312. pynguin-0.45.0/tests/fixtures/linecoverage/setter_getter.py +16 -0
  313. pynguin-0.45.0/tests/fixtures/mutation/__init__.py +6 -0
  314. pynguin-0.45.0/tests/fixtures/mutation/exception.py +12 -0
  315. pynguin-0.45.0/tests/fixtures/mutation/expected.py +9 -0
  316. pynguin-0.45.0/tests/fixtures/mutation/mutation.py +18 -0
  317. pynguin-0.45.0/tests/fixtures/mutation/timeout.py +13 -0
  318. pynguin-0.45.0/tests/fixtures/programgraph/__init__.py +6 -0
  319. pynguin-0.45.0/tests/fixtures/programgraph/samples.py +12 -0
  320. pynguin-0.45.0/tests/fixtures/programgraph/whileloop.py +13 -0
  321. pynguin-0.45.0/tests/fixtures/programgraph/yield_fun.py +12 -0
  322. pynguin-0.45.0/tests/fixtures/regression/__init__.py +6 -0
  323. pynguin-0.45.0/tests/fixtures/regression/argparse_sys_exit.py +16 -0
  324. pynguin-0.45.0/tests/fixtures/regression/custom_error.py +7 -0
  325. pynguin-0.45.0/tests/fixtures/regression/not_main.py +16 -0
  326. pynguin-0.45.0/tests/fixtures/seeding/__init__.py +6 -0
  327. pynguin-0.45.0/tests/fixtures/seeding/dynamicseeding/__init__.py +6 -0
  328. pynguin-0.45.0/tests/fixtures/seeding/dynamicseeding/dynamicseedingdummies.py +12 -0
  329. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/__init__.py +6 -0
  330. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/dummycontainer.py +82 -0
  331. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/__init__.py +6 -0
  332. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/assertseed_test_.py +27 -0
  333. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/classseed_test_.py +15 -0
  334. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/collfuncseed_test_.py +37 -0
  335. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/collseed_test_.py +31 -0
  336. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/nestedseed_test_.py +14 -0
  337. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/notknowncall_test_.py +18 -0
  338. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/notprimseed_test_.py +14 -0
  339. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/primitiveseed_test_.py +58 -0
  340. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/triangleseed_test_.py +21 -0
  341. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/wrongassignseed_test_.py +11 -0
  342. pynguin-0.45.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/wrongfunctionnameseed_test_.py +13 -0
  343. pynguin-0.45.0/tests/fixtures/seeding/staticconstantseeding/__init__.py +6 -0
  344. pynguin-0.45.0/tests/fixtures/seeding/staticconstantseeding/dummy/__init__.py +6 -0
  345. pynguin-0.45.0/tests/fixtures/seeding/staticconstantseeding/dummy/dummy.py +24 -0
  346. pynguin-0.45.0/tests/fixtures/slicer/__init__.py +6 -0
  347. pynguin-0.45.0/tests/fixtures/slicer/attribute_dependencies.py +23 -0
  348. pynguin-0.45.0/tests/fixtures/slicer/closure.py +19 -0
  349. pynguin-0.45.0/tests/fixtures/slicer/generator.py +37 -0
  350. pynguin-0.45.0/tests/fixtures/slicer/immutable_attribute_dependency.py +18 -0
  351. pynguin-0.45.0/tests/fixtures/slicer/import_star_def.py +10 -0
  352. pynguin-0.45.0/tests/fixtures/slicer/import_star_main.py +15 -0
  353. pynguin-0.45.0/tests/fixtures/slicer/partial_cover_dependency.py +22 -0
  354. pynguin-0.45.0/tests/fixtures/slicer/simple_call.py +17 -0
  355. pynguin-0.45.0/tests/fixtures/slicer/simple_call_arg.py +21 -0
  356. pynguin-0.45.0/tests/fixtures/test.conf.license +3 -0
  357. pynguin-0.45.0/tests/fixtures/tests/typeinference/test_stubstrategy.pyi +17 -0
  358. pynguin-0.45.0/tests/fixtures/type_tracing/__init__.py +6 -0
  359. pynguin-0.45.0/tests/fixtures/type_tracing/guess_params.py +11 -0
  360. pynguin-0.45.0/tests/fixtures/type_tracing/return_types.py +28 -0
  361. pynguin-0.45.0/tests/fixtures/type_tracing/union_type.py +9 -0
  362. pynguin-0.45.0/tests/fixtures/types/__init__.py +6 -0
  363. pynguin-0.45.0/tests/fixtures/types/outside.py +16 -0
  364. pynguin-0.45.0/tests/fixtures/types/subtyping.py +12 -0
  365. pynguin-0.45.0/tests/fixtures/types/symbols.py +53 -0
  366. pynguin-0.45.0/tests/ga/__init__.py +6 -0
  367. pynguin-0.45.0/tests/ga/algorithms/__init__.py +7 -0
  368. pynguin-0.45.0/tests/ga/algorithms/test_archive.py +418 -0
  369. pynguin-0.45.0/tests/ga/algorithms/test_dynamosaalgorithm.py +90 -0
  370. pynguin-0.45.0/tests/ga/algorithms/test_generationalgorithm.py +32 -0
  371. pynguin-0.45.0/tests/ga/algorithms/test_integration_mosaalgorithm.py +68 -0
  372. pynguin-0.45.0/tests/ga/algorithms/test_integration_varioussearchalgorithms.py +124 -0
  373. pynguin-0.45.0/tests/ga/algorithms/test_llmosalgorithm.py +436 -0
  374. pynguin-0.45.0/tests/ga/algorithms/test_mioalgorithm.py +66 -0
  375. pynguin-0.45.0/tests/ga/algorithms/test_mosaalgorithm.py +52 -0
  376. pynguin-0.45.0/tests/ga/algorithms/test_randomalgorithm.py +155 -0
  377. pynguin-0.45.0/tests/ga/operators/__init__.py +6 -0
  378. pynguin-0.45.0/tests/ga/operators/crossover/__init__.py +6 -0
  379. pynguin-0.45.0/tests/ga/operators/crossover/test_singlepointrelativecrossover.py +39 -0
  380. pynguin-0.45.0/tests/ga/operators/ranking/__init__.py +6 -0
  381. pynguin-0.45.0/tests/ga/operators/ranking/test_rankingfunction.py +70 -0
  382. pynguin-0.45.0/tests/ga/operators/selection/__init__.py +6 -0
  383. pynguin-0.45.0/tests/ga/operators/selection/test_randomselection.py +16 -0
  384. pynguin-0.45.0/tests/ga/operators/selection/test_rankselection.py +16 -0
  385. pynguin-0.45.0/tests/ga/operators/selection/test_selection.py +29 -0
  386. pynguin-0.45.0/tests/ga/operators/selection/test_tournamentselection.py +20 -0
  387. pynguin-0.45.0/tests/ga/operators/test_dominancecomparator.py +48 -0
  388. pynguin-0.45.0/tests/ga/operators/test_preferencesortingcomparator.py +25 -0
  389. pynguin-0.45.0/tests/ga/stoppingconditions/__init__.py +6 -0
  390. pynguin-0.45.0/tests/ga/stoppingconditions/test_coverageplateaustoppingcondition.py +63 -0
  391. pynguin-0.45.0/tests/ga/stoppingconditions/test_maxcoveragestoppingcondition.py +59 -0
  392. pynguin-0.45.0/tests/ga/stoppingconditions/test_maxiterationsstoppingcondition.py +43 -0
  393. pynguin-0.45.0/tests/ga/stoppingconditions/test_maxmemorystoppingcondition.py +43 -0
  394. pynguin-0.45.0/tests/ga/stoppingconditions/test_maxstatementstoppingcondition.py +47 -0
  395. pynguin-0.45.0/tests/ga/stoppingconditions/test_maxtestsstoppingcondition.py +31 -0
  396. pynguin-0.45.0/tests/ga/stoppingconditions/test_maxtimestoppingcondition.py +42 -0
  397. pynguin-0.45.0/tests/ga/stoppingconditions/test_minimumcoverageplateaustoppingcondition.py +85 -0
  398. pynguin-0.45.0/tests/ga/stoppingconditions/test_stoppingcondition.py +39 -0
  399. pynguin-0.45.0/tests/ga/test_chromosome.py +62 -0
  400. pynguin-0.45.0/tests/ga/test_chromosomefactory.py +83 -0
  401. pynguin-0.45.0/tests/ga/test_computations.py +255 -0
  402. pynguin-0.45.0/tests/ga/test_computations_cache.py +227 -0
  403. pynguin-0.45.0/tests/ga/test_computations_fitness_utilities.py +291 -0
  404. pynguin-0.45.0/tests/ga/test_coveragegoals.py +481 -0
  405. pynguin-0.45.0/tests/ga/test_generationalgorithmfactory.py +99 -0
  406. pynguin-0.45.0/tests/ga/test_generator.py +176 -0
  407. pynguin-0.45.0/tests/ga/test_llmtestsuitechromosomefactory.py +189 -0
  408. pynguin-0.45.0/tests/ga/test_postprocess.py +1165 -0
  409. pynguin-0.45.0/tests/ga/test_testcasechromosome.py +337 -0
  410. pynguin-0.45.0/tests/ga/test_testcasefactory.py +35 -0
  411. pynguin-0.45.0/tests/ga/test_testsuitechromosome.py +220 -0
  412. pynguin-0.45.0/tests/instrumentation/__init__.py +6 -0
  413. pynguin-0.45.0/tests/instrumentation/test_adapters.py +1007 -0
  414. pynguin-0.45.0/tests/instrumentation/test_ast_info.py +315 -0
  415. pynguin-0.45.0/tests/instrumentation/test_cfg.py +1098 -0
  416. pynguin-0.45.0/tests/instrumentation/test_controldependencegraph.py +507 -0
  417. pynguin-0.45.0/tests/instrumentation/test_machinery.py +124 -0
  418. pynguin-0.45.0/tests/instrumentation/test_programgraph.py +113 -0
  419. pynguin-0.45.0/tests/instrumentation/test_tracer.py +711 -0
  420. pynguin-0.45.0/tests/instrumentation/test_version.py +208 -0
  421. pynguin-0.45.0/tests/large_language_model/helpers/test_testcasereferencecopier.py +187 -0
  422. pynguin-0.45.0/tests/large_language_model/parsing/test_astscoping.py +684 -0
  423. pynguin-0.45.0/tests/large_language_model/parsing/test_helpers.py +353 -0
  424. pynguin-0.45.0/tests/large_language_model/parsing/test_type_str_parser.py +111 -0
  425. pynguin-0.45.0/tests/large_language_model/prompts/test_testcasegenerationprompt.py +114 -0
  426. pynguin-0.45.0/tests/large_language_model/prompts/test_uncovered_targets_prompt.py +95 -0
  427. pynguin-0.45.0/tests/large_language_model/test_caching.py +109 -0
  428. pynguin-0.45.0/tests/large_language_model/test_llm_caching.py +54 -0
  429. pynguin-0.45.0/tests/large_language_model/test_llm_deserializer.py +645 -0
  430. pynguin-0.45.0/tests/large_language_model/test_llmagent.py +133 -0
  431. pynguin-0.45.0/tests/large_language_model/test_llmagent_extended.py +494 -0
  432. pynguin-0.45.0/tests/large_language_model/test_llmtestcasehandler.py +216 -0
  433. pynguin-0.45.0/tests/large_language_model/test_llmtestcasehandler_coverage.py +48 -0
  434. pynguin-0.45.0/tests/large_language_model/test_rewriter.py +519 -0
  435. pynguin-0.45.0/tests/master_worker/__init__.py +7 -0
  436. pynguin-0.45.0/tests/master_worker/test_client.py +130 -0
  437. pynguin-0.45.0/tests/master_worker/test_master.py +113 -0
  438. pynguin-0.45.0/tests/master_worker/test_worker.py +126 -0
  439. pynguin-0.45.0/tests/resources/typeevalpy/__init__.py +0 -0
  440. pynguin-0.45.0/tests/resources/typeevalpy/dummy.py +310 -0
  441. pynguin-0.45.0/tests/resources/typeevalpy/dummy_gt.json +978 -0
  442. pynguin-0.45.0/tests/resources/typeevalpy/dummy_gt.json.license +3 -0
  443. pynguin-0.45.0/tests/slicer/__init__.py +6 -0
  444. pynguin-0.45.0/tests/slicer/test_assertionslicer.py +387 -0
  445. pynguin-0.45.0/tests/slicer/test_dependencies.py +466 -0
  446. pynguin-0.45.0/tests/slicer/test_expected_failures.py +703 -0
  447. pynguin-0.45.0/tests/slicer/test_language_features.py +1495 -0
  448. pynguin-0.45.0/tests/slicer/test_statementslicer.py +319 -0
  449. pynguin-0.45.0/tests/slicer/util.py +200 -0
  450. pynguin-0.45.0/tests/test___main__.py +19 -0
  451. pynguin-0.45.0/tests/test_cli.py +384 -0
  452. pynguin-0.45.0/tests/test_generator.py +382 -0
  453. pynguin-0.45.0/tests/testcase/__init__.py +6 -0
  454. pynguin-0.45.0/tests/testcase/execution/__init__.py +6 -0
  455. pynguin-0.45.0/tests/testcase/execution/test_executedinstruction.py +22 -0
  456. pynguin-0.45.0/tests/testcase/execution/test_executioncontext.py +43 -0
  457. pynguin-0.45.0/tests/testcase/execution/test_executionmocking.py +0 -0
  458. pynguin-0.45.0/tests/testcase/execution/test_executionresult.py +55 -0
  459. pynguin-0.45.0/tests/testcase/execution/test_executiontrace.py +83 -0
  460. pynguin-0.45.0/tests/testcase/execution/test_moduleprovider.py +72 -0
  461. pynguin-0.45.0/tests/testcase/execution/test_subprocesstestcaseexecutor.py +248 -0
  462. pynguin-0.45.0/tests/testcase/execution/test_subprocesstestcaseexecutor_differential.py +36 -0
  463. pynguin-0.45.0/tests/testcase/execution/test_subprocesstestcaseexecutor_integration.py +131 -0
  464. pynguin-0.45.0/tests/testcase/execution/test_testcaseexecutor_integration.py +197 -0
  465. pynguin-0.45.0/tests/testcase/execution/test_typetracing.py +115 -0
  466. pynguin-0.45.0/tests/testcase/export/__init__.py +6 -0
  467. pynguin-0.45.0/tests/testcase/export/conftest.py +95 -0
  468. pynguin-0.45.0/tests/testcase/export/test_export.py +465 -0
  469. pynguin-0.45.0/tests/testcase/statements/__init__.py +6 -0
  470. pynguin-0.45.0/tests/testcase/statements/test_assignmentstatement.py +125 -0
  471. pynguin-0.45.0/tests/testcase/statements/test_collectionstatements.py +137 -0
  472. pynguin-0.45.0/tests/testcase/statements/test_fieldstatement.py +170 -0
  473. pynguin-0.45.0/tests/testcase/statements/test_parameterizedstatements.py +546 -0
  474. pynguin-0.45.0/tests/testcase/statements/test_primitivestatements.py +815 -0
  475. pynguin-0.45.0/tests/testcase/test_ast_assign_statement.py +382 -0
  476. pynguin-0.45.0/tests/testcase/test_benchmark.py +63 -0
  477. pynguin-0.45.0/tests/testcase/test_defaulttestcase.py +504 -0
  478. pynguin-0.45.0/tests/testcase/test_llmlocalsearch.py +77 -0
  479. pynguin-0.45.0/tests/testcase/test_localsearch.py +1366 -0
  480. pynguin-0.45.0/tests/testcase/test_localsearchtimer.py +28 -0
  481. pynguin-0.45.0/tests/testcase/test_statement_to_ast.py +666 -0
  482. pynguin-0.45.0/tests/testcase/test_testcase_integration.py +160 -0
  483. pynguin-0.45.0/tests/testcase/test_testcase_to_ast_integration.py +96 -0
  484. pynguin-0.45.0/tests/testcase/test_testfactory.py +1077 -0
  485. pynguin-0.45.0/tests/testcase/variable/__init__.py +6 -0
  486. pynguin-0.45.0/tests/testcase/variable/test_variablereference.py +316 -0
  487. pynguin-0.45.0/tests/testutils.py +245 -0
  488. pynguin-0.45.0/tests/utils/__init__.py +6 -0
  489. pynguin-0.45.0/tests/utils/generic/__init__.py +6 -0
  490. pynguin-0.45.0/tests/utils/generic/test_genericaccessibleobject.py +191 -0
  491. pynguin-0.45.0/tests/utils/pynguinml/__init__.py +6 -0
  492. pynguin-0.45.0/tests/utils/pynguinml/test_ml_parsing_utils.py +292 -0
  493. pynguin-0.45.0/tests/utils/pynguinml/test_ml_testfactory_utils.py +377 -0
  494. pynguin-0.45.0/tests/utils/pynguinml/test_ml_testing_resources.py +259 -0
  495. pynguin-0.45.0/tests/utils/pynguinml/test_mlparameter.py +206 -0
  496. pynguin-0.45.0/tests/utils/pynguinml/test_np_rng.py +17 -0
  497. pynguin-0.45.0/tests/utils/pynguinml/test_pynguinml_integration.py +61 -0
  498. pynguin-0.45.0/tests/utils/stats/__init__.py +6 -0
  499. pynguin-0.45.0/tests/utils/stats/test_outputvariablefactory.py +183 -0
  500. pynguin-0.45.0/tests/utils/stats/test_runtimevariable.py +41 -0
  501. pynguin-0.45.0/tests/utils/stats/test_searchstatistics.py +193 -0
  502. pynguin-0.45.0/tests/utils/stats/test_statistics.py +17 -0
  503. pynguin-0.45.0/tests/utils/stats/test_statisticsbackend.py +53 -0
  504. pynguin-0.45.0/tests/utils/test_atomicinteger.py +37 -0
  505. pynguin-0.45.0/tests/utils/test_collection_utils.py +14 -0
  506. pynguin-0.45.0/tests/utils/test_configuration_writer.py +909 -0
  507. pynguin-0.45.0/tests/utils/test_controlflowdistance.py +127 -0
  508. pynguin-0.45.0/tests/utils/test_exceptions.py +46 -0
  509. pynguin-0.45.0/tests/utils/test_execution_recorder.py +78 -0
  510. pynguin-0.45.0/tests/utils/test_fandango_faker_utils.py +33 -0
  511. pynguin-0.45.0/tests/utils/test_fs_isolation.py +589 -0
  512. pynguin-0.45.0/tests/utils/test_llm.py +38 -0
  513. pynguin-0.45.0/tests/utils/test_logging_utils.py +115 -0
  514. pynguin-0.45.0/tests/utils/test_mirror.py +19 -0
  515. pynguin-0.45.0/tests/utils/test_mutation_utils.py +32 -0
  516. pynguin-0.45.0/tests/utils/test_namingscope.py +130 -0
  517. pynguin-0.45.0/tests/utils/test_orderedset.py +285 -0
  518. pynguin-0.45.0/tests/utils/test_randomness.py +144 -0
  519. pynguin-0.45.0/tests/utils/test_report.py +546 -0
  520. pynguin-0.45.0/tests/utils/test_string_subtype_integration.py +52 -0
  521. pynguin-0.45.0/tests/utils/test_type_utils.py +325 -0
  522. pynguin-0.45.0/tests/utils/test_typeevalpy_integration.py +232 -0
  523. pynguin-0.45.0/tests/utils/test_typeevalpy_json_schema.py +437 -0
  524. pynguin-0.45.0/tests/utils/test_typetracing.py +689 -0
  525. pynguin-0.45.0/tests/utils/utils.py +46 -0
  526. pynguin-0.43.0/PKG-INFO +0 -218
  527. pynguin-0.43.0/README.md +0 -167
  528. pynguin-0.43.0/pyproject.toml +0 -298
  529. pynguin-0.43.0/src/pynguin/__init__.py +0 -64
  530. pynguin-0.43.0/src/pynguin/__main__.py +0 -18
  531. pynguin-0.43.0/src/pynguin/__version__.py +0 -9
  532. pynguin-0.43.0/src/pynguin/analyses/__init__.py +0 -7
  533. pynguin-0.43.0/src/pynguin/analyses/constants.py +0 -359
  534. pynguin-0.43.0/src/pynguin/analyses/module.py +0 -1816
  535. pynguin-0.43.0/src/pynguin/analyses/modulecomplexity.py +0 -326
  536. pynguin-0.43.0/src/pynguin/analyses/seeding.py +0 -908
  537. pynguin-0.43.0/src/pynguin/analyses/syntaxtree.py +0 -568
  538. pynguin-0.43.0/src/pynguin/analyses/typesystem.py +0 -1722
  539. pynguin-0.43.0/src/pynguin/assertion/__init__.py +0 -7
  540. pynguin-0.43.0/src/pynguin/assertion/assertion.py +0 -441
  541. pynguin-0.43.0/src/pynguin/assertion/assertion_to_ast.py +0 -337
  542. pynguin-0.43.0/src/pynguin/assertion/assertion_trace.py +0 -129
  543. pynguin-0.43.0/src/pynguin/assertion/assertiongenerator.py +0 -488
  544. pynguin-0.43.0/src/pynguin/assertion/assertiontraceobserver.py +0 -345
  545. pynguin-0.43.0/src/pynguin/assertion/llmassertiongenerator.py +0 -171
  546. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/__init__.py +0 -7
  547. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/controller.py +0 -94
  548. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/mutators.py +0 -126
  549. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/operators/__init__.py +0 -94
  550. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/operators/arithmetic.py +0 -233
  551. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/operators/base.py +0 -309
  552. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/operators/decorator.py +0 -36
  553. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/operators/exception.py +0 -86
  554. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/operators/inheritance.py +0 -378
  555. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/operators/logical.py +0 -301
  556. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/operators/loop.py +0 -130
  557. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/operators/misc.py +0 -230
  558. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/strategies.py +0 -166
  559. pynguin-0.43.0/src/pynguin/assertion/mutation_analysis/transformer.py +0 -102
  560. pynguin-0.43.0/src/pynguin/cli.py +0 -221
  561. pynguin-0.43.0/src/pynguin/configuration.py +0 -826
  562. pynguin-0.43.0/src/pynguin/ga/__init__.py +0 -7
  563. pynguin-0.43.0/src/pynguin/ga/algorithms/__init__.py +0 -7
  564. pynguin-0.43.0/src/pynguin/ga/algorithms/abstractmosaalgorithm.py +0 -179
  565. pynguin-0.43.0/src/pynguin/ga/algorithms/archive.py +0 -430
  566. pynguin-0.43.0/src/pynguin/ga/algorithms/dynamosaalgorithm.py +0 -294
  567. pynguin-0.43.0/src/pynguin/ga/algorithms/generationalgorithm.py +0 -332
  568. pynguin-0.43.0/src/pynguin/ga/algorithms/llmosalgorithm.py +0 -214
  569. pynguin-0.43.0/src/pynguin/ga/algorithms/mioalgorithm.py +0 -145
  570. pynguin-0.43.0/src/pynguin/ga/algorithms/mosaalgorithm.py +0 -70
  571. pynguin-0.43.0/src/pynguin/ga/algorithms/randomalgorithm.py +0 -168
  572. pynguin-0.43.0/src/pynguin/ga/algorithms/randomsearchalgorithm.py +0 -57
  573. pynguin-0.43.0/src/pynguin/ga/algorithms/wholesuitealgorithm.py +0 -185
  574. pynguin-0.43.0/src/pynguin/ga/chromosome.py +0 -191
  575. pynguin-0.43.0/src/pynguin/ga/chromosomefactory.py +0 -28
  576. pynguin-0.43.0/src/pynguin/ga/chromosomevisitor.py +0 -30
  577. pynguin-0.43.0/src/pynguin/ga/computations.py +0 -1001
  578. pynguin-0.43.0/src/pynguin/ga/coveragegoals.py +0 -512
  579. pynguin-0.43.0/src/pynguin/ga/generationalgorithmfactory.py +0 -442
  580. pynguin-0.43.0/src/pynguin/ga/llmtestsuitechromosomefactory.py +0 -131
  581. pynguin-0.43.0/src/pynguin/ga/operators/__init__.py +0 -7
  582. pynguin-0.43.0/src/pynguin/ga/operators/comparator.py +0 -136
  583. pynguin-0.43.0/src/pynguin/ga/operators/crossover.py +0 -55
  584. pynguin-0.43.0/src/pynguin/ga/operators/ranking.py +0 -231
  585. pynguin-0.43.0/src/pynguin/ga/operators/selection.py +0 -116
  586. pynguin-0.43.0/src/pynguin/ga/postprocess.py +0 -689
  587. pynguin-0.43.0/src/pynguin/ga/searchobserver.py +0 -87
  588. pynguin-0.43.0/src/pynguin/ga/stoppingcondition.py +0 -650
  589. pynguin-0.43.0/src/pynguin/ga/testcasechromosome.py +0 -303
  590. pynguin-0.43.0/src/pynguin/ga/testcasechromosomefactory.py +0 -87
  591. pynguin-0.43.0/src/pynguin/ga/testcasefactory.py +0 -92
  592. pynguin-0.43.0/src/pynguin/ga/testsuitechromosome.py +0 -195
  593. pynguin-0.43.0/src/pynguin/ga/testsuitechromosomefactory.py +0 -64
  594. pynguin-0.43.0/src/pynguin/generator.py +0 -971
  595. pynguin-0.43.0/src/pynguin/instrumentation/__init__.py +0 -46
  596. pynguin-0.43.0/src/pynguin/instrumentation/controlflow.py +0 -942
  597. pynguin-0.43.0/src/pynguin/instrumentation/machinery.py +0 -276
  598. pynguin-0.43.0/src/pynguin/instrumentation/tracer.py +0 -1824
  599. pynguin-0.43.0/src/pynguin/instrumentation/transformer.py +0 -733
  600. pynguin-0.43.0/src/pynguin/instrumentation/version/__init__.py +0 -239
  601. pynguin-0.43.0/src/pynguin/instrumentation/version/common.py +0 -367
  602. pynguin-0.43.0/src/pynguin/instrumentation/version/python3_10.py +0 -1868
  603. pynguin-0.43.0/src/pynguin/instrumentation/version/python3_11.py +0 -627
  604. pynguin-0.43.0/src/pynguin/instrumentation/version/python3_12.py +0 -600
  605. pynguin-0.43.0/src/pynguin/instrumentation/version/python3_13.py +0 -419
  606. pynguin-0.43.0/src/pynguin/large_language_model/helpers/testcasereferencecopier.py +0 -147
  607. pynguin-0.43.0/src/pynguin/large_language_model/llmagent.py +0 -382
  608. pynguin-0.43.0/src/pynguin/large_language_model/llmtestcasehandler.py +0 -168
  609. pynguin-0.43.0/src/pynguin/large_language_model/parsing/astscoping.py +0 -562
  610. pynguin-0.43.0/src/pynguin/large_language_model/parsing/deserializer.py +0 -907
  611. pynguin-0.43.0/src/pynguin/large_language_model/parsing/helpers.py +0 -186
  612. pynguin-0.43.0/src/pynguin/large_language_model/parsing/rewriter.py +0 -947
  613. pynguin-0.43.0/src/pynguin/large_language_model/prompts/testcasegenerationprompt.py +0 -32
  614. pynguin-0.43.0/src/pynguin/large_language_model/prompts/uncoveredtargetsprompt.py +0 -81
  615. pynguin-0.43.0/src/pynguin/resources/__init__.py +0 -7
  616. pynguin-0.43.0/src/pynguin/resources/coverage-template.html +0 -80
  617. pynguin-0.43.0/src/pynguin/slicer/__init__.py +0 -7
  618. pynguin-0.43.0/src/pynguin/slicer/dynamicslicer.py +0 -909
  619. pynguin-0.43.0/src/pynguin/slicer/executedinstruction.py +0 -144
  620. pynguin-0.43.0/src/pynguin/slicer/executionflowbuilder.py +0 -610
  621. pynguin-0.43.0/src/pynguin/slicer/stack/__init__.py +0 -9
  622. pynguin-0.43.0/src/pynguin/slicer/stack/stacksimulation.py +0 -232
  623. pynguin-0.43.0/src/pynguin/slicer/statementslicingobserver.py +0 -79
  624. pynguin-0.43.0/src/pynguin/testcase/__init__.py +0 -7
  625. pynguin-0.43.0/src/pynguin/testcase/defaulttestcase.py +0 -218
  626. pynguin-0.43.0/src/pynguin/testcase/execution.py +0 -2207
  627. pynguin-0.43.0/src/pynguin/testcase/export.py +0 -231
  628. pynguin-0.43.0/src/pynguin/testcase/statement.py +0 -2523
  629. pynguin-0.43.0/src/pynguin/testcase/statement_to_ast.py +0 -486
  630. pynguin-0.43.0/src/pynguin/testcase/testcase.py +0 -355
  631. pynguin-0.43.0/src/pynguin/testcase/testcase_to_ast.py +0 -146
  632. pynguin-0.43.0/src/pynguin/testcase/testcasevisitor.py +0 -22
  633. pynguin-0.43.0/src/pynguin/testcase/testfactory.py +0 -1763
  634. pynguin-0.43.0/src/pynguin/testcase/variablereference.py +0 -497
  635. pynguin-0.43.0/src/pynguin/utils/__init__.py +0 -7
  636. pynguin-0.43.0/src/pynguin/utils/ast_util.py +0 -219
  637. pynguin-0.43.0/src/pynguin/utils/atomicinteger.py +0 -67
  638. pynguin-0.43.0/src/pynguin/utils/collection_utils.py +0 -24
  639. pynguin-0.43.0/src/pynguin/utils/configuration_writer.py +0 -126
  640. pynguin-0.43.0/src/pynguin/utils/controlflowdistance.py +0 -218
  641. pynguin-0.43.0/src/pynguin/utils/exceptions.py +0 -60
  642. pynguin-0.43.0/src/pynguin/utils/generic/__init__.py +0 -7
  643. pynguin-0.43.0/src/pynguin/utils/generic/genericaccessibleobject.py +0 -587
  644. pynguin-0.43.0/src/pynguin/utils/llm.py +0 -161
  645. pynguin-0.43.0/src/pynguin/utils/mirror.py +0 -19
  646. pynguin-0.43.0/src/pynguin/utils/mutation_utils.py +0 -209
  647. pynguin-0.43.0/src/pynguin/utils/namingscope.py +0 -192
  648. pynguin-0.43.0/src/pynguin/utils/orderedset.py +0 -459
  649. pynguin-0.43.0/src/pynguin/utils/pynguinml/__init__.py +0 -7
  650. pynguin-0.43.0/src/pynguin/utils/pynguinml/ml_parsing_utils.py +0 -416
  651. pynguin-0.43.0/src/pynguin/utils/pynguinml/ml_testfactory_utils.py +0 -532
  652. pynguin-0.43.0/src/pynguin/utils/pynguinml/ml_testing_resources.py +0 -297
  653. pynguin-0.43.0/src/pynguin/utils/pynguinml/mlparameter.py +0 -575
  654. pynguin-0.43.0/src/pynguin/utils/pynguinml/np_rng.py +0 -43
  655. pynguin-0.43.0/src/pynguin/utils/randomness.py +0 -192
  656. pynguin-0.43.0/src/pynguin/utils/report.py +0 -412
  657. pynguin-0.43.0/src/pynguin/utils/statistics/__init__.py +0 -7
  658. pynguin-0.43.0/src/pynguin/utils/statistics/outputvariablefactory.py +0 -320
  659. pynguin-0.43.0/src/pynguin/utils/statistics/runtimevariable.py +0 -234
  660. pynguin-0.43.0/src/pynguin/utils/statistics/statisticsbackend.py +0 -77
  661. pynguin-0.43.0/src/pynguin/utils/statistics/statisticsobserver.py +0 -90
  662. pynguin-0.43.0/src/pynguin/utils/statistics/stats.py +0 -474
  663. pynguin-0.43.0/src/pynguin/utils/type_utils.py +0 -372
  664. pynguin-0.43.0/src/pynguin/utils/typeevalpy_json_schema.py +0 -341
  665. pynguin-0.43.0/src/pynguin/utils/typetracing.py +0 -758
  666. pynguin-0.43.0/tests/__init__.py +0 -6
  667. pynguin-0.43.0/tests/analyses/__init__.py +0 -6
  668. pynguin-0.43.0/tests/analyses/test_constants.py +0 -100
  669. pynguin-0.43.0/tests/analyses/test_initialpopulationseeding.py +0 -275
  670. pynguin-0.43.0/tests/analyses/test_module.py +0 -674
  671. pynguin-0.43.0/tests/analyses/test_modulecomplexity.py +0 -156
  672. pynguin-0.43.0/tests/analyses/test_seeding.py +0 -63
  673. pynguin-0.43.0/tests/analyses/test_staticconstantseeding.py +0 -30
  674. pynguin-0.43.0/tests/analyses/test_syntaxtree.py +0 -374
  675. pynguin-0.43.0/tests/analyses/test_typesystem.py +0 -942
  676. pynguin-0.43.0/tests/assertion/__init__.py +0 -6
  677. pynguin-0.43.0/tests/assertion/mutation_analysis/__init__.py +0 -6
  678. pynguin-0.43.0/tests/assertion/mutation_analysis/operators/test_arithmetic.py +0 -291
  679. pynguin-0.43.0/tests/assertion/mutation_analysis/operators/test_exception.py +0 -130
  680. pynguin-0.43.0/tests/assertion/mutation_analysis/operators/test_inheritance.py +0 -334
  681. pynguin-0.43.0/tests/assertion/mutation_analysis/operators/test_logical.py +0 -497
  682. pynguin-0.43.0/tests/assertion/mutation_analysis/operators/test_loop.py +0 -177
  683. pynguin-0.43.0/tests/assertion/mutation_analysis/operators/test_misc.py +0 -258
  684. pynguin-0.43.0/tests/assertion/mutation_analysis/test_controller.py +0 -76
  685. pynguin-0.43.0/tests/assertion/mutation_analysis/test_mutators.py +0 -151
  686. pynguin-0.43.0/tests/assertion/mutation_analysis/test_strategies.py +0 -195
  687. pynguin-0.43.0/tests/assertion/test_assertion.py +0 -168
  688. pynguin-0.43.0/tests/assertion/test_assertion_generation_integration.py +0 -348
  689. pynguin-0.43.0/tests/assertion/test_assertion_to_ast.py +0 -123
  690. pynguin-0.43.0/tests/assertion/test_assertion_trace.py +0 -83
  691. pynguin-0.43.0/tests/assertion/test_assertiongenerator.py +0 -32
  692. pynguin-0.43.0/tests/assertion/test_assertiontraceobserver.py +0 -52
  693. pynguin-0.43.0/tests/assertion/test_llmassertiongenerator.py +0 -216
  694. pynguin-0.43.0/tests/conftest.py +0 -686
  695. pynguin-0.43.0/tests/fixtures/__init__.py +0 -6
  696. pynguin-0.43.0/tests/fixtures/accessibles/__init__.py +0 -6
  697. pynguin-0.43.0/tests/fixtures/accessibles/accessible.py +0 -19
  698. pynguin-0.43.0/tests/fixtures/branchcoverage/__init__.py +0 -6
  699. pynguin-0.43.0/tests/fixtures/branchcoverage/nestedbranches.py +0 -16
  700. pynguin-0.43.0/tests/fixtures/branchcoverage/nobranches.py +0 -22
  701. pynguin-0.43.0/tests/fixtures/branchcoverage/simplenesting.py +0 -15
  702. pynguin-0.43.0/tests/fixtures/branchcoverage/singlebranches.py +0 -12
  703. pynguin-0.43.0/tests/fixtures/branchcoverage/twomethodsinglebranches.py +0 -18
  704. pynguin-0.43.0/tests/fixtures/c/__init__.py +0 -6
  705. pynguin-0.43.0/tests/fixtures/c/my_ctypes.py +0 -7
  706. pynguin-0.43.0/tests/fixtures/cluster/__init__.py +0 -6
  707. pynguin-0.43.0/tests/fixtures/cluster/abstract.py +0 -14
  708. pynguin-0.43.0/tests/fixtures/cluster/alias_module.py +0 -14
  709. pynguin-0.43.0/tests/fixtures/cluster/async_class_gen.py +0 -9
  710. pynguin-0.43.0/tests/fixtures/cluster/async_class_method.py +0 -9
  711. pynguin-0.43.0/tests/fixtures/cluster/async_func.py +0 -8
  712. pynguin-0.43.0/tests/fixtures/cluster/async_gen.py +0 -8
  713. pynguin-0.43.0/tests/fixtures/cluster/attributes.py +0 -19
  714. pynguin-0.43.0/tests/fixtures/cluster/blacklist.py +0 -38
  715. pynguin-0.43.0/tests/fixtures/cluster/blacklist_transitive.py +0 -16
  716. pynguin-0.43.0/tests/fixtures/cluster/comments.py +0 -91
  717. pynguin-0.43.0/tests/fixtures/cluster/complex_dependencies.py +0 -12
  718. pynguin-0.43.0/tests/fixtures/cluster/complex_dependency.py +0 -23
  719. pynguin-0.43.0/tests/fixtures/cluster/conditional_import.py +0 -16
  720. pynguin-0.43.0/tests/fixtures/cluster/dependency.py +0 -11
  721. pynguin-0.43.0/tests/fixtures/cluster/diamond_bottom.py +0 -13
  722. pynguin-0.43.0/tests/fixtures/cluster/diamond_left.py +0 -13
  723. pynguin-0.43.0/tests/fixtures/cluster/diamond_right.py +0 -13
  724. pynguin-0.43.0/tests/fixtures/cluster/diamond_top.py +0 -13
  725. pynguin-0.43.0/tests/fixtures/cluster/enums.py +0 -22
  726. pynguin-0.43.0/tests/fixtures/cluster/import_dependency.py +0 -21
  727. pynguin-0.43.0/tests/fixtures/cluster/inheritance.py +0 -14
  728. pynguin-0.43.0/tests/fixtures/cluster/lambda.py +0 -11
  729. pynguin-0.43.0/tests/fixtures/cluster/nested_functions.py +0 -19
  730. pynguin-0.43.0/tests/fixtures/cluster/no_any_annotations.py +0 -23
  731. pynguin-0.43.0/tests/fixtures/cluster/no_dependencies.py +0 -22
  732. pynguin-0.43.0/tests/fixtures/cluster/overridden_inherited_methods.py +0 -23
  733. pynguin-0.43.0/tests/fixtures/cluster/simple_dependencies.py +0 -12
  734. pynguin-0.43.0/tests/fixtures/cluster/typing_parameters.py +0 -22
  735. pynguin-0.43.0/tests/fixtures/cluster/uses_async_dependency.py +0 -17
  736. pynguin-0.43.0/tests/fixtures/crash/__init__.py +0 -6
  737. pynguin-0.43.0/tests/fixtures/crash/partly_crashing.py +0 -15
  738. pynguin-0.43.0/tests/fixtures/crash/seg_fault.py +0 -11
  739. pynguin-0.43.0/tests/fixtures/duckmock/__init__.py +0 -6
  740. pynguin-0.43.0/tests/fixtures/duckmock/complex.py +0 -97
  741. pynguin-0.43.0/tests/fixtures/errors/__init__.py +0 -6
  742. pynguin-0.43.0/tests/fixtures/errors/import_error.py +0 -11
  743. pynguin-0.43.0/tests/fixtures/examples/__init__.py +0 -6
  744. pynguin-0.43.0/tests/fixtures/examples/assertions.py +0 -27
  745. pynguin-0.43.0/tests/fixtures/examples/basket.py +0 -13
  746. pynguin-0.43.0/tests/fixtures/examples/calculator.py +0 -61
  747. pynguin-0.43.0/tests/fixtures/examples/calculator_simple.py +0 -46
  748. pynguin-0.43.0/tests/fixtures/examples/collections.py +0 -43
  749. pynguin-0.43.0/tests/fixtures/examples/difficult.py +0 -23
  750. pynguin-0.43.0/tests/fixtures/examples/dummies.py +0 -14
  751. pynguin-0.43.0/tests/fixtures/examples/dynamosa_example.py +0 -17
  752. pynguin-0.43.0/tests/fixtures/examples/enums.py +0 -16
  753. pynguin-0.43.0/tests/fixtures/examples/exceptions.py +0 -17
  754. pynguin-0.43.0/tests/fixtures/examples/flaky.py +0 -22
  755. pynguin-0.43.0/tests/fixtures/examples/impossible.py +0 -11
  756. pynguin-0.43.0/tests/fixtures/examples/inheritance.py +0 -25
  757. pynguin-0.43.0/tests/fixtures/examples/loop.py +0 -19
  758. pynguin-0.43.0/tests/fixtures/examples/module_alias.py +0 -10
  759. pynguin-0.43.0/tests/fixtures/examples/monkey.py +0 -45
  760. pynguin-0.43.0/tests/fixtures/examples/nested.py +0 -14
  761. pynguin-0.43.0/tests/fixtures/examples/objects.py +0 -27
  762. pynguin-0.43.0/tests/fixtures/examples/private_methods.py +0 -16
  763. pynguin-0.43.0/tests/fixtures/examples/queue.py +0 -43
  764. pynguin-0.43.0/tests/fixtures/examples/simple.py +0 -11
  765. pynguin-0.43.0/tests/fixtures/examples/triangle.py +0 -15
  766. pynguin-0.43.0/tests/fixtures/examples/type_inference.py +0 -14
  767. pynguin-0.43.0/tests/fixtures/examples/type_tracing/__init__.py +0 -6
  768. pynguin-0.43.0/tests/fixtures/examples/type_tracing/geometry.py +0 -17
  769. pynguin-0.43.0/tests/fixtures/examples/type_tracing/invoice.py +0 -17
  770. pynguin-0.43.0/tests/fixtures/examples/type_tracing/large_test_cluster.py +0 -59
  771. pynguin-0.43.0/tests/fixtures/examples/type_tracing/mixed.py +0 -58
  772. pynguin-0.43.0/tests/fixtures/grammar/__init__.py +0 -6
  773. pynguin-0.43.0/tests/fixtures/grammar/parameters.py +0 -14
  774. pynguin-0.43.0/tests/fixtures/instrumentation/__init__.py +0 -6
  775. pynguin-0.43.0/tests/fixtures/instrumentation/comparison.py +0 -74
  776. pynguin-0.43.0/tests/fixtures/instrumentation/inherited.py +0 -15
  777. pynguin-0.43.0/tests/fixtures/instrumentation/mixed.py +0 -62
  778. pynguin-0.43.0/tests/fixtures/instrumentation/simple.py +0 -78
  779. pynguin-0.43.0/tests/fixtures/linecoverage/__init__.py +0 -6
  780. pynguin-0.43.0/tests/fixtures/linecoverage/artificial_none.py +0 -39
  781. pynguin-0.43.0/tests/fixtures/linecoverage/emptyfile.py +0 -6
  782. pynguin-0.43.0/tests/fixtures/linecoverage/exception.py +0 -11
  783. pynguin-0.43.0/tests/fixtures/linecoverage/list.py +0 -10
  784. pynguin-0.43.0/tests/fixtures/linecoverage/plus.py +0 -18
  785. pynguin-0.43.0/tests/fixtures/linecoverage/setter_getter.py +0 -16
  786. pynguin-0.43.0/tests/fixtures/mutation/__init__.py +0 -6
  787. pynguin-0.43.0/tests/fixtures/mutation/exception.py +0 -12
  788. pynguin-0.43.0/tests/fixtures/mutation/expected.py +0 -9
  789. pynguin-0.43.0/tests/fixtures/mutation/mutation.py +0 -18
  790. pynguin-0.43.0/tests/fixtures/mutation/timeout.py +0 -13
  791. pynguin-0.43.0/tests/fixtures/programgraph/__init__.py +0 -6
  792. pynguin-0.43.0/tests/fixtures/programgraph/samples.py +0 -12
  793. pynguin-0.43.0/tests/fixtures/programgraph/whileloop.py +0 -13
  794. pynguin-0.43.0/tests/fixtures/programgraph/yield_fun.py +0 -12
  795. pynguin-0.43.0/tests/fixtures/regression/__init__.py +0 -6
  796. pynguin-0.43.0/tests/fixtures/regression/argparse_sys_exit.py +0 -16
  797. pynguin-0.43.0/tests/fixtures/regression/custom_error.py +0 -7
  798. pynguin-0.43.0/tests/fixtures/regression/not_main.py +0 -16
  799. pynguin-0.43.0/tests/fixtures/seeding/__init__.py +0 -6
  800. pynguin-0.43.0/tests/fixtures/seeding/dynamicseeding/__init__.py +0 -6
  801. pynguin-0.43.0/tests/fixtures/seeding/dynamicseeding/dynamicseedingdummies.py +0 -12
  802. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/__init__.py +0 -6
  803. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/dummycontainer.py +0 -82
  804. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/__init__.py +0 -6
  805. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/assertseed_test_.py +0 -27
  806. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/classseed_test_.py +0 -15
  807. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/collfuncseed_test_.py +0 -37
  808. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/collseed_test_.py +0 -31
  809. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/nestedseed_test_.py +0 -14
  810. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/notknowncall_test_.py +0 -18
  811. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/notprimseed_test_.py +0 -14
  812. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/primitiveseed_test_.py +0 -58
  813. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/triangleseed_test_.py +0 -21
  814. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/wrongassignseed_test_.py +0 -11
  815. pynguin-0.43.0/tests/fixtures/seeding/initialpopulationseeding/seedmodules/wrongfunctionnameseed_test_.py +0 -13
  816. pynguin-0.43.0/tests/fixtures/seeding/staticconstantseeding/__init__.py +0 -6
  817. pynguin-0.43.0/tests/fixtures/seeding/staticconstantseeding/dummy/__init__.py +0 -6
  818. pynguin-0.43.0/tests/fixtures/seeding/staticconstantseeding/dummy/dummy.py +0 -24
  819. pynguin-0.43.0/tests/fixtures/slicer/__init__.py +0 -6
  820. pynguin-0.43.0/tests/fixtures/slicer/attribute_dependencies.py +0 -23
  821. pynguin-0.43.0/tests/fixtures/slicer/closure.py +0 -19
  822. pynguin-0.43.0/tests/fixtures/slicer/generator.py +0 -37
  823. pynguin-0.43.0/tests/fixtures/slicer/immutable_attribute_dependency.py +0 -18
  824. pynguin-0.43.0/tests/fixtures/slicer/import_star_def.py +0 -10
  825. pynguin-0.43.0/tests/fixtures/slicer/import_star_main.py +0 -15
  826. pynguin-0.43.0/tests/fixtures/slicer/partial_cover_dependency.py +0 -22
  827. pynguin-0.43.0/tests/fixtures/slicer/simple_call.py +0 -17
  828. pynguin-0.43.0/tests/fixtures/slicer/simple_call_arg.py +0 -21
  829. pynguin-0.43.0/tests/fixtures/test.conf.license +0 -3
  830. pynguin-0.43.0/tests/fixtures/tests/typeinference/test_stubstrategy.pyi +0 -17
  831. pynguin-0.43.0/tests/fixtures/type_tracing/__init__.py +0 -6
  832. pynguin-0.43.0/tests/fixtures/type_tracing/guess_params.py +0 -11
  833. pynguin-0.43.0/tests/fixtures/type_tracing/return_types.py +0 -28
  834. pynguin-0.43.0/tests/fixtures/type_tracing/union_type.py +0 -9
  835. pynguin-0.43.0/tests/fixtures/types/__init__.py +0 -6
  836. pynguin-0.43.0/tests/fixtures/types/outside.py +0 -16
  837. pynguin-0.43.0/tests/fixtures/types/subtyping.py +0 -12
  838. pynguin-0.43.0/tests/fixtures/types/symbols.py +0 -53
  839. pynguin-0.43.0/tests/ga/__init__.py +0 -6
  840. pynguin-0.43.0/tests/ga/algorithms/__init__.py +0 -7
  841. pynguin-0.43.0/tests/ga/algorithms/test_archive.py +0 -417
  842. pynguin-0.43.0/tests/ga/algorithms/test_dynamosaalgorithm.py +0 -82
  843. pynguin-0.43.0/tests/ga/algorithms/test_generationalgorithm.py +0 -32
  844. pynguin-0.43.0/tests/ga/algorithms/test_integration_mosaalgorithm.py +0 -70
  845. pynguin-0.43.0/tests/ga/algorithms/test_integration_varioussearchalgorithms.py +0 -127
  846. pynguin-0.43.0/tests/ga/algorithms/test_llmosalgorithm.py +0 -435
  847. pynguin-0.43.0/tests/ga/algorithms/test_mioalgorithm.py +0 -68
  848. pynguin-0.43.0/tests/ga/algorithms/test_mosaalgorithm.py +0 -53
  849. pynguin-0.43.0/tests/ga/algorithms/test_randomalgorithm.py +0 -157
  850. pynguin-0.43.0/tests/ga/operators/__init__.py +0 -6
  851. pynguin-0.43.0/tests/ga/operators/crossover/__init__.py +0 -6
  852. pynguin-0.43.0/tests/ga/operators/crossover/test_singlepointrelativecrossover.py +0 -39
  853. pynguin-0.43.0/tests/ga/operators/ranking/__init__.py +0 -6
  854. pynguin-0.43.0/tests/ga/operators/ranking/test_rankingfunction.py +0 -73
  855. pynguin-0.43.0/tests/ga/operators/selection/__init__.py +0 -6
  856. pynguin-0.43.0/tests/ga/operators/selection/test_rankselection.py +0 -16
  857. pynguin-0.43.0/tests/ga/operators/selection/test_selection.py +0 -30
  858. pynguin-0.43.0/tests/ga/operators/selection/test_tournamentselection.py +0 -21
  859. pynguin-0.43.0/tests/ga/operators/test_dominancecomparator.py +0 -49
  860. pynguin-0.43.0/tests/ga/operators/test_preferencesortingcomparator.py +0 -25
  861. pynguin-0.43.0/tests/ga/stoppingconditions/__init__.py +0 -6
  862. pynguin-0.43.0/tests/ga/stoppingconditions/test_coverageplateaustoppingcondition.py +0 -65
  863. pynguin-0.43.0/tests/ga/stoppingconditions/test_maxcoveragestoppingcondition.py +0 -61
  864. pynguin-0.43.0/tests/ga/stoppingconditions/test_maxiterationsstoppingcondition.py +0 -43
  865. pynguin-0.43.0/tests/ga/stoppingconditions/test_maxmemorystoppingcondition.py +0 -43
  866. pynguin-0.43.0/tests/ga/stoppingconditions/test_maxstatementstoppingcondition.py +0 -47
  867. pynguin-0.43.0/tests/ga/stoppingconditions/test_maxtestsstoppingcondition.py +0 -31
  868. pynguin-0.43.0/tests/ga/stoppingconditions/test_maxtimestoppingcondition.py +0 -43
  869. pynguin-0.43.0/tests/ga/stoppingconditions/test_minimumcoverageplateaustoppingcondition.py +0 -88
  870. pynguin-0.43.0/tests/ga/stoppingconditions/test_stoppingcondition.py +0 -39
  871. pynguin-0.43.0/tests/ga/test_chromosome.py +0 -63
  872. pynguin-0.43.0/tests/ga/test_chromosomefactory.py +0 -84
  873. pynguin-0.43.0/tests/ga/test_computations.py +0 -197
  874. pynguin-0.43.0/tests/ga/test_computations_cache.py +0 -181
  875. pynguin-0.43.0/tests/ga/test_computations_fitness_utilities.py +0 -293
  876. pynguin-0.43.0/tests/ga/test_coveragegoals.py +0 -468
  877. pynguin-0.43.0/tests/ga/test_generationalgorithmfactory.py +0 -98
  878. pynguin-0.43.0/tests/ga/test_llmtestsuitechromosomefactory.py +0 -190
  879. pynguin-0.43.0/tests/ga/test_postprocess.py +0 -1081
  880. pynguin-0.43.0/tests/ga/test_testcasechromosome.py +0 -340
  881. pynguin-0.43.0/tests/ga/test_testcasefactory.py +0 -35
  882. pynguin-0.43.0/tests/ga/test_testsuitechromosome.py +0 -220
  883. pynguin-0.43.0/tests/instrumentation/__init__.py +0 -6
  884. pynguin-0.43.0/tests/instrumentation/test_adapters.py +0 -1004
  885. pynguin-0.43.0/tests/instrumentation/test_cfg.py +0 -881
  886. pynguin-0.43.0/tests/instrumentation/test_controldependencegraph.py +0 -241
  887. pynguin-0.43.0/tests/instrumentation/test_machinery.py +0 -52
  888. pynguin-0.43.0/tests/instrumentation/test_programgraph.py +0 -115
  889. pynguin-0.43.0/tests/instrumentation/test_tracer.py +0 -592
  890. pynguin-0.43.0/tests/instrumentation/test_version.py +0 -205
  891. pynguin-0.43.0/tests/large_language_model/helpers/test_testcasereferencecopier.py +0 -190
  892. pynguin-0.43.0/tests/large_language_model/parsing/test_astscoping.py +0 -688
  893. pynguin-0.43.0/tests/large_language_model/parsing/test_helpers.py +0 -344
  894. pynguin-0.43.0/tests/large_language_model/prompts/test_testcasegenerationprompt.py +0 -114
  895. pynguin-0.43.0/tests/large_language_model/prompts/test_uncovered_targets_prompt.py +0 -93
  896. pynguin-0.43.0/tests/large_language_model/test_caching.py +0 -111
  897. pynguin-0.43.0/tests/large_language_model/test_llm_caching.py +0 -55
  898. pynguin-0.43.0/tests/large_language_model/test_llm_deserializer.py +0 -652
  899. pynguin-0.43.0/tests/large_language_model/test_llmagent.py +0 -105
  900. pynguin-0.43.0/tests/large_language_model/test_llmagent_extended.py +0 -417
  901. pynguin-0.43.0/tests/large_language_model/test_llmtestcasehandler.py +0 -110
  902. pynguin-0.43.0/tests/large_language_model/test_llmtestcasehandler_coverage.py +0 -50
  903. pynguin-0.43.0/tests/large_language_model/test_rewriter.py +0 -514
  904. pynguin-0.43.0/tests/slicer/__init__.py +0 -6
  905. pynguin-0.43.0/tests/slicer/test_assertionslicer.py +0 -391
  906. pynguin-0.43.0/tests/slicer/test_dependencies.py +0 -438
  907. pynguin-0.43.0/tests/slicer/test_expected_failures.py +0 -626
  908. pynguin-0.43.0/tests/slicer/test_language_features.py +0 -1397
  909. pynguin-0.43.0/tests/slicer/test_statementslicer.py +0 -319
  910. pynguin-0.43.0/tests/slicer/util.py +0 -195
  911. pynguin-0.43.0/tests/test___main__.py +0 -20
  912. pynguin-0.43.0/tests/test_cli.py +0 -320
  913. pynguin-0.43.0/tests/test_generator.py +0 -364
  914. pynguin-0.43.0/tests/testcase/__init__.py +0 -6
  915. pynguin-0.43.0/tests/testcase/execution/__init__.py +0 -6
  916. pynguin-0.43.0/tests/testcase/execution/test_executedinstruction.py +0 -22
  917. pynguin-0.43.0/tests/testcase/execution/test_executioncontext.py +0 -45
  918. pynguin-0.43.0/tests/testcase/execution/test_executionresult.py +0 -55
  919. pynguin-0.43.0/tests/testcase/execution/test_executiontrace.py +0 -84
  920. pynguin-0.43.0/tests/testcase/execution/test_moduleprovider.py +0 -74
  921. pynguin-0.43.0/tests/testcase/execution/test_subprocesstestcaseexecutor.py +0 -252
  922. pynguin-0.43.0/tests/testcase/execution/test_subprocesstestcaseexecutor_differential.py +0 -38
  923. pynguin-0.43.0/tests/testcase/execution/test_subprocesstestcaseexecutor_integration.py +0 -135
  924. pynguin-0.43.0/tests/testcase/execution/test_testcaseexecutor_integration.py +0 -202
  925. pynguin-0.43.0/tests/testcase/execution/test_typetracing.py +0 -117
  926. pynguin-0.43.0/tests/testcase/export/__init__.py +0 -6
  927. pynguin-0.43.0/tests/testcase/export/conftest.py +0 -94
  928. pynguin-0.43.0/tests/testcase/export/test_export.py +0 -123
  929. pynguin-0.43.0/tests/testcase/statements/__init__.py +0 -6
  930. pynguin-0.43.0/tests/testcase/statements/test_assignmentstatement.py +0 -126
  931. pynguin-0.43.0/tests/testcase/statements/test_collectionstatements.py +0 -113
  932. pynguin-0.43.0/tests/testcase/statements/test_fieldstatement.py +0 -171
  933. pynguin-0.43.0/tests/testcase/statements/test_parameterizedstatements.py +0 -549
  934. pynguin-0.43.0/tests/testcase/statements/test_primitivestatements.py +0 -643
  935. pynguin-0.43.0/tests/testcase/test_ast_assign_statement.py +0 -385
  936. pynguin-0.43.0/tests/testcase/test_benchmark.py +0 -64
  937. pynguin-0.43.0/tests/testcase/test_defaulttestcase.py +0 -505
  938. pynguin-0.43.0/tests/testcase/test_statement_to_ast.py +0 -666
  939. pynguin-0.43.0/tests/testcase/test_testcase_integration.py +0 -161
  940. pynguin-0.43.0/tests/testcase/test_testcase_to_ast_integration.py +0 -188
  941. pynguin-0.43.0/tests/testcase/test_testfactory.py +0 -1027
  942. pynguin-0.43.0/tests/testcase/variable/__init__.py +0 -6
  943. pynguin-0.43.0/tests/testcase/variable/test_variablereference.py +0 -318
  944. pynguin-0.43.0/tests/testutils.py +0 -187
  945. pynguin-0.43.0/tests/utils/__init__.py +0 -6
  946. pynguin-0.43.0/tests/utils/generic/__init__.py +0 -6
  947. pynguin-0.43.0/tests/utils/generic/test_genericaccessibleobject.py +0 -191
  948. pynguin-0.43.0/tests/utils/pynguinml/__init__.py +0 -6
  949. pynguin-0.43.0/tests/utils/pynguinml/test_ml_parsing_utils.py +0 -293
  950. pynguin-0.43.0/tests/utils/pynguinml/test_ml_testfactory_utils.py +0 -380
  951. pynguin-0.43.0/tests/utils/pynguinml/test_ml_testing_resources.py +0 -262
  952. pynguin-0.43.0/tests/utils/pynguinml/test_mlparameter.py +0 -207
  953. pynguin-0.43.0/tests/utils/pynguinml/test_np_rng.py +0 -17
  954. pynguin-0.43.0/tests/utils/pynguinml/test_pynguinml_integration.py +0 -60
  955. pynguin-0.43.0/tests/utils/stats/__init__.py +0 -6
  956. pynguin-0.43.0/tests/utils/stats/test_outputvariablefactory.py +0 -186
  957. pynguin-0.43.0/tests/utils/stats/test_runtimevariable.py +0 -41
  958. pynguin-0.43.0/tests/utils/stats/test_searchstatistics.py +0 -193
  959. pynguin-0.43.0/tests/utils/stats/test_statistics.py +0 -18
  960. pynguin-0.43.0/tests/utils/stats/test_statisticsbackend.py +0 -52
  961. pynguin-0.43.0/tests/utils/test_atomicinteger.py +0 -37
  962. pynguin-0.43.0/tests/utils/test_collection_utils.py +0 -14
  963. pynguin-0.43.0/tests/utils/test_configuration_writer.py +0 -485
  964. pynguin-0.43.0/tests/utils/test_controlflowdistance.py +0 -131
  965. pynguin-0.43.0/tests/utils/test_exceptions.py +0 -44
  966. pynguin-0.43.0/tests/utils/test_llm.py +0 -38
  967. pynguin-0.43.0/tests/utils/test_mirror.py +0 -19
  968. pynguin-0.43.0/tests/utils/test_mutation_utils.py +0 -32
  969. pynguin-0.43.0/tests/utils/test_namingscope.py +0 -131
  970. pynguin-0.43.0/tests/utils/test_orderedset.py +0 -270
  971. pynguin-0.43.0/tests/utils/test_randomness.py +0 -98
  972. pynguin-0.43.0/tests/utils/test_report.py +0 -553
  973. pynguin-0.43.0/tests/utils/test_type_utils.py +0 -295
  974. pynguin-0.43.0/tests/utils/test_typeevalpy_json_schema.py +0 -418
  975. pynguin-0.43.0/tests/utils/test_typetracing.py +0 -655
  976. pynguin-0.43.0/tests/utils/utils.py +0 -29
  977. {pynguin-0.43.0 → pynguin-0.45.0}/LICENSE.rst +0 -0
  978. {pynguin-0.43.0 → pynguin-0.45.0}/LICENSES/Apache-2.0.txt +0 -0
  979. {pynguin-0.43.0 → pynguin-0.45.0}/LICENSES/BSD-2-Clause.txt +0 -0
  980. {pynguin-0.43.0 → pynguin-0.45.0}/LICENSES/CC-BY-4.0.txt +0 -0
  981. {pynguin-0.43.0 → pynguin-0.45.0}/LICENSES/CC0-1.0.txt +0 -0
  982. {pynguin-0.43.0 → pynguin-0.45.0}/LICENSES/MIT.txt +0 -0
  983. {pynguin-0.43.0 → pynguin-0.45.0}/src/pynguin/large_language_model/__init__.py +0 -0
  984. {pynguin-0.43.0 → pynguin-0.45.0}/src/pynguin/large_language_model/caching.py +0 -0
  985. {pynguin-0.43.0 → pynguin-0.45.0}/src/pynguin/large_language_model/helpers/__init__.py +0 -0
  986. {pynguin-0.43.0 → pynguin-0.45.0}/src/pynguin/large_language_model/parsing/__init__.py +0 -0
  987. {pynguin-0.43.0 → pynguin-0.45.0}/src/pynguin/large_language_model/prompts/__init__.py +0 -0
  988. {pynguin-0.43.0 → pynguin-0.45.0}/src/pynguin/large_language_model/prompts/assertiongenerationprompt.py +0 -0
  989. {pynguin-0.43.0 → pynguin-0.45.0}/src/pynguin/large_language_model/prompts/prompt.py +0 -0
  990. {pynguin-0.43.0 → pynguin-0.45.0}/tests/assertion/mutation_analysis/operators/__init__.py +0 -0
  991. {pynguin-0.43.0 → pynguin-0.45.0}/tests/assertion/mutation_analysis/operators/test_decorator.py +0 -0
  992. {pynguin-0.43.0 → pynguin-0.45.0}/tests/fixtures/seeding/staticconstantseeding/dummy/empty.so +0 -0
  993. {pynguin-0.43.0 → pynguin-0.45.0}/tests/fixtures/test.conf +0 -0
  994. {pynguin-0.43.0 → pynguin-0.45.0}/tests/large_language_model/__init__.py +0 -0
  995. {pynguin-0.43.0 → pynguin-0.45.0}/tests/large_language_model/prompts/__init__.py +0 -0
  996. {pynguin-0.43.0 → pynguin-0.45.0}/tests/large_language_model/prompts/test_assertiongenerationprompt.py +0 -0
  997. /pynguin-0.43.0/tests/testcase/execution/test_executionmocking.py → /pynguin-0.45.0/tests/resources/__init__.py +0 -0
@@ -0,0 +1,234 @@
1
+ Metadata-Version: 2.3
2
+ Name: pynguin
3
+ Version: 0.45.0
4
+ Summary: Pynguin is a tool for automated unit test generation for Python
5
+ License: MIT
6
+ Keywords: unit test,random testing,search based,test generation
7
+ Author: Stephan Lukasczyk
8
+ Author-email: stephan@pynguin.eu
9
+ Requires-Python: >=3.10,<3.15
10
+ Classifier: Development Status :: 3 - Alpha
11
+ Classifier: Environment :: Console
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: Intended Audience :: Education
14
+ Classifier: Intended Audience :: Science/Research
15
+ Classifier: License :: OSI Approved :: MIT License
16
+ Classifier: Operating System :: MacOS :: MacOS X
17
+ Classifier: Operating System :: Microsoft :: Windows
18
+ Classifier: Operating System :: POSIX :: Linux
19
+ Classifier: Programming Language :: Python :: 3
20
+ Classifier: Programming Language :: Python :: 3.10
21
+ Classifier: Programming Language :: Python :: 3.11
22
+ Classifier: Programming Language :: Python :: 3.12
23
+ Classifier: Programming Language :: Python :: 3.13
24
+ Classifier: Programming Language :: Python :: 3.14
25
+ Classifier: Programming Language :: Python :: Implementation :: CPython
26
+ Classifier: Topic :: Education :: Testing
27
+ Classifier: Topic :: Software Development :: Testing
28
+ Classifier: Topic :: Software Development :: Testing :: Unit
29
+ Classifier: Typing :: Typed
30
+ Provides-Extra: fandango-faker
31
+ Provides-Extra: numpy
32
+ Provides-Extra: openai
33
+ Provides-Extra: typing
34
+ Requires-Dist: Jinja2 (>=3.1.6,<4.0.0)
35
+ Requires-Dist: Pygments (>=2.19.2,<3.0.0)
36
+ Requires-Dist: asciitree (>=0.3.3,<0.4.0)
37
+ Requires-Dist: astroid (>=4.0.1,<5.0.0)
38
+ Requires-Dist: black (>=25.1.0,<26.0.0)
39
+ Requires-Dist: bytecode (==0.17.0)
40
+ Requires-Dist: dill (>=0.4.0,<0.5.0)
41
+ Requires-Dist: faker (>=37.3.0,<38.0.0) ; extra == "fandango-faker"
42
+ Requires-Dist: fandango-fuzzer (>=0.8.2,<0.9.0) ; extra == "fandango-faker"
43
+ Requires-Dist: libcst (>=1.7.0,<2.0.0)
44
+ Requires-Dist: multiprocess (>=0.70.18,<0.71.0)
45
+ Requires-Dist: mypy (>=1.15.0,<2.0.0) ; extra == "typing"
46
+ Requires-Dist: networkx (>=3.4.2,<4.0.0)
47
+ Requires-Dist: numpy (>=1.26.4,<2.0.0) ; extra == "numpy"
48
+ Requires-Dist: openai (>=1.72.0,<2.0.0) ; extra == "openai"
49
+ Requires-Dist: psutil (>=7.1.1,<8.0.0)
50
+ Requires-Dist: pytest (>=8.3.5,<9.0.0)
51
+ Requires-Dist: python-dotenv (>=1.0.0,<2.0.0) ; extra == "openai"
52
+ Requires-Dist: rich (>=14.0.0,<15.0.0)
53
+ Requires-Dist: rstr (>=3.2.2,<4.0.0)
54
+ Requires-Dist: setuptools (>=80.9.0,<81.0.0)
55
+ Requires-Dist: simple-parsing (>=0.1.7,<0.2.0)
56
+ Requires-Dist: toml (>=0.10.2,<0.11.0)
57
+ Requires-Dist: typing-extensions (>=4.12.2,<5.0.0) ; extra == "typing"
58
+ Requires-Dist: typing_inspect (>=0.9.0,<0.10.0)
59
+ Requires-Dist: xmltodict (>=0.14.2,<0.15.0) ; extra == "fandango-faker"
60
+ Project-URL: Documentation, https://pynguin.readthedocs.io
61
+ Project-URL: Homepage, https://www.pynguin.eu
62
+ Project-URL: Repository, https://github.com/se2p/pynguin
63
+ Description-Content-Type: text/markdown
64
+
65
+ <!--
66
+ SPDX-FileCopyrightText: 2019–2026 Pynguin Contributors
67
+
68
+ SPDX-License-Identifier: CC-BY-4.0
69
+ -->
70
+
71
+ # Pynguin
72
+
73
+ Pynguin (IPA: ˈpɪŋɡuiːn),
74
+ the
75
+ PYthoN
76
+ General
77
+ UnIt
78
+ test
79
+ geNerator,
80
+ is a tool that allows developers to generate unit tests automatically.
81
+
82
+ Testing software is often considered to be a tedious task.
83
+ Thus, automated generation techniques have been proposed and mature tools exist—for
84
+ statically typed languages, such as Java.
85
+ There is, however, no fully-automated tool available that produces unit tests for
86
+ general-purpose programs in a dynamically typed language.
87
+ Pynguin is, to the best of our knowledge, the first tool that fills this gap
88
+ and allows the automated generation of unit tests for Python programs.
89
+
90
+ <details>
91
+ <summary>Internal Pipeline Status</summary>
92
+
93
+ [![pipeline status](https://gitlab.infosun.fim.uni-passau.de/se2/pynguin/pynguin/badges/main/pipeline.svg)](https://gitlab.infosun.fim.uni-passau.de/se2/pynguin/pynguin/-/commits/main)
94
+ [![coverage report](https://gitlab.infosun.fim.uni-passau.de/se2/pynguin/pynguin/badges/main/coverage.svg)](https://gitlab.infosun.fim.uni-passau.de/se2/pynguin/pynguin/-/commits/main)
95
+
96
+ </details>
97
+
98
+ [![License MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
99
+ [![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
100
+ [![PyPI version](https://badge.fury.io/py/pynguin.svg)](https://badge.fury.io/py/pynguin)
101
+ [![Supported Python Versions](https://img.shields.io/pypi/pyversions/pynguin.svg)](https://github.com/se2p/pynguin)
102
+ [![Documentation Status](https://readthedocs.org/projects/pynguin/badge/?version=latest)](https://pynguin.readthedocs.io/)
103
+ [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3989840.svg)](https://doi.org/10.5281/zenodo.3989840)
104
+ [![REUSE status](https://api.reuse.software/badge/github.com/se2p/pynguin)](https://api.reuse.software/info/github.com/se2p/pynguin)
105
+ [![Downloads](https://static.pepy.tech/personalized-badge/pynguin?period=total&units=international_system&left_color=grey&right_color=blue&left_text=Downloads)](https://pepy.tech/project/pynguin)
106
+ [![SWH](https://archive.softwareheritage.org/badge/origin/https://github.com/se2p/pynguin/)](https://archive.softwareheritage.org/browse/origin/?origin_url=https://github.com/se2p/pynguin)
107
+
108
+
109
+ ![Pynguin Logo](https://raw.githubusercontent.com/se2p/pynguin/master/docs/source/_static/pynguin-logo.png "Pynguin Logo")
110
+
111
+ ## Attention
112
+
113
+ *Please Note:*
114
+
115
+ **Pynguin executes the module under test!**
116
+ As a consequence, depending on what code is in that module,
117
+ running Pynguin can cause serious harm to your computer,
118
+ for example, wipe your entire hard disk!
119
+ We recommend running Pynguin in an isolated environment;
120
+ use, for example, a Docker container to minimize the risk of damaging
121
+ your system.
122
+
123
+ **Pynguin is only a research prototype!**
124
+ It is not tailored towards production use whatsoever.
125
+ However, we would love to see Pynguin in a production-ready stage at some point;
126
+ please report your experiences in using Pynguin to us.
127
+
128
+
129
+ ## Prerequisites
130
+
131
+ Before you begin, ensure you have met the following requirements:
132
+ - You have installed Python 3.10 (the support for 3.11, 3.12, 3.13 and 3.14 is experimental).
133
+
134
+ **Attention:** Pynguin now requires at least Python 3.10! Older versions are no longer
135
+ supported!
136
+ - You have a recent Linux/macOS/Windows machine.
137
+
138
+ Please consider reading the [online documentation](https://pynguin.readthedocs.io)
139
+ to start your Pynguin adventure.
140
+
141
+ ## Installing Pynguin
142
+
143
+ Pynguin can be easily installed using the `pip` tool by typing:
144
+ ```bash
145
+ pip install pynguin
146
+ ```
147
+
148
+ Make sure that your version of `pip` is that of a supported Python version, as any
149
+ older version is not supported by Pynguin!
150
+
151
+ ## Using Pynguin
152
+
153
+ Before you continue, please read the [quick start guide](https://pynguin.readthedocs.io/latest/user/quickstart.html)
154
+
155
+ Pynguin is a command-line application.
156
+ Once you installed it to a virtual environment, you can invoke the tool by typing
157
+ `pynguin` inside this virtual environment.
158
+ Pynguin will then print a list of its command-line parameters.
159
+
160
+ A minimal full command line to invoke Pynguin could be the following,
161
+ where we assume that a project `foo` is located in `/tmp/foo`,
162
+ we want to store Pynguin's generated tests in `/tmp/testgen`,
163
+ and we want to generate tests using a whole-suite approach for the module `foo.bar`
164
+ (wrapped for better readability):
165
+ ```bash
166
+ pynguin \
167
+ --project-path /tmp/foo \
168
+ --output-path /tmp/testgen \
169
+ --module-name foo.bar
170
+ ```
171
+ Please find a more detailed example in the [quick start guide](https://pynguin.readthedocs.io/latest/user/quickstart.html).
172
+
173
+
174
+ ## Contributing to Pynguin
175
+
176
+ For the development of Pynguin you will need the [`poetry`](https://python-poetry.org)
177
+ dependency management and packaging tool.
178
+ To start developing, follow these steps:
179
+ 1. Clone the repository
180
+ 2. Change to the `pynguin` folder: `cd pynguin`
181
+ 3. Create a virtual environment and install dependencies using `poetry`: `poetry install`
182
+ 4. Make your changes
183
+ 5. Run `make check` to verify that your changes pass all checks
184
+
185
+ Please see the [`poetry` documentation](https://python-poetry.org/docs/) for more information on this tool.
186
+
187
+ ## Contributors
188
+
189
+ Pynguin is developed at the
190
+ [Chair of Software Engineering II](https://www.fim.uni-passau.de/lehrstuhl-fuer-software-engineering-ii/)
191
+ of the [University of Passau](https://www.uni-passau.de).
192
+
193
+ Maintainers: [Stephan Lukasczyk](https://github.com/stephanlukasczyk), [Lukas Krodinger](https://github.com/LuKrO2011)
194
+
195
+ Contributors:
196
+ - [Lukas Vögl](https://github.com/lvoegl)
197
+ - [Louis Leppelmann](https://github.com/Tudeldu)
198
+ - [Alexander Wüst](https://github.com/Ravaqor)
199
+ - [Altin Hajdari](https://github.com/AltinHajdari)
200
+ - [Abdelillah Aissani](https://github.com/Abassion)
201
+ - [Juan Altmayer Pizzorno](https://github.com/jaltmayerpizzorno)
202
+ - [Lucas Berg](https://github.com/BergLucas)
203
+ - [Tucker Blue](https://github.com/tuckcodes)
204
+ - [Gordon Fraser](https://github.com/gofraser)
205
+ - [Abdur-Rahmaan Janhangeer](https://github.com/Abdur-rahmaanJ)
206
+ - [Maximilian Königseder](https://github.com/mak1ng)
207
+ - [Florian Kroiß](https://github.com/Wooza)
208
+ - [Simon Labrenz](https://github.com/labrenz)
209
+ - [Roman Levin](https://github.com/romanlevin)
210
+ - [Juan Julián Merelo Guervós](https://github.com/JJ)
211
+ - [Lukas Steffens](https://github.com/Luki42)
212
+ - [Florian Straubinger](https://github.com/f-str)
213
+ - [Sara Tavares](https://github.com/stavares843)
214
+
215
+
216
+ ### Development using PyCharm.
217
+
218
+ If you want to use the PyCharm IDE you have to set up a few things:
219
+ 1. Import `pynguin` into PyCharm.
220
+ 2. Let PyCharm configure configure a virtual environment using `poetry`.
221
+ 3. Set the default test runner to `pytest`
222
+ 4. Set the DocString format to `Google`
223
+
224
+
225
+ ## License
226
+
227
+ This project is licensed under the terms of the [MIT License](LICENSE.rst).
228
+ Pynguin was using the GNU Lesser General Public License (LGPL) until version 0.29.0,
229
+ its licence was changed with version 0.30.0.
230
+
231
+ ## Star History
232
+
233
+ [![Star History Chart](https://api.star-history.com/svg?repos=se2p/pynguin&type=Date)](https://star-history.com/#se2p/pynguin)
234
+
@@ -0,0 +1,169 @@
1
+ <!--
2
+ SPDX-FileCopyrightText: 2019–2026 Pynguin Contributors
3
+
4
+ SPDX-License-Identifier: CC-BY-4.0
5
+ -->
6
+
7
+ # Pynguin
8
+
9
+ Pynguin (IPA: ˈpɪŋɡuiːn),
10
+ the
11
+ PYthoN
12
+ General
13
+ UnIt
14
+ test
15
+ geNerator,
16
+ is a tool that allows developers to generate unit tests automatically.
17
+
18
+ Testing software is often considered to be a tedious task.
19
+ Thus, automated generation techniques have been proposed and mature tools exist—for
20
+ statically typed languages, such as Java.
21
+ There is, however, no fully-automated tool available that produces unit tests for
22
+ general-purpose programs in a dynamically typed language.
23
+ Pynguin is, to the best of our knowledge, the first tool that fills this gap
24
+ and allows the automated generation of unit tests for Python programs.
25
+
26
+ <details>
27
+ <summary>Internal Pipeline Status</summary>
28
+
29
+ [![pipeline status](https://gitlab.infosun.fim.uni-passau.de/se2/pynguin/pynguin/badges/main/pipeline.svg)](https://gitlab.infosun.fim.uni-passau.de/se2/pynguin/pynguin/-/commits/main)
30
+ [![coverage report](https://gitlab.infosun.fim.uni-passau.de/se2/pynguin/pynguin/badges/main/coverage.svg)](https://gitlab.infosun.fim.uni-passau.de/se2/pynguin/pynguin/-/commits/main)
31
+
32
+ </details>
33
+
34
+ [![License MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
35
+ [![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
36
+ [![PyPI version](https://badge.fury.io/py/pynguin.svg)](https://badge.fury.io/py/pynguin)
37
+ [![Supported Python Versions](https://img.shields.io/pypi/pyversions/pynguin.svg)](https://github.com/se2p/pynguin)
38
+ [![Documentation Status](https://readthedocs.org/projects/pynguin/badge/?version=latest)](https://pynguin.readthedocs.io/)
39
+ [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3989840.svg)](https://doi.org/10.5281/zenodo.3989840)
40
+ [![REUSE status](https://api.reuse.software/badge/github.com/se2p/pynguin)](https://api.reuse.software/info/github.com/se2p/pynguin)
41
+ [![Downloads](https://static.pepy.tech/personalized-badge/pynguin?period=total&units=international_system&left_color=grey&right_color=blue&left_text=Downloads)](https://pepy.tech/project/pynguin)
42
+ [![SWH](https://archive.softwareheritage.org/badge/origin/https://github.com/se2p/pynguin/)](https://archive.softwareheritage.org/browse/origin/?origin_url=https://github.com/se2p/pynguin)
43
+
44
+
45
+ ![Pynguin Logo](https://raw.githubusercontent.com/se2p/pynguin/master/docs/source/_static/pynguin-logo.png "Pynguin Logo")
46
+
47
+ ## Attention
48
+
49
+ *Please Note:*
50
+
51
+ **Pynguin executes the module under test!**
52
+ As a consequence, depending on what code is in that module,
53
+ running Pynguin can cause serious harm to your computer,
54
+ for example, wipe your entire hard disk!
55
+ We recommend running Pynguin in an isolated environment;
56
+ use, for example, a Docker container to minimize the risk of damaging
57
+ your system.
58
+
59
+ **Pynguin is only a research prototype!**
60
+ It is not tailored towards production use whatsoever.
61
+ However, we would love to see Pynguin in a production-ready stage at some point;
62
+ please report your experiences in using Pynguin to us.
63
+
64
+
65
+ ## Prerequisites
66
+
67
+ Before you begin, ensure you have met the following requirements:
68
+ - You have installed Python 3.10 (the support for 3.11, 3.12, 3.13 and 3.14 is experimental).
69
+
70
+ **Attention:** Pynguin now requires at least Python 3.10! Older versions are no longer
71
+ supported!
72
+ - You have a recent Linux/macOS/Windows machine.
73
+
74
+ Please consider reading the [online documentation](https://pynguin.readthedocs.io)
75
+ to start your Pynguin adventure.
76
+
77
+ ## Installing Pynguin
78
+
79
+ Pynguin can be easily installed using the `pip` tool by typing:
80
+ ```bash
81
+ pip install pynguin
82
+ ```
83
+
84
+ Make sure that your version of `pip` is that of a supported Python version, as any
85
+ older version is not supported by Pynguin!
86
+
87
+ ## Using Pynguin
88
+
89
+ Before you continue, please read the [quick start guide](https://pynguin.readthedocs.io/latest/user/quickstart.html)
90
+
91
+ Pynguin is a command-line application.
92
+ Once you installed it to a virtual environment, you can invoke the tool by typing
93
+ `pynguin` inside this virtual environment.
94
+ Pynguin will then print a list of its command-line parameters.
95
+
96
+ A minimal full command line to invoke Pynguin could be the following,
97
+ where we assume that a project `foo` is located in `/tmp/foo`,
98
+ we want to store Pynguin's generated tests in `/tmp/testgen`,
99
+ and we want to generate tests using a whole-suite approach for the module `foo.bar`
100
+ (wrapped for better readability):
101
+ ```bash
102
+ pynguin \
103
+ --project-path /tmp/foo \
104
+ --output-path /tmp/testgen \
105
+ --module-name foo.bar
106
+ ```
107
+ Please find a more detailed example in the [quick start guide](https://pynguin.readthedocs.io/latest/user/quickstart.html).
108
+
109
+
110
+ ## Contributing to Pynguin
111
+
112
+ For the development of Pynguin you will need the [`poetry`](https://python-poetry.org)
113
+ dependency management and packaging tool.
114
+ To start developing, follow these steps:
115
+ 1. Clone the repository
116
+ 2. Change to the `pynguin` folder: `cd pynguin`
117
+ 3. Create a virtual environment and install dependencies using `poetry`: `poetry install`
118
+ 4. Make your changes
119
+ 5. Run `make check` to verify that your changes pass all checks
120
+
121
+ Please see the [`poetry` documentation](https://python-poetry.org/docs/) for more information on this tool.
122
+
123
+ ## Contributors
124
+
125
+ Pynguin is developed at the
126
+ [Chair of Software Engineering II](https://www.fim.uni-passau.de/lehrstuhl-fuer-software-engineering-ii/)
127
+ of the [University of Passau](https://www.uni-passau.de).
128
+
129
+ Maintainers: [Stephan Lukasczyk](https://github.com/stephanlukasczyk), [Lukas Krodinger](https://github.com/LuKrO2011)
130
+
131
+ Contributors:
132
+ - [Lukas Vögl](https://github.com/lvoegl)
133
+ - [Louis Leppelmann](https://github.com/Tudeldu)
134
+ - [Alexander Wüst](https://github.com/Ravaqor)
135
+ - [Altin Hajdari](https://github.com/AltinHajdari)
136
+ - [Abdelillah Aissani](https://github.com/Abassion)
137
+ - [Juan Altmayer Pizzorno](https://github.com/jaltmayerpizzorno)
138
+ - [Lucas Berg](https://github.com/BergLucas)
139
+ - [Tucker Blue](https://github.com/tuckcodes)
140
+ - [Gordon Fraser](https://github.com/gofraser)
141
+ - [Abdur-Rahmaan Janhangeer](https://github.com/Abdur-rahmaanJ)
142
+ - [Maximilian Königseder](https://github.com/mak1ng)
143
+ - [Florian Kroiß](https://github.com/Wooza)
144
+ - [Simon Labrenz](https://github.com/labrenz)
145
+ - [Roman Levin](https://github.com/romanlevin)
146
+ - [Juan Julián Merelo Guervós](https://github.com/JJ)
147
+ - [Lukas Steffens](https://github.com/Luki42)
148
+ - [Florian Straubinger](https://github.com/f-str)
149
+ - [Sara Tavares](https://github.com/stavares843)
150
+
151
+
152
+ ### Development using PyCharm.
153
+
154
+ If you want to use the PyCharm IDE you have to set up a few things:
155
+ 1. Import `pynguin` into PyCharm.
156
+ 2. Let PyCharm configure configure a virtual environment using `poetry`.
157
+ 3. Set the default test runner to `pytest`
158
+ 4. Set the DocString format to `Google`
159
+
160
+
161
+ ## License
162
+
163
+ This project is licensed under the terms of the [MIT License](LICENSE.rst).
164
+ Pynguin was using the GNU Lesser General Public License (LGPL) until version 0.29.0,
165
+ its licence was changed with version 0.30.0.
166
+
167
+ ## Star History
168
+
169
+ [![Star History Chart](https://api.star-history.com/svg?repos=se2p/pynguin&type=Date)](https://star-history.com/#se2p/pynguin)
@@ -0,0 +1,293 @@
1
+ # SPDX-FileCopyrightText: 2019–2026 Pynguin Contributors
2
+ #
3
+ # SPDX-License-Identifier: MIT
4
+
5
+ [tool.poetry]
6
+ name = "pynguin"
7
+ version = "0.45.0"
8
+ description = "Pynguin is a tool for automated unit test generation for Python"
9
+ authors = [
10
+ "Stephan Lukasczyk <stephan@pynguin.eu>",
11
+ "Lukas Krodinger <lukas.krodinger@gmail.com>",
12
+ ]
13
+ license = "MIT"
14
+ readme = "README.md"
15
+ repository = "https://github.com/se2p/pynguin"
16
+ documentation = "https://pynguin.readthedocs.io"
17
+ homepage = "https://www.pynguin.eu"
18
+ keywords = [
19
+ "unit test",
20
+ "random testing",
21
+ "search based",
22
+ "test generation"
23
+ ]
24
+ classifiers = [
25
+ "Development Status :: 3 - Alpha",
26
+ "Environment :: Console",
27
+ "Intended Audience :: Developers",
28
+ "Intended Audience :: Education",
29
+ "Intended Audience :: Science/Research",
30
+ "License :: OSI Approved :: MIT License",
31
+ "Operating System :: MacOS :: MacOS X",
32
+ "Operating System :: Microsoft :: Windows",
33
+ "Operating System :: POSIX :: Linux",
34
+ "Programming Language :: Python :: 3.10",
35
+ "Programming Language :: Python :: 3.11",
36
+ "Programming Language :: Python :: 3.12",
37
+ "Programming Language :: Python :: 3.13",
38
+ "Programming Language :: Python :: 3.14",
39
+ "Programming Language :: Python :: Implementation :: CPython",
40
+ "Topic :: Education :: Testing",
41
+ "Topic :: Software Development :: Testing",
42
+ "Topic :: Software Development :: Testing :: Unit",
43
+ "Typing :: Typed",
44
+ ]
45
+ packages = [
46
+ { include = "pynguin", from = "src" }
47
+ ]
48
+ include = [
49
+ { path = "tests", format = "sdist" }
50
+ ]
51
+
52
+ [tool.poetry.dependencies]
53
+ python = ">=3.10, <3.15"
54
+ astroid = "^4.0.1"
55
+ black = "^25.1.0"
56
+ bytecode = "0.17.0"
57
+ dill = "^0.4.0"
58
+ Jinja2 = "^3.1.6"
59
+ networkx = "^3.4.2"
60
+ multiprocess = "^0.70.18"
61
+ rich = "^14.0.0"
62
+ Pygments = "^2.19.2"
63
+ pytest = "^8.3.5"
64
+ simple-parsing = "^0.1.7"
65
+ typing_inspect = "^0.9.0"
66
+ asciitree = "^0.3.3"
67
+ libcst = "^1.7.0"
68
+ setuptools = "^80.9.0"
69
+ toml = "^0.10.2"
70
+ psutil = "^7.1.1"
71
+ rstr = "^3.2.2"
72
+ openai = { version = "^1.72.0", optional = true }
73
+ python-dotenv = { version = "^1.0.0", optional = true }
74
+ numpy = { version = "^1.26.4", optional = true }
75
+ mypy = { version = "^1.15.0", optional = true }
76
+ typing-extensions = { version = "^4.12.2", optional = true }
77
+ faker = { version = "^37.3.0", optional = true }
78
+ fandango-fuzzer = { version = "^0.8.2", optional = true }
79
+ xmltodict = { version = "^0.14.2", optional = true }
80
+
81
+ [tool.poetry.group.dev.dependencies]
82
+ mypy = "^1.15.0"
83
+ pre-commit = "^4.2.0"
84
+ ruff = "^0.11"
85
+ types-toml = "^0.10.8.20240310"
86
+ types-pyyaml = "^6.0.12.20250516"
87
+ types-networkx = "^3.4"
88
+
89
+ [tool.poetry.group.docs.dependencies]
90
+ sphinx = "^8.1.3"
91
+ sphinx-autodoc-typehints = "^3.0"
92
+ sphinx-hoverxref = "^1.4.2"
93
+ sphinx-rtd-theme = "^3.0.2"
94
+
95
+ [tool.poetry.group.test.dependencies]
96
+ coverage = "^7.8.0"
97
+ hypothesis = "^6.131"
98
+ pytest-cov = "^6.1.1"
99
+ pytest-mock = "^3.14.0"
100
+ pytest-picked = "^0.5.1"
101
+ pytest-sugar = "^1.0.0"
102
+
103
+ [tool.poetry.extras]
104
+ openai = [ "openai", "python-dotenv" ]
105
+ numpy = [ "numpy" ]
106
+ typing = [ "mypy", "typing-extensions" ]
107
+ fandango-faker = [ "faker", "fandango-fuzzer", "xmltodict" ]
108
+
109
+ [tool.poetry.scripts]
110
+ pynguin = "pynguin.cli:main"
111
+
112
+ [tool.coverage.run]
113
+ branch = true
114
+ source = ["src/pynguin", "tests"]
115
+ omit = ["tests/fixtures/*"]
116
+ relative_files = true
117
+
118
+ [tool.coverage.report]
119
+ exclude_lines = [
120
+ "pragma: no cover",
121
+ "def __repr__",
122
+ "def __str__",
123
+ "raise AssertionError",
124
+ "raise NotImplementedError",
125
+ "if __name__ == .__main__.:",
126
+ "if TYPE_CHECKING:",
127
+ "if typing.TYPE_CHECKING:"
128
+ ]
129
+
130
+ [tool.coverage.html]
131
+ directory = "cov_html"
132
+
133
+ [tool.mypy]
134
+ files = "src"
135
+ mypy_path = "src"
136
+ namespace_packages = true
137
+ explicit_package_bases = true
138
+ show_error_codes = true
139
+ enable_error_code = [
140
+ "ignore-without-code",
141
+ "truthy-bool",
142
+ ]
143
+ check_untyped_defs = true
144
+ ignore_errors = false
145
+ ignore_missing_imports = true
146
+ strict_optional = true
147
+ warn_unused_ignores = true
148
+ warn_redundant_casts = true
149
+ warn_unused_configs = true
150
+
151
+ [tool.pytest.ini_options]
152
+ testpaths = [
153
+ "tests",
154
+ ]
155
+ # A lot of our own classes start with Test so pytest will pick them up during test collection.
156
+ # But they don't actually contains tests, so we set an empty matcher for the class name.
157
+ python_classes = ''
158
+
159
+ [build-system]
160
+ requires = ["poetry-core"]
161
+ build-backend = "poetry.core.masonry.api"
162
+
163
+
164
+ [tool.ruff]
165
+ # Assume Python 3.10.
166
+ target-version = "py310"
167
+ line-length = 100
168
+ preview = true
169
+ src = ["src", "tests"]
170
+ exclude = [
171
+ ".bzr",
172
+ ".direnv",
173
+ ".eggs",
174
+ ".git",
175
+ ".hg",
176
+ ".mypy_cache",
177
+ ".nox",
178
+ ".pants.d",
179
+ ".ruff_cache",
180
+ ".svn",
181
+ ".tox",
182
+ ".venv",
183
+ "__pypackages__",
184
+ "_build",
185
+ "buck-out",
186
+ "build",
187
+ "dist",
188
+ "docs",
189
+ "node_modules",
190
+ "venv",
191
+ "tests/fixtures/*.py",
192
+ "tests/fixtures/*.pyi",
193
+ ]
194
+
195
+ [tool.ruff.lint]
196
+ select = [
197
+ "A", # flake8-builtins
198
+ "ARG", # flake8-unused-arguments
199
+ "B", # bugbear
200
+ "BLE", # flake8-blind-except
201
+ "CPY", # flake8-copyright
202
+ "C4", # flake8-comprehensions
203
+ "C90", # mccabe
204
+ "D", # pydocstyle
205
+ "DTZ", # flake8-datetimez
206
+ "E", # pycodestyle
207
+ "ERA", # flake8-eradicate
208
+ "F", # pyflakes
209
+ "FA", # flake8-future-annotations
210
+ "FBT", # flake8-boolean-trap
211
+ "FIX", # flake8-fixme
212
+ "FLY", # flynt
213
+ "FURB", # refurb
214
+ "G", # flake8-logging-format
215
+ "I", # isort
216
+ "ICN", # flake8-import-conventions
217
+ "INT", # flake8-gettext
218
+ "ISC", # flake8-implicit-str-concat
219
+ "LOG", # flake8-logging
220
+ "N", # flake8-naming
221
+ "NPY", # numpy
222
+ "PERF", # perflint
223
+ "PGH", # pygrep-hooks
224
+ "PIE", # flake8-pie
225
+ "PL", # pylint
226
+ "PT", # flake8-pytest-style
227
+ "PTH", # flake8-use-pathlib
228
+ "PYI", # flake8-pyi
229
+ "Q", # flake8-quotes
230
+ "RET", # flake8-return
231
+ "RSE", # flake8-raise
232
+ "RUF", # ruff
233
+ "S", # flake8-bandig
234
+ "SIM", # flake8-simplify
235
+ "SLF", # flake8-self
236
+ "SLOT", # flake8-slots
237
+ "TCH", # flake8-type-checking
238
+ "TID", # flake8-tidy-imports
239
+ "T20", # flake8-print
240
+ "UP", # pyupgrade
241
+ "W", # pycodestyle
242
+ ]
243
+ ignore = [
244
+ "ARG002", # unused method argument
245
+ "B019", # functools.lru_cache might cause memory leaks
246
+ "CPY001", # missing copyright notice at top of file
247
+ "D105", # missing docstrings in magic methods
248
+ "FIX002", # valid TODO comments
249
+ "ISC001", # conflicts with ruff-format
250
+ "PLR0911", # do not complain about too many return statements
251
+ "PLR0912", # do not complain about too many branches
252
+ "PLR0913", # do not complain about too many arguments to function call
253
+ "PLR2004", # magic values in comparisons
254
+ "PLR6301", # method could be a function, class method, or static method
255
+ "RUF003", # comment contains ambiguous en dash
256
+ "RUF009", # do not perform function call in dataclass defaults
257
+ "S101", # do not complain about using assert statements
258
+ ]
259
+ # Allow unused variables when underscore-prefixed:
260
+ dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
261
+
262
+ [tool.ruff.lint.mccabe]
263
+ max-complexity = 10
264
+
265
+ [tool.ruff.lint.pydocstyle]
266
+ convention = "google"
267
+
268
+ [tool.ruff.lint.per-file-ignores]
269
+ "tests/**/*.py" = [
270
+ "D100", # Missing docstring in public module
271
+ "D101", # Missing docstring in public class
272
+ "D102", # Missing docstring in public method
273
+ "D103", # Missing docstring in public function
274
+ "D104", # Missing docstring in public package
275
+ "PT006", # Wrong name(s) type in `@pytest.mark.parameterize`, expected `tuple`
276
+ "S101", # Use of `assert` detected
277
+ "SLF001", # Private member accessed
278
+ ]
279
+
280
+ [tool.tox]
281
+ requires = ["tox~=4.28"]
282
+ env_list = ["3.10", "3.11", "3.12", "3.13", "3.14"]
283
+
284
+ [tool.tox.env_run_base]
285
+ skip_install = true
286
+ allowlist_externals = ["make", "poetry"]
287
+ commands_pre = [
288
+ ["poetry", "env", "use", "{env_name}"],
289
+ ["poetry", "install", "--extras", "openai numpy fandango-faker"]
290
+ ]
291
+ commands = [
292
+ ["make", "check"],
293
+ ]