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
5
#include "
Elements/Framework/TypedElementQueryCapabilities.h
"
6
#include "
Elements/Framework/TypedElementQueryContextImplementation.h
"
7
#include "
Elements/Framework/TypedElementQueryFunctionArgumentTypes.h
"
8
#include "
Templates/FunctionFwd.h
"
9
10
namespace
UE::Editor::DataStorage::Queries
11
{
12
struct
FMockChainTerminator
{};
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
46
FMockChainTerminator
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
120
#include "
Elements/Framework/TypedElementQueryCapabilities.inl
"
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
153
FQueryContextMock
()
154
{
155
#include "
Elements/Framework/TypedElementQueryCapabilities.inl
"
156
}
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
176
using
QueryContextMock
=
TQueryContextImpl<FQueryContextMock>
;
177
}
// namespace UE::Editor::DataStorage::Queries
FunctionFwd.h
TypedElementQueryCapabilities.h
TypedElementQueryCapabilities.inl
TypedElementQueryContextImplementation.h
TypedElementQueryFunctionArgumentTypes.h
UE::Editor::DataStorage::Queries::TQueryContextImpl
Definition
TypedElementQueryContextImplementation.h:42
UE::Editor::DataStorage::Queries
Definition
Conditions.cpp:11
UE::Editor::DataStorage::Queries::FMockChainTerminator
Definition
TypedElementQueryContextMock.h:12
UE::Editor::DataStorage::Queries::FQueryContextMock
Definition
TypedElementQueryContextMock.h:47
UE::Editor::DataStorage::Queries::FQueryContextMock::FQueryContextMock
FQueryContextMock()
Definition
TypedElementQueryContextMock.h:153
Engine
Source
Runtime
TypedElementFramework
Tests
Elements
Framework
TypedElementQueryContextMock.h
Generated by
1.9.8