コード例 #1
0
ファイル: SettingsPage.cs プロジェクト: VoBilyk/BookStore
        /// <summary>
        /// Saving data to storage
        /// </summary>
        public void SaveDb()
        {
            _outputEnvironment.Write($"{Resource.EnterFileName}: ");
            var fileName = _outputEnvironment.Read();

            try
            {
                _fileService.SaveToFile(fileName);

                _outputEnvironment.WriteLine(Resource.StorageSaved);
                _logger.Info(Resource.StorageSaved);
            }
            catch (Exception e)
            {
                _logger.Error(e.Message, e);
            }
        }
コード例 #2
0
ファイル: MainPage.cs プロジェクト: VoBilyk/BookStore
        /// <inheritdoc/>
        public void Display()
        {
            bool run = true;

            while (run)
            {
                var currentClient = _authService.GetCurrentClient();
                if (currentClient != null)
                {
                    _outputEnvironment.WriteLine($"{Resource.Hello}, {currentClient}");
                    _outputEnvironment.WriteLine(new string('-', 30));
                }

                var mainMenu = _menuVisualizer.FactoryMethod();
                mainMenu.Add(_authService.GetCurrentClientId().HasValue ? Resource.Logout : Resource.Login, () => LoginLogout())
                .Add(Resource.ClientMenu, () => _clientPage.Display())
                .Add(Resource.BookMenu, () => _bookPage.Display())
                .Add(Resource.Settings, () => _settingsPage.Display())
                .Add(Resource.SwitchLanguage, () => LanguageSwitcher.Switch())
                .Add(Resource.Exit, () => run = false);

                mainMenu.Display();

                _outputEnvironment.WriteLine(new string('-', 30));
            }
        }
コード例 #3
0
        public void ShowCollection_WhenPassCollection_ThenIterateIt()
        {
            // Arrange
            var collection = new List <int> {
                1, 2, 3
            };

            // Act
            _menu.ShowCollection(collection);

            // Act - Assert
            A.CallTo(() => _outputEnvironment.WriteLine(A <string> ._)).MustHaveHappened();
        }
コード例 #4
0
ファイル: ClientPage.cs プロジェクト: VoBilyk/BookStore
        /// <summary>
        /// Finding clients
        /// </summary>
        public void Find()
        {
            _outputEnvironment.Write($"{Resource.Search}: ");
            var query = _outputEnvironment.Read();

            var clients = _clientService.Find(query);

            if (!clients.Any())
            {
                _outputEnvironment.WriteLine(Resource.NotFound);
                return;
            }

            _menuVisualizer.ShowCollection(clients);

            _outputEnvironment.Write($"{Resource.ChooseSomeone}: ");
            var choice = _outputEnvironment.ReadInt(1, clients.Count);

            ShowDetails(clients[choice - 1]);
        }