public void SetUp() { _stream = Substitute.For <Stream>(); SetUpStreamReader(); _streamReaderProvider = Substitute.For <Func <Stream, StreamReader> >(); _streamReaderProvider(_stream).Returns(_streamReader); _sut = new HumidityParser(_streamReaderProvider); }
public static TMeasurement Parse <TMeasurement>(double value, string type) where TMeasurement : IMeasurement { var runtimeType = typeof(TMeasurement); if (runtimeType == typeof(IEnergy)) { return((TMeasurement)EnergyParser.Parse(value, type)); } if (runtimeType == typeof(IPower)) { return((TMeasurement)PowerParser.Parse(value, type)); } if (runtimeType == typeof(IRatio)) { return((TMeasurement)RatioParser.Parse(value, type)); } if (runtimeType == typeof(ITemperature)) { return((TMeasurement)TemperatureParser.Parse(value, type)); } if (runtimeType == typeof(IHumidity)) { return((TMeasurement)HumidityParser.Parse(value, type)); } if (runtimeType == typeof(IIlluminance)) { return((TMeasurement)IlluminanceParser.Parse(value, type)); } if (runtimeType == typeof(IMeasurement)) { return((TMeasurement)(IMeasurement) new ReadOnlyMeasurement(value, type)); } throw new Exception("Could not determine type " + runtimeType.Name); }
public void ItParsesTheTypeProperly(string input, Type type) { var result = HumidityParser.Parse(input); Assert.That(result.GetType(), Is.EqualTo(type)); }
public void ItParsesTheValueProperly(string input, double expected) { var result = HumidityParser.Parse(input); Assert.That(result.Value, Is.EqualTo(expected)); }
public void ItThrowsAnExceptionWhenParsingInvalidValues(string input) { HumidityParser.Parse(input); }
public void ItDoesNotThrowAnExceptionWhenParsingValidValues(string input) { HumidityParser.Parse(input); }
public void ItRejectsPoorlyFormedValues(string input) { var result = HumidityParser.IsHumidity(input); Assert.That(result, Is.False); }
public void ItAcceptsWellFormedValues(string input) { var result = HumidityParser.IsHumidity(input); Assert.That(result, Is.True); }