public async Task InitAsync(StoreAccess storeAccess, BookShareReference bookShareReference)
        {
            _storeAccess        = storeAccess;
            _bookShareReference = bookShareReference;

            BookShare = await _bookShareStoreService.LoadBookShareAsync(_bookShareReference);
        }
Ejemplo n.º 2
0
 public void Init()
 {
     _bookShareReference        = new BookShareReference();
     _eventAggregatorMock       = new Moq.Mock <IEventAggregator>();
     _qrCodeGeneratorService    = new Moq.Mock <IQRCodeGeneratorService>();
     _magicLinkGeneratorService = new Moq.Mock <IMagicLinkGeneratorService>();
     _viewModel = new ShowBookShareViewModel(_eventAggregatorMock.Object, _qrCodeGeneratorService.Object, _magicLinkGeneratorService.Object);
 }
        public async Task ImportBookCommand_RaisesError_OnImportFail()
        {
            StoreAccess        storeAccess        = new StoreAccess();
            BookShareReference bookShareReference = new BookShareReference();
            BookShare          bookShare          = new BookShare();

            _bookShelfService.Setup(s => s.AddSharedBookToBookShelfAndSaveAsync(storeAccess, bookShareReference)).Returns(Task.FromResult(false)).Verifiable();
            _bookShareStoreService.Setup(s => s.LoadBookShareAsync(bookShareReference)).Returns(Task.FromResult(bookShare)).Verifiable();

            await _viewModel.InitAsync(storeAccess, bookShareReference);

            _eventAggregatorMock.Setup(s => s.GetEvent <ErrorMessage>()).Returns(new ErrorMessage()).Verifiable();
            _viewModel.ImportBookCommand.Execute();

            _eventAggregatorMock.Verify();
            _bookShareStoreService.Verify();
        }
        public void ExecuteSaveBookShare_SavesAndPublishesMessage()
        {
            BookReference      bookReference      = new BookReference();
            StoreAccess        storeAccess        = new StoreAccess();
            BookShareReference bookShareReference = new BookShareReference();

            _viewModel.ContributorName            = "Tim";
            _viewModel.BookName                   = "MyBook";
            _viewModel.AccessRights.CanAddEntries = true;

            _bookShelfServiceMock.Setup(s => s.ShareBookAsync(storeAccess, bookReference, _viewModel.ContributorName, _viewModel.AccessRights, _viewModel.BookName)).Returns(Task.FromResult(bookShareReference)).Verifiable();
            _eventAggregator.Setup(s => s.GetEvent <BookShareSavedMessage>()).Returns(new BookShareSavedMessage()).Verifiable();

            _viewModel.Init(storeAccess, bookReference);
            _viewModel.SaveBookShareCommand.Execute();

            _eventAggregator.Verify();
        }
        public void ExecuteSaveBookShare_RaisesError_IfBookShareCouldNotBeCreated()
        {
            BookReference      bookReference      = new BookReference();
            StoreAccess        storeAccess        = new StoreAccess();
            BookShareReference bookShareReference = new BookShareReference();

            _viewModel.ContributorName            = "Tim";
            _viewModel.BookName                   = "MyBook";
            _viewModel.AccessRights.CanAddEntries = true;

            _eventAggregator.Setup(s => s.GetEvent <ErrorMessage>()).Returns(new ErrorMessage()).Verifiable();
            _bookShelfServiceMock.Setup(s => s.ShareBookAsync(storeAccess, bookReference, _viewModel.ContributorName, _viewModel.AccessRights, _viewModel.BookName)).Throws(new BookShareCouldNotBeSavedException()).Verifiable();

            _viewModel.Init(storeAccess, bookReference);
            _viewModel.SaveBookShareCommand.Execute();

            _eventAggregator.Verify();
            _bookShelfServiceMock.Verify();
        }
Ejemplo n.º 6
0
 public void Init(BookShareReference bookShareReference)
 {
     QRCodePNG = _qrCodeGeneratorService.GetQRCodePNGFor(bookShareReference);
     MagicLink = _magicLinkGeneratorService.GetMagicLinkFor(bookShareReference);
 }