chore: test against more third party frameworks (#178)

Signed-off-by: azjezz <azjezz@protonmail.com>
This commit is contained in:
Saif Eddin Gmati 2022-12-08 16:50:25 +01:00 committed by GitHub
parent e74d0ec18e
commit 2659fdbebb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 43 additions and 29 deletions

View File

@ -17,6 +17,9 @@ jobs:
- 'php_parser' - 'php_parser'
- 'symfony' - 'symfony'
- 'laravel' - 'laravel'
- 'yii'
- 'mezzio'
- 'spiral'
steps: steps:
- name: checkout - name: checkout

View File

@ -27,18 +27,6 @@ dump file:
test filter='': test filter='':
cargo test --all {{filter}} -- --skip third_party cargo test --all {{filter}} -- --skip third_party
# run integration tests for `azjezz/psl` library. # run integration tests for third party libraries.
test-psl: test-third-party:
cargo test php_standard_library -- --nocapture cargo test third_party -- --nocapture
# run integration tests for `nikic/php-parser` library.
test-php-parser:
cargo test nikic_php_parser -- --nocapture
# run integration tests for `symfony/symfony` framework.
test-symfony:
cargo test symfony_framework -- --nocapture
# run integration tests for `laravel/framework` framework.
test-laravel:
cargo test laravel_framework -- --nocapture

View File

@ -45,20 +45,6 @@ fn third_party_3_symfony_framework() {
"src/Symfony/Bridge/ProxyManager/Tests/LazyProxy/PhpDumper/Fixtures/proxy-implem.php", "src/Symfony/Bridge/ProxyManager/Tests/LazyProxy/PhpDumper/Fixtures/proxy-implem.php",
// file contains syntax error used for testing. // file contains syntax error used for testing.
"src/Symfony/Component/Config/Tests/Fixtures/ParseError.php", "src/Symfony/Component/Config/Tests/Fixtures/ParseError.php",
// FIXME: Remove this one once I've found the energy to sort out heredocs / nowdocs.
"src/Symfony/Component/DependencyInjection/LazyProxy/PhpDumper/LazyServiceDumper.php",
"src/Symfony/Component/Cache/Tests/Traits/RedisProxiesTest.php",
"src/Symfony/Component/Mailer/Tests/Transport/NativeTransportFactoryTest.php",
"src/Symfony/Component/VarDumper/Tests/Caster/FFICasterTest.php",
"src/Symfony/Component/VarExporter/ProxyHelper.php",
"src/Symfony/Component/VarExporter/Tests/ProxyHelperTest.php",
// FIXME: Remove these once we can support arbitrary opening and closing tags.
"src/Symfony/Component/ErrorHandler/Resources/views/exception.html.php",
"src/Symfony/Component/ErrorHandler/Resources/views/exception_full.html.php",
"src/Symfony/Component/ErrorHandler/Resources/views/logs.html.php",
"src/Symfony/Component/ErrorHandler/Resources/views/trace.html.php",
"src/Symfony/Component/ErrorHandler/Resources/views/traces.html.php",
"src/Symfony/Component/ErrorHandler/Resources/views/traces_text.html.php",
], ],
); );
} }
@ -74,6 +60,43 @@ fn third_party_4_nikic_php_parser() {
); );
} }
#[test]
fn third_party_5_yii_framework() {
test_repository(
"yii-framework",
"https://github.com/yiisoft/yii2",
"master",
&["framework", "tests"],
&[],
);
}
#[test]
fn third_party_6_spiral_framework() {
test_repository(
"spiral-framework",
"https://github.com/spiral/framework",
"master",
&["src", "tests"],
&[
// file contains syntax error used for testing.
"/src/Core/tests/Fixtures/CorruptedClass.php",
"/src/Tokenizer/tests/Classes/BrokenClass.php",
],
);
}
#[test]
fn third_party_7_mezzio_framework() {
test_repository(
"mezzio-framework",
"https://github.com/mezzio/mezzio",
"3.15.x",
&["src", "test"],
&[],
);
}
fn test_repository( fn test_repository(
name: &str, name: &str,
repository: &str, repository: &str,