Package: wnpp
Severity: wishlist
Owner: Ahmed Gamal <
ahmed.gamal9541@gmail.com>
* Package name : php-adriansuter-php-autoload-override
Version : 1.2.0
Upstream Author : Adrian Suter <
adrian@suter-wirz.ch>
* URL :
https://github.com/adriansuter/php-autoload-override* License : MIT
Programming Lang: PHP
Section : php
Description:
PHP library for overriding global scoped fully qualified function calls
This package provides functionality to override fully qualified function calls
inside class methods in order to be able to mock them during testing. It allows
developers to override global PHP functions for testing purposes, making it
easier to mock global functions in unit tests.
The library is particularly useful for testing code that uses global PHP
functions like `rand()`, `time()`, `file_get_contents()`, etc., by allowing
these function calls to be intercepted and replaced with mock implementations
during test execution.
Rationale:
This package is required as a dependency for FOSSology, an open source license
compliance system. FOSSology uses PHP-based tools for source code analysis and
license detection, which need comprehensive testing capabilities to ensure
reliability and accuracy of license detection algorithms.
The php-autoload-override library is essential for:
- Unit testing of FOSSology's PHP components that use global functions
- Mocking system calls and global functions during test execution
- Ensuring test coverage for code that interacts with external systems
- Supporting reliable automated testing of FOSSology's license detection tools
- Enabling proper isolation of test units from global state
Technical Details:
- Requires PHP >= 7.3
- Depends on nikic/php-parser (^4.4) for AST manipulation
- Uses PSR-4 autoloading
- Integrates with PHPUnit testing framework
- Provides AST-based function call override mechanism
- Comprehensive test suite with 100% code coverage
- MIT licensed for maximum compatibility
Dependencies:
- php (>= 7.3)
- php-nikic-php-parser (>= 4.4)
- Build dependencies: phpunit, phpstan, php-codesniffer
The package will be maintained by Ahmed Gamal <
ahmed.gamal9541@gmail.com> as part
of the FOSSology packaging effort.
--
Ahmed Gamal
FOSSology Debian Packaging Team