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]);
        }
Exemplo n.º 2
0
        public MainWindow()
        {
            InitializeComponent();

            DataContext = new SnapshotsViewModel();
        }