public void TestRemoveUnmountedDrive()
    {
        var model = new UnmountedDriveModel();

        _autoMocker
        .Setup <IMountedDriveService, IReadOnlyList <DriveModel> >(m => m.MountedDrives)
        .Returns(new DriveModel[0]);
        _autoMocker
        .Setup <IUnmountedDriveService, IReadOnlyList <UnmountedDriveModel> >(m => m.UnmountedDrives)
        .Returns(new[] { model });

        _autoMocker
        .Setup <IDriveViewModelFactory, IDriveViewModel>(m => m.Create(model))
        .Returns(new Mock <IDriveViewModel>().Object);

        var viewModel = _autoMocker.CreateInstance <DrivesListViewModel>();

        Assert.NotNull(viewModel.Drives);
        Assert.NotEmpty(viewModel.Drives);

        _autoMocker
        .GetMock <IUnmountedDriveService>()
        .Raise(m => m.DriveRemoved += null, new UnmountedDriveEventArgs(model));

        Assert.NotNull(viewModel.Drives);
        Assert.Empty(viewModel.Drives);
    }
    public void TestAddUnmountedDrive()
    {
        _autoMocker
        .Setup <IMountedDriveService, IReadOnlyList <DriveModel> >(m => m.MountedDrives)
        .Returns(new DriveModel[0]);
        _autoMocker
        .Setup <IUnmountedDriveService, IReadOnlyList <UnmountedDriveModel> >(m => m.UnmountedDrives)
        .Returns(new UnmountedDriveModel[0]);

        var viewModel = _autoMocker.CreateInstance <DrivesListViewModel>();

        var model          = new UnmountedDriveModel();
        var driveViewModel = new Mock <IDriveViewModel>().Object;

        _autoMocker
        .Setup <IDriveViewModelFactory, IDriveViewModel>(m => m.Create(model))
        .Returns(driveViewModel);
        _autoMocker
        .GetMock <IUnmountedDriveService>()
        .Raise(m => m.DriveAdded += null, new UnmountedDriveEventArgs(model));

        Assert.NotNull(viewModel.Drives);
        Assert.Single(viewModel.Drives);
        Assert.Equal(driveViewModel, viewModel.Drives.Single());
    }
    private void AddDrive(UnmountedDriveModel unmountedDriveModel)
    {
        var driveViewModel = CreateFrom(unmountedDriveModel);

        _unmountedDrivesDictionary[unmountedDriveModel] = driveViewModel;

        UpdateDrivesList();
    }
        public UnmountedDriveViewModel(
            IUnmountedDriveService unmountedDriveService,
            UnmountedDriveModel unmountedDriveModel)
        {
            _unmountedDriveService = unmountedDriveService;
            _unmountedDriveModel   = unmountedDriveModel;

            MountCommand = ReactiveCommand.Create(Mount);
        }
        public void TestCreateUnmounted()
        {
            var unmountedDriveModel = new UnmountedDriveModel();
            var factory             = _autoMocker.CreateInstance <DriveViewModelFactory>();

            var viewModel = factory.Create(unmountedDriveModel);

            Assert.NotNull(viewModel);
            Assert.IsType <UnmountedDriveViewModel>(viewModel);
        }
        public void TestProperties()
        {
            var unmountedDriveServiceMock = new Mock <IUnmountedDriveService>();
            var unmountedDriveModel       = new UnmountedDriveModel
            {
                Name = "sda1"
            };
            var viewModel = new UnmountedDriveViewModel(unmountedDriveServiceMock.Object, unmountedDriveModel);

            Assert.Equal(unmountedDriveModel.Name, viewModel.DriveName);
        }
Beispiel #7
0
        public void TestCreateUnmounted()
        {
            var unmountedDriveModel        = new UnmountedDriveModel();
            var fileSizeFormatterMock      = new Mock <IFileSizeFormatter>();
            var pathServiceMock            = new Mock <IPathService>();
            var fileOperationsMediatorMock = new Mock <IFilesOperationsMediator>();
            var unmountedDriveServiceMock  = new Mock <IUnmountedDriveService>();

            var factory = new DriveViewModelFactory(fileSizeFormatterMock.Object, pathServiceMock.Object,
                                                    fileOperationsMediatorMock.Object, unmountedDriveServiceMock.Object);

            var viewModel = factory.Create(unmountedDriveModel);

            Assert.NotNull(viewModel);
            Assert.IsType <UnmountedDriveViewModel>(viewModel);
        }
        public void TestMount()
        {
            var unmountedDriveModel = new UnmountedDriveModel
            {
                FullName = "/dev/sda1/"
            };

            var unmountedDriveServiceMock = new Mock <IUnmountedDriveService>();

            unmountedDriveServiceMock
            .Setup(m => m.Mount(unmountedDriveModel.FullName))
            .Verifiable();

            var viewModel = new UnmountedDriveViewModel(unmountedDriveServiceMock.Object, unmountedDriveModel);

            Assert.True(viewModel.MountCommand.CanExecute(null));
            viewModel.MountCommand.Execute(null);

            unmountedDriveServiceMock
            .Verify(m => m.Mount(unmountedDriveModel.FullName), Times.Once);
        }
        public async Task TestRemoveDrive()
        {
            var model = new UnmountedDriveModel();
            var list  = new List <UnmountedDriveModel> {
                model
            };
            var service = new UnmountedDriveService(list);

            await service.ReloadUnmountedDrivesAsync();

            var isCallbackCalled = false;

            service.DriveRemoved += (sender, args) => isCallbackCalled = args.UnmountedDriveModel == model;
            list.Remove(model);

            await service.ReloadUnmountedDrivesAsync();

            Assert.NotNull(service.UnmountedDrives);
            Assert.Empty(service.UnmountedDrives);
            Assert.True(isCallbackCalled);
        }
        public async Task TestAddDrive()
        {
            var list    = new List <UnmountedDriveModel>();
            var service = new UnmountedDriveService(list);

            Assert.NotNull(service.UnmountedDrives);
            Assert.Empty(service.UnmountedDrives);

            var model = new UnmountedDriveModel();

            list.Add(model);

            var isCallbackCalled = false;

            service.DriveAdded += (sender, args) => isCallbackCalled = args.UnmountedDriveModel == model;

            await service.ReloadUnmountedDrivesAsync();

            Assert.NotNull(service.UnmountedDrives);
            Assert.Single(service.UnmountedDrives);
            Assert.Equal(model, service.UnmountedDrives.Single());
            Assert.True(isCallbackCalled);
        }
 private static UnmountedDriveEventArgs CreateFrom(UnmountedDriveModel unmountedDriveModel) =>
 new UnmountedDriveEventArgs(unmountedDriveModel);
Beispiel #12
0
 public IDriveViewModel Create(UnmountedDriveModel unmountedDriveModel) =>
 new UnmountedDriveViewModel(_unmountedDriveService, unmountedDriveModel);
 public UnmountedDriveEventArgs(UnmountedDriveModel unmountedDriveModel)
 {
     UnmountedDriveModel = unmountedDriveModel;
 }
Beispiel #14
0
 private IDriveViewModel CreateFrom(UnmountedDriveModel unmountedDriveModel) =>
 _driveViewModelFactory.Create(unmountedDriveModel);
Beispiel #15
0
    private void RemoveDrive(UnmountedDriveModel unmountedDriveModel)
    {
        _unmountedDrivesDictionary.Remove(unmountedDriveModel);

        UpdateDrivesList();
    }