UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TypedElementQueryContextMock.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
9
11{
13
14 struct FQueryContextMock final : public
15
16#define Function0(Capability, Return, Function)
17#define Function1(Capability, Return, Function, Arg1)
18#define Function2(Capability, Return, Function, Arg1, Arg2)
19#define Function3(Capability, Return, Function, Arg1, Arg2, Arg3)
20#define Function4(Capability, Return, Function, Arg1, Arg2, Arg3, Arg4)
21
22#define ConstFunction0(Capability, Return, Function)
23#define ConstFunction1(Capability, Return, Function, Arg1)
24#define ConstFunction2(Capability, Return, Function, Arg1, Arg2)
25#define ConstFunction3(Capability, Return, Function, Arg1, Arg2, Arg3)
26#define ConstFunction4(Capability, Return, Function, Arg1, Arg2, Arg3, Arg4)
27
28#define CapabilityStart(Capability, Flags) Capability,
29#define CapabilityEnd(Capability)
30
31#include "Elements/Framework/TypedElementQueryCapabilities.inl"
32
33#undef Function0
34#undef Function1
35#undef Function2
36#undef Function3
37#undef Function4
38#undef ConstFunction0
39#undef ConstFunction1
40#undef ConstFunction2
41#undef ConstFunction3
42#undef ConstFunction4
43#undef CapabilityStart
44#undef CapabilityEnd
45
47 {
48
49#define WithWrappers 1
50
51#define ArgTypeName(Type, Name) Type Name
52#define ArgName(Type, Name) Name
53#define MockFunction(Capability, Function) Capability##_##Function##_Mock
54
55#define Function0(Capability, Return, Function) \
56 TFunction<Return ()> MockFunction(Capability, Function); \
57 virtual Return Function() override \
58 { \
59 return MockFunction(Capability, Function)(); \
60 }
61#define Function1(Capability, Return, Function, Arg1) \
62 TFunction<Return (ArgTypeName Arg1 )> MockFunction(Capability, Function); \
63 virtual Return Function(ArgTypeName Arg1) override \
64 { \
65 return MockFunction(Capability, Function)(ArgName Arg1); \
66 }
67#define Function2(Capability, Return, Function, Arg1, Arg2) \
68 TFunction<Return (ArgTypeName Arg1, ArgTypeName Arg2)> MockFunction(Capability, Function); \
69 virtual Return Function(ArgTypeName Arg1, ArgTypeName Arg2) override \
70 { \
71 return MockFunction(Capability, Function)(ArgName Arg1, ArgName Arg2); \
72 }
73#define Function3(Capability, Return, Function, Arg1, Arg2, Arg3) \
74 TFunction<Return (ArgTypeName Arg1, ArgTypeName Arg2, ArgTypeName Arg3)> MockFunction(Capability, Function); \
75 virtual Return Function(ArgTypeName Arg1, ArgTypeName Arg2, ArgTypeName Arg3) override \
76 { \
77 return MockFunction(Capability, Function)(ArgName Arg1, ArgName Arg2, ArgName Arg3); \
78 }
79#define Function4(Capability, Return, Function, Arg1, Arg2, Arg3, Arg4) \
80 TFunction<Return (ArgTypeName Arg1, ArgTypeName Arg2, ArgTypeName Arg3, ArgTypeName Arg4)> MockFunction(Capability, Function); \
81 virtual Return Function(ArgTypeName Arg1, ArgTypeName Arg2, ArgTypeName Arg3, ArgTypeName Arg4) override \
82 { \
83 return MockFunction(Capability, Function)(ArgName Arg1, ArgName Arg2, ArgName Arg3, ArgName Arg4); \
84 }
85
86#define ConstFunction0(Capability, Return, Function) \
87 TFunction<Return ()> MockFunction(Capability, Function); \
88 virtual Return Function() const override \
89 { \
90 return MockFunction(Capability, Function)(); \
91 }
92#define ConstFunction1(Capability, Return, Function, Arg1) \
93 TFunction<Return (ArgTypeName Arg1)> MockFunction(Capability, Function); \
94 virtual Return Function(ArgTypeName Arg1) const override \
95 { \
96 return MockFunction(Capability, Function)(ArgName Arg1); \
97 }
98#define ConstFunction2(Capability, Return, Function, Arg1, Arg2) \
99 TFunction<Return (ArgTypeName Arg1, ArgTypeName Arg2)> MockFunction(Capability, Function); \
100 virtual Return Function(ArgTypeName Arg1, ArgTypeName Arg2) const override \
101 { \
102 return MockFunction(Capability, Function)(ArgName Arg1, ArgName Arg2); \
103 }
104#define ConstFunction3(Capability, Return, Function, Arg1, Arg2, Arg3) \
105 TFunction<Return (ArgTypeName Arg1, ArgTypeName Arg2, ArgTypeName Arg3)> MockFunction(Capability, Function); \
106 virtual Return Function(ArgTypeName Arg1, ArgTypeName Arg2, ArgTypeName Arg3) const override \
107 { \
108 return MockFunction(Capability, Function)(ArgName Arg1, ArgName Arg2, ArgName Arg3); \
109 }
110#define ConstFunction4(Capability, Return, Function, Arg1, Arg2, Arg3, Arg4) \
111 TFunction<Return (ArgTypeName Arg1, ArgTypeName Arg2, ArgTypeName Arg3, ArgTypeName Arg4)> MockFunction(Capability, Function); \
112 virtual Return Function(ArgTypeName Arg1, ArgTypeName Arg2, ArgTypeName Arg3, ArgTypeName Arg4) const override \
113 { \
114 return MockFunction(Capability, Function)(ArgName Arg1, ArgName Arg2, ArgName Arg3, ArgName Arg4); \
115 }
116
117#define CapabilityStart(Capability, Flags)
118#define CapabilityEnd(Capability)
119
121
122#undef Function0
123#undef Function1
124#undef Function2
125#undef Function3
126#undef Function4
127#undef ConstFunction0
128#undef ConstFunction1
129#undef ConstFunction2
130#undef ConstFunction3
131#undef ConstFunction4
132#undef WithWrappers
133
134#define MockFunctionImplementation(Capability, Return, Function) \
135 checkf(false, TEXT( "Context function " #Function " in capability " #Capability " was unexpectedly called." )); return Return{};
136#define Function0(Capability, Return, Function) \
137 MockFunction(Capability, Function) = []() { MockFunctionImplementation(Capability, Return, Function) };
138#define Function1(Capability, Return, Function, Arg1) \
139 MockFunction(Capability, Function) = [](ArgTypeName Arg1) { MockFunctionImplementation(Capability, Return, Function) };
140#define Function2(Capability, Return, Function, Arg1, Arg2) \
141 MockFunction(Capability, Function) = [](ArgTypeName Arg1, ArgTypeName Arg2) { MockFunctionImplementation(Capability, Return, Function) };
142#define Function3(Capability, Return, Function, Arg1, Arg2, Arg3) \
143 MockFunction(Capability, Function) = [](ArgTypeName Arg1, ArgTypeName Arg2, ArgTypeName Arg3) { MockFunctionImplementation(Capability, Return, Function) };
144#define Function4(Capability, Return, Function, Arg1, Arg2, Arg3, Arg4) \
145 MockFunction(Capability, Function) = [](ArgTypeName Arg1, ArgTypeName Arg2, ArgTypeName Arg3, ArgTypeName Arg4) { MockFunctionImplementation(Capability, Return, Function) };
146
147#define ConstFunction0(Capability, Return, Function) Function0(Capability, Return, Function)
148#define ConstFunction1(Capability, Return, Function, Arg1) Function1(Capability, Return, Function, Arg1)
149#define ConstFunction2(Capability, Return, Function, Arg1, Arg2) Function2(Capability, Return, Function, Arg1, Arg2)
150#define ConstFunction3(Capability, Return, Function, Arg1, Arg2, Arg3) Function3(Capability, Return, Function, Arg1, Arg2, Arg3)
151#define ConstFunction4(Capability, Return, Function, Arg1, Arg2, Arg3, Arg4) Function4(Capability, Return, Function, Arg1, Arg2, Arg3, Arg4)
152
157
158#undef ArgTypeName
159#undef ArgName
160#undef MockFunctionName
161#undef Function0
162#undef Function1
163#undef Function2
164#undef Function3
165#undef Function4
166#undef ConstFunction0
167#undef ConstFunction1
168#undef ConstFunction2
169#undef ConstFunction3
170#undef ConstFunction4
171#undef CapabilityStart
172#undef CapabilityEnd
173#undef WithWrappers
174 };
175
177} // namespace UE::Editor::DataStorage::Queries
Definition TypedElementQueryContextImplementation.h:42
Definition Conditions.cpp:11
Definition TypedElementQueryContextMock.h:12
Definition TypedElementQueryContextMock.h:47
FQueryContextMock()
Definition TypedElementQueryContextMock.h:153