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

Function TestNamespacedName

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

Source from the content-addressed store, hash-verified

7)
8
9func TestNamespacedName(t *testing.T) {
10 tests := []struct {
11 name string
12 namespace string
13 itemName string
14 expected string
15 }{
16 {
17 name: "no namespace",
18 namespace: "",
19 itemName: "TestItem",
20 expected: "TestItem",
21 },
22 {
23 name: "single level namespace",
24 namespace: "MyNamespace",
25 itemName: "TestItem",
26 expected: "MyNamespace_TestItem",
27 },
28 {
29 name: "multi level namespace",
30 namespace: `Go\Extension`,
31 itemName: "TestItem",
32 expected: "Go_Extension_TestItem",
33 },
34 {
35 name: "deep namespace",
36 namespace: `Very\Deep\Nested\Namespace`,
37 itemName: "MyItem",
38 expected: "Very_Deep_Nested_Namespace_MyItem",
39 },
40 {
41 name: "function name",
42 namespace: `Go\Extension`,
43 itemName: "multiply",
44 expected: "Go_Extension_multiply",
45 },
46 {
47 name: "class name",
48 namespace: `Go\Extension`,
49 itemName: "MySuperClass",
50 expected: "Go_Extension_MySuperClass",
51 },
52 }
53
54 for _, tt := range tests {
55 t.Run(tt.name, func(t *testing.T) {
56 result := NamespacedName(tt.namespace, tt.itemName)
57 require.Equal(t, tt.expected, result, "NamespacedName(%q, %q) = %q, expected %q", tt.namespace, tt.itemName, result, tt.expected)
58 })
59 }
60}

Callers

nothing calls this directly

Calls 1

NamespacedNameFunction · 0.85

Tested by

no test coverage detected