public async void RemoveSelectedSnapshots_ShouldSucceed() { // Arrange SetUp(); var navParams = new SnapshotsViewNavParams { SnapshotsIdsource = new Location() }; var thumbnails = new List <SnapshotThumbnail> { new SnapshotThumbnail { Snapshot = _snapshots[0] }, new SnapshotThumbnail { Snapshot = _snapshots[1] }, new SnapshotThumbnail { Snapshot = _snapshots[2] } }; SnapshotsViewModel sit = null; _snapshotDataService.RemoveSnapshotAsync(Arg.Any <int>()) .Returns(_ => { var tcs = new TaskCompletionSource <LocationSnapshot>(); tcs.SetResult(_snapshots[1]); return(tcs.Task); }); _pictureService.RemoveSnapshotContentAsync(Arg.Any <LocationSnapshot>()) .Returns(_ => Task.CompletedTask); // Act sit = CreateViewModel(); sit.NavigationParam = navParams; await sit.OnLoaded(); sit.BeginSelectSnapshot(); sit.SelectedThumbnails = new List <SnapshotThumbnail> { thumbnails[1] }; await sit.RemoveSelectedSnapshots(); // Assert Assert.Equal(2, sit.SnapshotThumbnails.Count); Assert.DoesNotContain(sit.SnapshotThumbnails.Select(_ => _.Snapshot), _ => _.PictureFileName == "Barcelona_2.jpg"); await _snapshotDataService.Received().RemoveSnapshotAsync(_snapshots[1].Id); await _pictureService.Received().RemoveSnapshotContentAsync(_snapshots[1]); }
public MainWindow() { InitializeComponent(); DataContext = new SnapshotsViewModel(); }