Example #1
0
        public void PrintMeasurementsByType_ImplementedCorrectly()
        {
            var heartRateMeasurement   = new Measurement(DateTime.Now, 0d, MeasurementType.HeartRate);
            var temperatureMeasurement = new Measurement(DateTime.Now, 0d, MeasurementType.Temperature);
            var mappedMeasurements     = new Dictionary <MeasurementType, IEnumerable <Measurement> >()
            {
                { MeasurementType.HeartRate, new List <Measurement>()
                  {
                      heartRateMeasurement
                  } },
                { MeasurementType.Temperature, new List <Measurement>()
                  {
                      temperatureMeasurement
                  } }
            };

            var measurementPrinter = new MeasurementPrinter(_printerMock.Object);

            measurementPrinter.PrintMeasurementsByMeasurementType(mappedMeasurements);

            _printerMock.Verify(printer => printer.Print(It.IsAny <string>()), Times.Exactly(4));
            _printerMock.Verify(printer => printer.Print(It.Is <string>(output => output.Contains(MeasurementType.HeartRate.GetDescription()))));
            _printerMock.Verify(printer => printer.Print(It.Is <string>(output => output.Contains(heartRateMeasurement.ToString()))));
            _printerMock.Verify(printer => printer.Print(It.Is <string>(output => output.Contains(MeasurementType.Temperature.GetDescription()))));
            _printerMock.Verify(printer => printer.Print(It.Is <string>(output => output.Contains(temperatureMeasurement.ToString()))));
        }
Example #2
0
        private static void Main(string[] args)
        {
            _measurementSorter      = new MeasurementSorter();
            _configurationStorage   = new ConfigurationStorage();
            _gridCalculator         = new GridCalculator(_configurationStorage);
            _measurementAccumulator = new MeasurementAccumulator(_gridCalculator);
            _printer            = new ConsolePrinter();
            _measurementPrinter = new MeasurementPrinter(_printer);

            var inputData      = GenerateInputData();
            var measurementMap = SampleDataDriven(inputData);

            _measurementPrinter.PrintMeasurementsByMeasurementType(measurementMap);
            _measurementPrinter.PrintMeasurementsByMeasurementTime(measurementMap);
            Console.ReadLine();
        }