Automation testing initialization

For whatever reason, I can’t get PlayerState. Am I not setting this up correctly?

	UWorld* World = FAutomationEditorCommonUtils::CreateNewMap();
	UEmpiresGameInstance* GameInstance = NewObject<UEmpiresGameInstance>(GetTransientPackage());
	World->SetGameInstance(GameInstance);

	AEmpiresGameMode* GameMode = Cast<AEmpiresGameMode>(World->SpawnActor(AEmpiresGameMode::StaticClass()));
	AEmpiresPlayerController* Controller = Cast<AEmpiresPlayerController>(World->SpawnActor(AEmpiresPlayerController::StaticClass()));
	AEmpiresPlayerState* PlayerState = Controller->GetPlayerState();

(PlayerState is nullptr)