public void Count(GenerationLackyTicketsMethod method, byte quantityDigits, int expected)
        {
            // Arrange
            LuckyTicketsGenerator lackyGenerator = LuckyTicketsGenerator.Create(method, quantityDigits);

            // Act
            int real = lackyGenerator.Count();

            // Assert
            Assert.AreEqual(real, expected);
        }
Exemple #2
0
        public void Run(string[] args)
        {
            _view.PrintTitleText(MessagesResources.ApplicationName);
            _view.PrintInstructionText(MessagesResources.Instruction);

            try
            {
                _inboxParams = new MainParamValidator(args).GetMainParameters();
            }
            catch (Exception ex)
            {
                _view.PrintErrorText(ex.Message);
                return;
            }

            do
            {
                bool isFailed;
                do
                {
                    isFailed = false;
                    try
                    {
                        _view.AskInputPath(MessagesResources.AskInputPath);
                    }
                    catch (Exception ex)
                    {
                        _view.PrintErrorText(ex.Message);
                        isFailed = true;
                    }
                } while (isFailed);

                LuckyTicketsGenerator lackyGenerator = LuckyTicketsGenerator.Create(_countMethod, _inboxParams.QuantityDigits);

                try
                {
                    if (_inboxParams.PathLog != String.Empty)
                    {
                        lackyGenerator.SaveToFile(_inboxParams.PathLog);
                    }
                }
                catch
                {
                    _view.PrintErrorText(MessagesResources.ErrorFileNotSaved);
                }

                _view.PrintResultText(String.Format(MessagesResources.Result, lackyGenerator.Count().ToString()));
                _view.AskContinueFlag(MessagesResources.AskContunue);
            } while (_continueFlag);
        }