EUnitTestFlags

Flags for configuring how individual unit tests make use of the base client unit test framework.

Windows
MacOS
Linux

References

Module

NetcodeUnitTest

Header

/Engine/Plugins/NetcodeUnitTest/NetcodeUnitTest/Source/NetcodeUnitTest/Public/NUTEnum.h

Include

#include "NUTEnum.h"

Syntax

enum EUnitTestFlags
{
    None                       = 0x00000000,
    LaunchServer               = 0x00000001,
    LaunchClient               = 0x00000002,
    AcceptPlayerController     = 0x00000004,
    BeaconConnect              = 0x00000008,
    AutoReconnect              = 0x00000010,
    RequirePlayerController    = 0x00000100,
    RequirePawn                = 0x00000200,
    RequirePlayerState         = 0x00000400,
    RequirePing                = 0x00000800,
    RequireNUTActor            = 0x00001000,
    RequireBeacon              = 0x00002000,
    RequireCustom              = 0x00004000,
    RequirementsMask           = RequirePlayerController | RequirePawn | RequirePlayerState | RequirePing | RequireNUTActor | RequireBeacon | RequireCustom,
    ExpectServerCrash          = 0x00100000,
    ExpectDisconnect           = 0x00200000,
    IgnoreServerCrash          = 0x00400000,
    IgnoreClientCrash          = 0x00800000,
    IgnoreDisconnect           = 0x01000000,
    NotifyProcessEvent         = 0x02000000,
    CaptureReceivedRaw         = 0x04000000,
    DumpControlMessages        = 0x08000000,
}

Values

Name

Description

None

LaunchServer

Sub-process flags

LaunchClient

AcceptPlayerController

Minimal-client netcode functionality

BeaconConnect

AutoReconnect

RequirePlayerController

Unit test state-setup/requirements/prerequisites

RequirePawn

RequirePlayerState

RequirePing

RequireNUTActor

RequireBeacon

RequireCustom

RequirementsMask

ExpectServerCrash

Unit test error/crash detection

ExpectDisconnect

IgnoreServerCrash

Unit test error/crash detection debugging (

Don't use these in finalized unit tests, unit tests must handle all errors)

IgnoreClientCrash

IgnoreDisconnect

NotifyProcessEvent

Unit test events

CaptureReceivedRaw

Debugging

DumpControlMessages

Remarks

Flags for configuring how individual unit tests make use of the base client unit test framework.

There is crossover between these flags, and EMinClientFlags. Types of things these flags control:

  • Types of remote data which are accepted/denied (channel types, actors, RPC's)

  • IMPORTANT: This includes local setup of e.g. actor channels, and possibly execution of RPC's in local context, which risks undefined behaviour (which is why it is disabled by default - you have to know what you're doing)

  • The prerequisites needed before executing the unit test (need a valid PlayerController? A particular actor?)

  • Whether or not a server or another client is automatically launched

  • Enabling other miscellaneous events, such as capturing raw packet data for debugging

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss