Exemplo n.º 1
0
        public string ConvertTime(string aTime)
        {
            var time = _timeParser.Parse(aTime);
            var berlinClockEntity = _berlinClockEntityBuilder.Build(time);

            return(berlinClockEntity.ToString());
        }
Exemplo n.º 2
0
        public TTimeOut Transform(TTimeIn timeRepresentation)
        {
            var timeTarget = _timeParser.Parse(timeRepresentation);
            var result     = _timeDecorator.Decorate(timeTarget);

            return(result);
        }
Exemplo n.º 3
0
        public string convertTime(string timeString)
        {
            var time  = timeParser.Parse(timeString);
            var clock = Clock.Initialize(time);

            return(consoleSerializer.Serialize(clock.State));
        }
Exemplo n.º 4
0
        public string ConvertTime(string aTime)
        {
            var time   = _parser.Parse(aTime);
            var result = _printer.Print(time);

            return(result);
        }
        public void RunApplication(ITimeParser parser, IScreenGenerator generator, IFaceDigitGenerator faceGenerator)
        {
            Console.WriteLine("GenieClock By Brent Edwards");
            Console.WriteLine("Enter x to exit");
            bool keepGoing = true;

            while (keepGoing == true)
            {
                Console.WriteLine("\n");
                Console.WriteLine("Enter a time in 24 hour format hh:mm");
                Console.Write("> ");
                var enteredTime = Console.ReadLine();
                Console.WriteLine("\n");

                if (enteredTime == "x")
                {
                    keepGoing = false;
                }
                else
                {
                    try
                    {
                        Tuple <int, int> timeValues = null;
                        try
                        {
                            timeValues = parser.Parse(enteredTime);
                        }
                        catch
                        {
                            Console.WriteLine("Invalid Input. Please use hh:mm");
                        }

                        if (timeValues != null)
                        {
                            var points = faceGenerator.Generate(timeValues.Item1, timeValues.Item2);
                            var screen = generator.Generate(points);
                            var rows   = screen.GetLongLength(0);
                            var cols   = screen.GetLongLength(1);
                            for (var row = 0; row < rows; row++)
                            {
                                for (var col = 0; col < cols; col++)
                                {
                                    Console.Write(screen[row, col]);
                                }
                                Console.WriteLine("");
                            }
                        }
                    }
                    catch
                    {
                        Console.WriteLine("Error Processing Clock");
                    }
                }
            }
        }
Exemplo n.º 6
0
 public void WhenIParse(string timeString)
 {
     try
     {
         result = timeParser.Parse(timeString);
     }
     catch (Exception e)
     {
         exception = e;
     }
 }
Exemplo n.º 7
0
        public void MiddayShouldReturn_12_0()
        {
            var actual = _parser.Parse("12:00");

            Assert.AreEqual(12, actual.Item1);
            Assert.AreEqual(0, actual.Item2);
        }
Exemplo n.º 8
0
 public string ConvertTime(string aTime)
 {
     try
     {
         var time = _timeParser.Parse(aTime);
         _clock.SetTime(time);
         return(_outputFormatter.Print(_clock));
     }
     catch (InvalidTimeException ex)
     {
         return(ex.Message);
     }
 }
Exemplo n.º 9
0
        public string convertTime(string aTime)
        {
            var parsedTime   = timeParser.Parse(aTime);
            var clockBuilder = new StringBuilder();

            for (var builderIndex = 0; builderIndex < builders.Length; builderIndex++)
            {
                var builder = builders[builderIndex];
                builder.Build(clockBuilder, parsedTime);
                if (builderIndex < builders.Length - 1)
                {
                    clockBuilder.AppendLine();
                }
            }
            return(clockBuilder.ToString());
        }
Exemplo n.º 10
0
        public string Translate(string time)
        {
            var(hour, minute) = _timeParser.Parse(time);

            var translatedHour   = _timeMapper.MapHour(hour);
            var translatedMinute = _timeMapper.MapMinute(minute);

            if (MinutesAreZero(minute))
            {
                return(Format($"{translatedHour} o'clock"));
            }

            if (MinuteIsLessThanThirty(minute))
            {
                return(Format($"{translatedMinute} past {translatedHour}"));
            }

            translatedHour = GetNewHourWhenMinuteIsGreaterThanThirty(hour);
            return(Format($"{translatedMinute} to {translatedHour}"));
        }
Exemplo n.º 11
0
        public string ConvertTime(string aTime)
        {
            var time             = _timeParser.Parse(aTime);
            var validationResult = _timeValidator.Validate(time);

            if (!validationResult.IsValid)
            {
                var errorMessages = validationResult.Errors.Select(failure =>
                                                                   $"Property {failure.PropertyName} failed validation. Error was: {failure.ErrorMessage}").ToList();

                if (errorMessages.Any())
                {
                    throw new ValidationErrorException(string.Join(Environment.NewLine, errorMessages));
                }
            }

            IBerlinTimeConverter converter = new BerlinTimeConverter(_lightParsers);

            return(converter.Convert(time));
        }
Exemplo n.º 12
0
        public string ConvertTime(string timeAsString)
        {
            var time = timeParser.Parse(timeAsString);

            return(berlinClockBuilder.Build(time));
        }
Exemplo n.º 13
0
 public void ShouldThrowExceptionWhenNullString()
 {
     Assert.Throws <ArgumentException>(() => _timeParser.Parse(null));
 }
Exemplo n.º 14
0
 public string convertTime(string aTime)
 {
     return(_colourMapper.MapToLampString(
                _timeParser.Parse(aTime)));
 }
Exemplo n.º 15
0
 public void ShouldThrowExceptionWhenTimeNull()
 {
     Assert.Throws <ArgumentNullException>(() => { timeParser.Parse(null); });
 }