Beispiel #1
0
        private static void TestSensorDataStringValues(SensorDataEntity expected, SensorData actual, SensorType sensorType)
        {
            switch (sensorType)
            {
            case SensorType.BooleanSensor:
                BoolSensorData boolData = JsonSerializer.Deserialize <BoolSensorData>(expected.TypedData);
                Assert.Equal(SensorDataStringValuesFactory.GetSimpleSensorsString(expected.TimeCollected, boolData.Comment, boolData.BoolValue),
                             actual.StringValue);
                Assert.Equal(boolData.BoolValue.ToString(), actual.ShortStringValue);
                break;

            case SensorType.IntSensor:
                IntSensorData intData = JsonSerializer.Deserialize <IntSensorData>(expected.TypedData);
                Assert.Equal(SensorDataStringValuesFactory.GetSimpleSensorsString(expected.TimeCollected, intData.Comment, intData.IntValue),
                             actual.StringValue);
                Assert.Equal(intData.IntValue.ToString(), actual.ShortStringValue);
                break;

            case SensorType.DoubleSensor:
                DoubleSensorData doubleData = JsonSerializer.Deserialize <DoubleSensorData>(expected.TypedData);
                Assert.Equal(SensorDataStringValuesFactory.GetSimpleSensorsString(expected.TimeCollected, doubleData.Comment, doubleData.DoubleValue),
                             actual.StringValue);
                Assert.Equal(doubleData.DoubleValue.ToString(), actual.ShortStringValue);
                break;

            case SensorType.StringSensor:
                StringSensorData stringData = JsonSerializer.Deserialize <StringSensorData>(expected.TypedData);
                Assert.Equal(SensorDataStringValuesFactory.GetSimpleSensorsString(expected.TimeCollected, stringData.Comment, stringData.StringValue),
                             actual.StringValue);
                Assert.Equal(stringData.StringValue, actual.ShortStringValue);
                break;

            case SensorType.IntegerBarSensor:
                IntBarSensorData intBarData = JsonSerializer.Deserialize <IntBarSensorData>(expected.TypedData);
                Assert.Equal(SensorDataStringValuesFactory.GetBarSensorsString(expected.TimeCollected, intBarData.Comment, intBarData.Min, intBarData.Mean, intBarData.Max, intBarData.Count, intBarData.LastValue),
                             actual.StringValue);
                Assert.Equal(SensorDataStringValuesFactory.GetBarSensorsShortString(intBarData.Min, intBarData.Mean, intBarData.Max, intBarData.Count, intBarData.LastValue),
                             actual.ShortStringValue);
                break;

            case SensorType.DoubleBarSensor:
                DoubleBarSensorData doubleBarData = JsonSerializer.Deserialize <DoubleBarSensorData>(expected.TypedData);
                Assert.Equal(SensorDataStringValuesFactory.GetBarSensorsString(expected.TimeCollected, doubleBarData.Comment, doubleBarData.Min, doubleBarData.Mean, doubleBarData.Max, doubleBarData.Count, doubleBarData.LastValue),
                             actual.StringValue);
                Assert.Equal(SensorDataStringValuesFactory.GetBarSensorsShortString(doubleBarData.Min, doubleBarData.Mean, doubleBarData.Max, doubleBarData.Count, doubleBarData.LastValue),
                             actual.ShortStringValue);
                break;

            case SensorType.FileSensorBytes:
                FileSensorBytesData fileSensorBytesData = JsonSerializer.Deserialize <FileSensorBytesData>(expected.TypedData);
                Assert.Equal(SensorDataStringValuesFactory.GetFileSensorsString(expected.TimeCollected, fileSensorBytesData.Comment, fileSensorBytesData.FileName, fileSensorBytesData.Extension, fileSensorBytesData.FileContent.Length),
                             actual.StringValue);
                Assert.Equal(SensorDataStringValuesFactory.GetFileSensorsShortString(fileSensorBytesData.FileName, fileSensorBytesData.Extension, fileSensorBytesData.FileContent.Length),
                             actual.ShortStringValue);
                break;
            }
        }
        private static string GetTypedDataForFileSensorBytes(string fileSensorTypedData)
        {
            var fileSensorData      = JsonSerializer.Deserialize <FileSensorData>(fileSensorTypedData);
            var fileSensorBytesData = new FileSensorBytesData()
            {
                Comment     = fileSensorData.Comment,
                Extension   = fileSensorData.Extension,
                FileContent = Encoding.UTF8.GetBytes(fileSensorData.FileContent),
                FileName    = fileSensorData.FileName,
            };

            return(JsonSerializer.Serialize(fileSensorBytesData));
        }