本文整理汇总了C#中MainViewModel.FindOrCreateLongOperation方法的典型用法代码示例。如果您正苦于以下问题:C# MainViewModel.FindOrCreateLongOperation方法的具体用法?C# MainViewModel.FindOrCreateLongOperation怎么用?C# MainViewModel.FindOrCreateLongOperation使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MainViewModel
的用法示例。
在下文中一共展示了MainViewModel.FindOrCreateLongOperation方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: FindLongOperationTest
public void FindLongOperationTest()
{
// Arrange.
var operationId = new Guid("{A9795BAF-22FD-42D6-9B31-7B5BF5AC3254}");
var vm = new MainViewModel();
// Act.
var foundOperation = vm.FindLongOperation(operationId);
// Assert.
Assert.IsNull(foundOperation);
// Add operation.
var operation = vm.FindOrCreateLongOperation(operationId);
// Act.
foundOperation = vm.FindLongOperation(operationId);
// Assert.
Assert.AreSame(operation, foundOperation);
}
示例2: MainViewModelDisplaysTheStatusOfTheOldestLongOperation
public void MainViewModelDisplaysTheStatusOfTheOldestLongOperation()
{
// Arrange.
var operationId1 = new Guid("{A9795BAF-22FD-42D6-9B31-7B5BF5AC3254}");
var operationId2 = new Guid("{3CF3E896-0C88-4A40-9739-5461EAE7C536}");
const string OperationName1 = "Operation 1";
const string OperationName2 = "Operation 2";
const double OperationProgress1 = 25;
const double OperationProgress2 = 50;
var vm = new MainViewModel();
// Create two operations.
var operation1 = vm.FindOrCreateLongOperation(operationId1);
var operation2 = vm.FindOrCreateLongOperation(operationId2);
operation1.Name = OperationName1;
operation1.Progress = OperationProgress1;
operation2.Name = OperationName2;
operation2.Progress = OperationProgress2;
// Assert - MainViewModel should show the status of the first operation.
Assert.IsTrue(vm.IsLongOperationInProgress);
Assert.AreEqual(OperationName1, vm.LongOperationName);
Assert.AreEqual(OperationProgress1, vm.LongOperationProgress);
// Complete first operation.
vm.CompleteLongOperation(operation1);
// Assert - MainViewModel should show the status of the second operation.
Assert.IsTrue(vm.IsLongOperationInProgress);
Assert.AreEqual(OperationName2, vm.LongOperationName);
Assert.AreEqual(OperationProgress2, vm.LongOperationProgress);
// Complete second operation.
vm.CompleteLongOperation(operation2);
// Assert - no long operations.
Assert.IsFalse(vm.IsLongOperationInProgress);
}
示例3: NeedPageReloadNotifierHasPriorityOverProgressBar
public void NeedPageReloadNotifierHasPriorityOverProgressBar()
{
var operationGuid = new Guid("{696861FD-7FE5-4E41-8E78-5E55591CE1B3}");
var vm = new MainViewModel { NeedsPageReload = true };
var operation = vm.FindOrCreateLongOperation(operationGuid);
Assert.IsFalse(vm.IsLongOperationInProgress);
vm.NeedsPageReload = false;
Assert.IsTrue(vm.IsLongOperationInProgress);
vm.CompleteLongOperation(operation);
Assert.IsFalse(vm.IsLongOperationInProgress);
}