Skip to content

Commit aae6fe6

Browse files
committed
feat: Add tests for interface registration
1 parent 233bf37 commit aae6fe6

File tree

2 files changed

+11
-5
lines changed

2 files changed

+11
-5
lines changed

tests/src/integration/interface/mod.rs

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use std::collections::HashMap;
22

33
use ext_php_rs::types::ZendClassObject;
4-
use ext_php_rs::php_interface;
4+
use ext_php_rs::{php_class, php_impl, php_interface};
55
use ext_php_rs::{php_module, prelude::ModuleBuilder};
66
use ext_php_rs::zend::ce;
77

@@ -23,9 +23,14 @@ pub trait EmptyObjectTrait
2323
) -> String;
2424
}
2525

26-
#[php_module]
27-
pub fn get_module(module: ModuleBuilder) -> ModuleBuilder {
28-
module
29-
.interface::<PhpInterfaceEmptyObjectTrait>()
26+
pub fn build_module(builder: ModuleBuilder) -> ModuleBuilder {
27+
builder.interface::<PhpInterfaceEmptyObjectTrait>()
3028
}
3129

30+
#[cfg(test)]
31+
mod tests {
32+
#[test]
33+
fn interface_work() {
34+
assert!(crate::integration::test::run_php("interface/interface.php"));
35+
}
36+
}

tests/src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ pub fn build_module(module: ModuleBuilder) -> ModuleBuilder {
3131
module = integration::object::build_module(module);
3232
module = integration::string::build_module(module);
3333
module = integration::variadic_args::build_module(module);
34+
module = integration::interface::build_module(module);
3435

3536
module
3637
}

0 commit comments

Comments
 (0)