MCPcopy Create free account
hub / github.com/gotenberg/gotenberg / TestContext_Modules

Function TestContext_Modules

pkg/gotenberg/context_test.go:79–149  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

77}
78
79func TestContext_Modules(t *testing.T) {
80 for _, tc := range []struct {
81 scenario string
82 mods []ModuleDescriptor
83 kind any
84 expectError bool
85 }{
86 {
87 scenario: "module with error on provision",
88 mods: func() []ModuleDescriptor {
89 mod := &struct {
90 ModuleMock
91 ProvisionerMock
92 }{}
93 mod.DescriptorMock = func() ModuleDescriptor {
94 return ModuleDescriptor{ID: "foo", New: func() Module { return mod }}
95 }
96 mod.ProvisionMock = func(ctx *Context) error { return errors.New("foo") }
97 return []ModuleDescriptor{mod.Descriptor()}
98 }(),
99 kind: new(Provisioner),
100 expectError: true,
101 },
102 {
103 scenario: "success (module)",
104 mods: func() []ModuleDescriptor {
105 mod := &struct {
106 ModuleMock
107 ProvisionerMock
108 }{}
109 mod.DescriptorMock = func() ModuleDescriptor {
110 return ModuleDescriptor{ID: "foo", New: func() Module { return mod }}
111 }
112 mod.ProvisionMock = func(ctx *Context) error { return nil }
113 return []ModuleDescriptor{mod.Descriptor(), mod.Descriptor()}
114 }(),
115 kind: new(Provisioner),
116 expectError: false,
117 },
118 {
119 scenario: "success (one module)",
120 mods: func() []ModuleDescriptor {
121 mod := &struct {
122 ModuleMock
123 ProvisionerMock
124 }{}
125 mod.DescriptorMock = func() ModuleDescriptor {
126 return ModuleDescriptor{ID: "foo", New: func() Module { return mod }}
127 }
128 mod.ProvisionMock = func(ctx *Context) error { return nil }
129
130 return []ModuleDescriptor{mod.Descriptor()}
131 }(),
132 kind: new(Provisioner),
133 expectError: false,
134 },
135 } {
136 t.Run(tc.scenario, func(t *testing.T) {

Callers

nothing calls this directly

Calls 4

ModulesMethod · 0.95
NewContextFunction · 0.85
DescriptorMethod · 0.65
RunMethod · 0.65

Tested by

no test coverage detected