(self, projectFile, commands, extraArgs, capture=False, enableRHI=False)
Invokes the Automation Test commandlet for the specified project with the supplied automation test commands
Invokes the Automation Test commandlet for the specified project with the supplied automation test commands
Invokes the Automation Test commandlet for the specified project with the supplied automation test commands
def runAutomationCommands(self, projectFile, commands, extraArgs, capture=False, enableRHI=False):
		'''
		Invokes the Automation Test commandlet for the specified project with the supplied automation test commands
		'''
		
		# IMPORTANT IMPLEMENTATION NOTE:
		# We need to format the command as a string and execute it using a shell in order to
		# ensure the "-ExecCmds" argument will be parsed correctly under Windows. This is because
		# the WinMain() function uses GetCommandLineW() to retrieve the raw command-line string,
		# rather than using an argv-style structure. The string is then passed to FParse::Value(),
		# which checks for the presence of a quote character after the equals sign to determine if
		# whitespace should be stripped or preserved. Without the quote character, the spaces in the
		# argument payload will be stripped out, corrupting our list of automation commands and
		# preventing them from executing correctly.
		
		command = '{} {}'.format(Utility.escapePathForShell(self.getEditorBinary(True)), Utility.escapePathForShell(projectFile))
		command += ' -game -buildmachine -stdout -fullstdoutlogoutput -forcelogflush -unattended -nopause -nosplash'
		if enableRHI == False:
			command += ' -nullrhi'
		command += ' -ExecCmds="automation {};quit" '.format(';'.join(commands))
		command += ' '.join([Utility.escapePathForShell(a) for a in extraArgs])
		
		if capture == True:
			return Utility.capture(command, shell=True)
		else:
			Utility.run(command, shell=True)
def runAutomationCommands ( self , projectFile , commands , extraArgs , capture = False , enableRHI = False ) : # IMPORTANT IMPLEMENTATION NOTE: # We need to format the command as a string and execute it using a shell in order to # ensure the "-ExecCmds" argument will be parsed correctly under Windows. This is because # the WinMain() function uses GetCommandLineW() to retrieve the raw command-line string, # rather than using an argv-style structure. The string is then passed to FParse::Value(), # which checks for the presence of a quote character after the equals sign to determine if # whitespace should be stripped or preserved. Without the quote character, the spaces in the # argument payload will be stripped out, corrupting our list of automation commands and # preventing them from executing correctly. command = '{} {}' . format ( Utility . escapePathForShell ( self . getEditorBinary ( True ) ) , Utility . escapePathForShell ( projectFile ) ) command += ' -game -buildmachine -stdout -fullstdoutlogoutput -forcelogflush -unattended -nopause -nosplash' if enableRHI == False : command += ' -nullrhi' command += ' -ExecCmds="automation {};quit" ' . format ( ';' . join ( commands ) ) command += ' ' . join ( [ Utility . escapePathForShell ( a ) for a in extraArgs ] ) if capture == True : return Utility . capture ( command , shell = True ) else : Utility . run ( command , shell = True )