private static async Task AssertItemMatchesSettings(WorkshopItemPublishResult publishTaskResult) { Item?item = await Item.GetAsync(publishTaskResult.ItemId); Assert.IsTrue(item.HasValue); // TODO: The item data is not fetched properly even though it's there in Steam. Maybe it takes a while to register? // Assert.AreEqual(Title, item.Value.Title); // Assert.AreEqual(Description, item.Value.Description); // Assert.IsTrue(item.Value.IsPrivate); }
protected override void PublishToWorkshop() { _workshop.Init(AppId); Task <WorkshopItemPublishResult> publishTask = _workshop.PublishNewWorkshopItemAsync(ChangeSet); WorkshopItemPublishResult publishResult = publishTask.Result; _workshop.Shutdown(); if (publishResult.Result is PublishResult.Failed) { throw new ProcessFailedException("Failed to publish to Steam Workshop"); } }
public override async Task <WorkshopItemPublishResult> PublishNewWorkshopItemAsync( IWorkshopItemChangeSet settings) { Task <WorkshopItemPublishResult> publishTask = base.PublishNewWorkshopItemAsync(settings); Task.WaitAll(publishTask); WorkshopItemPublishResult workshopItemPublishResult = publishTask.Result; await Task.Delay(500); _eventOrder += "p"; return(workshopItemPublishResult); }
public async Task GivenWorkshopChangeSet__WhenPublishingToSteam__ItemShouldBeOnWorkshop() { WorkshopItemChangeSet changeSet = new WorkshopItemChangeSet(_fileSystem) { Title = Title, DescriptionFilePath = DescriptionFilePath, Language = Language, Visibility = WorkshopItemVisibility.Private, ItemFolderPath = SteamUploadPath }; _sut.Init(32470); WorkshopItemPublishResult publishTaskResult = await _sut.PublishNewWorkshopItemAsync(changeSet); PublishResult publishResult = publishTaskResult.Result; Assert.AreEqual(PublishResult.Ok, publishResult); await AssertItemMatchesSettings(publishTaskResult); }