public void GivenTaskBuilder__WhenConfiguringWithNullVisibility__ShouldReturnTaskWithPrivateVisibility() { UpdateSteamWorkshopItemTaskBuilder sut = new UpdateSteamWorkshopItemTaskBuilder(); UpdateSteamWorkshopItemTask actual = (UpdateSteamWorkshopItemTask)sut.With("Visibility", null).Build(); Assert.AreEqual(WorkshopItemVisibility.Private, actual.ChangeSet.Visibility); }
public void GivenTaskBuilder_WhenConfiguringTaskWithItemIdOfTypeInt_ShouldReturnTaskWithItemIdOfULong() { UpdateSteamWorkshopItemTaskBuilder sut = new UpdateSteamWorkshopItemTaskBuilder(); const int itemId = 123456; UpdateSteamWorkshopItemTask actual = (UpdateSteamWorkshopItemTask)sut.With("ItemId", itemId).Build(); const ulong expected = itemId; Assert.AreEqual(expected, actual.ItemId); }
public void GivenTaskBuilder_WhenConfiguringTaskWithAppIdOfTypeInt_ShouldReturnTaskWithAppIdOfUInt() { UpdateSteamWorkshopItemTaskBuilder sut = new UpdateSteamWorkshopItemTaskBuilder(); const int appId = 32470; UpdateSteamWorkshopItemTask actual = (UpdateSteamWorkshopItemTask)sut.With("AppId", appId).Build(); const uint expected = appId; Assert.AreEqual(expected, actual.AppId); }
public void GivenTaskWithoutItemId__WhenRunningTask__ShouldNotInitWorkshop() { SteamWorkshopSpy workshop = new SteamWorkshopSpy(); UpdateSteamWorkshopItemTask sut = new UpdateSteamWorkshopItemTask(workshop) { AppId = AppId, ChangeSet = CreateValidChangeSet() }; InvalidOperationException actual = Assert.ThrowsException <InvalidOperationException>(() => sut.Run()); Assert.IsFalse(workshop.WasInitialized); }
public void GivenTaskWithoutItemId__WhenRunningTask__ShouldThrowInvalidOperationException() { SteamWorkshopDummy workshopDummy = new SteamWorkshopDummy(); UpdateSteamWorkshopItemTask sut = new UpdateSteamWorkshopItemTask(workshopDummy) { AppId = AppId, ChangeSet = CreateValidChangeSet() }; InvalidOperationException actual = Assert.ThrowsException <InvalidOperationException>(() => sut.Run()); Assert.AreEqual("No ItemId set", actual.Message); }
public override ITaskBuilder With(string name, object value) { Task ??= CreateTaskWithChangeSet(ChangeSet); if (!name.Equals("ItemId")) { return(base.With(name, value)); } UpdateSteamWorkshopItemTask updateTask = (UpdateSteamWorkshopItemTask)Task; updateTask.ItemId = Convert.ToUInt64(value); return(this); }
public void GivenTaskWithoutChangeSet__WhenRunningTask__ShouldThrowInvalidOperationException() { WorkshopItemStub workshopItemStub = new WorkshopItemStub(); SteamWorkshopStub workshopStub = new SteamWorkshopStub { WorkshopItemsById = { { ItemId, workshopItemStub } } }; UpdateSteamWorkshopItemTask sut = new UpdateSteamWorkshopItemTask(workshopStub) { ItemId = ItemId }; sut.Run(); }
public void GivenTaskWithNonExistingItemId__WhenRunningTask__ShouldThrowWorkshopItemNotFoundException() { SteamWorkshopStub workshopStub = new SteamWorkshopStub { WorkshopItemsById = { { ItemId, null } } }; UpdateSteamWorkshopItemTask sut = new UpdateSteamWorkshopItemTask(workshopStub) { AppId = AppId, ItemId = ItemId, ChangeSet = CreateValidChangeSet() }; sut.Run(); }
public void GivenValidTask__WhenRunningTask_ButPublishFails__ShouldThrowProcessFailedException() { WorkshopItemStub workshopItemSpy = new WorkshopItemStub { Result = PublishResult.Failed }; SteamWorkshopStub workshopStub = new SteamWorkshopStub { WorkshopItemsById = { { ItemId, workshopItemSpy } } }; UpdateSteamWorkshopItemTask sut = new UpdateSteamWorkshopItemTask(workshopStub) { AppId = AppId, ItemId = ItemId, ChangeSet = CreateValidChangeSet() }; sut.Run(); }
public void GivenTaskWithNonExistingItemId__WhenRunningTask__ShouldShutDownSteamClient() { SteamWorkshopSpy workshopSpy = new SteamWorkshopSpy { WorkshopItemsById = { { ItemId, null } } }; UpdateSteamWorkshopItemTask sut = new UpdateSteamWorkshopItemTask(workshopSpy) { AppId = AppId, ItemId = ItemId, ChangeSet = CreateValidChangeSet() }; Action actual = () => sut.Run(); Assert.ThrowsException <WorkshopItemNotFoundException>(actual); Assert.IsTrue(workshopSpy.WasShutdown); }
public void GivenValidTask__WhenRunningTask_ButPublishFails__ShouldShutdownSteamClient() { WorkshopItemStub workshopItemSpy = new WorkshopItemStub { Result = PublishResult.Failed }; SteamWorkshopSpy workshopSpy = new SteamWorkshopSpy { WorkshopItemsById = { { ItemId, workshopItemSpy } } }; UpdateSteamWorkshopItemTask sut = new UpdateSteamWorkshopItemTask(workshopSpy) { AppId = AppId, ItemId = ItemId, ChangeSet = CreateValidChangeSet() }; Action actual = () => sut.Run(); Assert.ThrowsException <ProcessFailedException>(actual); Assert.IsTrue(workshopSpy.WasShutdown); }
public void GivenTaskBuilder_WhenConfiguringTask_ShouldReturnConfiguredTask() { UpdateSteamWorkshopItemTaskBuilder sut = new UpdateSteamWorkshopItemTaskBuilder(); UpdateSteamWorkshopItemTask actual = (UpdateSteamWorkshopItemTask)sut.With("AppId", AppId) .With("ItemId", ItemId) .With("Title", Title) .With("DescriptionFilePath", DescriptionFilePath) .With("ItemFolderPath", ItemFolderPath) .With("Visibility", WorkshopItemVisibility.Public) .With("Language", Language) .With("Tags", Tags) .Build(); Assert.AreEqual(AppId, actual.AppId); Assert.AreEqual(ItemId, actual.ItemId); Assert.AreEqual(Title, actual.ChangeSet.Title); Assert.AreEqual(DescriptionFilePath, actual.ChangeSet.DescriptionFilePath); Assert.AreEqual(ItemFolderPath, actual.ChangeSet.ItemFolderPath); Assert.AreEqual(WorkshopItemVisibility.Public, actual.ChangeSet.Visibility); Assert.AreEqual(Language, actual.ChangeSet.Language); Assert.AreEqual(Tags, actual.ChangeSet.Tags); }