MCPcopy Create free account
hub / github.com/php/frankenphp / TestCFile_NamespacedPHPMethods

Function TestCFile_NamespacedPHPMethods

internal/extgen/cfile_phpmethod_test.go:9–127  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

7)
8
9func TestCFile_NamespacedPHPMethods(t *testing.T) {
10 tests := []struct {
11 name string
12 namespace string
13 classes []phpClass
14 expected []string
15 }{
16 {
17 name: "no namespace - regular PHP_METHOD",
18 namespace: "",
19 classes: []phpClass{
20 {
21 Name: "TestClass",
22 GoStruct: "TestClass",
23 Methods: []phpClassMethod{
24 {Name: "testMethod", PhpName: "testMethod", ClassName: "TestClass"},
25 },
26 },
27 },
28 expected: []string{
29 "PHP_METHOD(TestClass, __construct)",
30 "PHP_METHOD(TestClass, testMethod)",
31 },
32 },
33 {
34 name: "single level namespace",
35 namespace: "MyNamespace",
36 classes: []phpClass{
37 {
38 Name: "TestClass",
39 GoStruct: "TestClass",
40 Methods: []phpClassMethod{
41 {Name: "testMethod", PhpName: "testMethod", ClassName: "TestClass"},
42 },
43 },
44 },
45 expected: []string{
46 "PHP_METHOD(MyNamespace_TestClass, __construct)",
47 "PHP_METHOD(MyNamespace_TestClass, testMethod)",
48 },
49 },
50 {
51 name: "multi level namespace",
52 namespace: `Go\Extension`,
53 classes: []phpClass{
54 {
55 Name: "MySuperClass",
56 GoStruct: "MySuperClass",
57 Methods: []phpClassMethod{
58 {Name: "getName", PhpName: "getName", ClassName: "MySuperClass"},
59 {Name: "setName", PhpName: "setName", ClassName: "MySuperClass"},
60 },
61 },
62 },
63 expected: []string{
64 "PHP_METHOD(Go_Extension_MySuperClass, __construct)",
65 "PHP_METHOD(Go_Extension_MySuperClass, getName)",
66 "PHP_METHOD(Go_Extension_MySuperClass, setName)",

Callers

nothing calls this directly

Calls 1

getTemplateContentMethod · 0.95

Tested by

no test coverage detected