Пример #1
0
        public void ShouldAskForRequiredInputData(string[] args)
        {
            if (args.Length == 0)
            {
                _mockInputOutput.Setup(x => x.ReadLine(MessageConstants.EnterCompressionMethodMessage))
                .Returns("compress").Verifiable();
            }

            if (args.Length < 2)
            {
                _mockInputOutput.Setup(x => x.ReadLine(MessageConstants.EnterSourceMessage))
                .Returns("file.txt").Verifiable();
            }

            if (args.Length < 3)
            {
                _mockInputOutput.Setup(x => x.ReadLine(MessageConstants.EnterTargetMessage))
                .Returns("file.gzip").Verifiable();
            }

            var inputReader = new GzipperUserInputReader(_mockInputOutput.Object);

            inputReader.ParseUserInputData(args);

            _mockInputOutput.Verify();
        }
        public CompressorApplication(IInputOutput io, ILogger logger, IStreamFactory streamFactory, ICompressorSettings settings)
        {
            _io            = io ?? throw new ArgumentNullException(nameof(io));
            _logger        = logger ?? throw new ArgumentNullException(nameof(logger));
            _streamFactory = streamFactory ?? throw new ArgumentNullException(nameof(streamFactory));
            _settings      = settings ?? throw new ArgumentNullException(nameof(settings));

            _inputReader = new GzipperUserInputReader(_io);
        }