Esempio n. 1
0
        public async Task EvaluateLogFileTest(string path, ValidateSensorLogModel validateSensorLogModel, string expected)
        {
            // Arrange
            _mediatr
            .Setup(x => x.Send(It.IsAny <ParseSensorRecordCommand>(), default))
            .ReturnsAsync(new CommandResult <SensorLogModel>());

            _mediatr
            .Setup(x => x.Send(It.IsAny <ValidateSensorRecordCommand>(), default))
            .ReturnsAsync(new CommandResult <ValidateSensorLogModel> {
                Result = validateSensorLogModel
            });

            // Act
            string actual = await _evaluateSensorLogRecords.EvaluateLogFileAsync(path);

            // Assert
            using (new AssertionScope())
            {
                actual
                .Should()
                .NotBeNull()
                .And
                .BeEquivalentTo(expected);

                IDictionary <string, string> actualDictionary = JsonSerializer.Deserialize <Dictionary <string, string> >(actual);

                actualDictionary
                .Should()
                .Contain("temp-1", "precise")
                .And
                .Contain("temp-2", "ultra precise")
                .And
                .Contain("hum-1", "keep")
                .And
                .Contain("hum-2", "discard")
                .And
                .Contain("mon-1", "keep")
                .And
                .Contain("mon-2", "discard");
            }
        }
Esempio n. 2
0
        /// <summary>
        /// Run the program
        /// </summary>
        /// <param name="path">The path to the sensor log input text file</param>
        public async Task Run(string path)
        {
            try
            {
                string output = await _evaluateSensorLogRecords.EvaluateLogFileAsync(path);

                Console.WriteLine("Devices and classification:");
                Console.WriteLine(output);
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, ex.Message);
                Console.WriteLine($"Exception: {ex}");
            }
            finally
            {
                Console.WriteLine("--- Press Any Key To Continue ---");
                Console.ReadKey(true);
            }
        }