So far all tests/proofs/properties have been declared in the blackbox.php file. This is fine for examples. But in a real project with hundreds of them this is not manageable.
Since it uses a Generator you can easily split them into multiple files:
useInnmind\BlackBox\{Runner\Assert,Set,};returnstaticfunction():\Generator{yieldproof('Some proof',given(Set\Integers::any()),staticfunction(Assert$assert,int$value){// your code here},);};
proofs/file2.php
useInnmind\BlackBox\{Runner\Assert,Set,};returnstaticfunction():\Generator{yieldproof('Some proof',given(Set\Strings::any()),staticfunction(Assert$assert,int$value){// your code here},);};
proofs/etc.php
useInnmind\BlackBox\{Runner\Assert,Set,};returnstaticfunction():\Generator{yieldtest('Some proof',staticfunction(Assert$assert){// your code here},);};
This way you can enforce the order in which the files are loaded. However it becomes tedious to modify blackbox.php each time you add a file in proofs/.