public void ReadAllGetsAllValues() { using (var parser = new FormEncodedResponseParser(new StringReader("MyKey=MyValue&MyKey2=MyValue2"))) { var val = parser.ReadAll().ToArray(); Assert.AreEqual(2, val.Length); } }
public void ReadEmptyIsNull() { using (var parser = new FormEncodedResponseParser(new StringReader(""))) { var val = parser.Read(); Assert.IsNull(val); } }
public void HexEncodedValueIsParsed() { using (var parser = new FormEncodedResponseParser(new StringReader("My%20Key=My%20Value"))) { var val = parser.Read(); Assert.AreEqual("My Key", val.Item1); Assert.AreEqual("My Value", val.Item2); } }
public void ReadPastEndIsNull() { using (var parser = new FormEncodedResponseParser(new StringReader("MyKey=MyValue"))) { var first = parser.Read(); Assert.IsNotNull(first); var second = parser.Read(); Assert.IsNull(second); } }
public void ParserDisposesReader() { var reader = new Mock <TextReader>(); using (var parser = new FormEncodedResponseParser(reader.Object)) { //do nothing } reader.Protected().Verify("Dispose", Times.AtLeastOnce(), true); }
public void ReadGetsMultipleValues() { using (var parser = new FormEncodedResponseParser(new StringReader("MyKey=MyValue&MyKey2=MyValue2"))) { var first = parser.Read(); Assert.AreEqual("MyKey", first.Item1); Assert.AreEqual("MyValue", first.Item2); var second = parser.Read(); Assert.AreEqual("MyKey2", second.Item1); Assert.AreEqual("MyValue2", second.Item2); } }
public void ReadEmptyValuesAsEmptyStringAsync() { using (var parser = new FormEncodedResponseParser(new StringReader("KeyIsNull=&KeyHasValue=Value"))) { var first = parser.ReadAsync().Result; Assert.AreEqual("KeyIsNull", first.Item1); Assert.AreEqual(string.Empty, first.Item2); var second = parser.ReadAsync().Result; Assert.AreEqual("KeyHasValue", second.Item1); Assert.AreEqual("Value", second.Item2); } }
public T Parse(TextReader tr) { var ret = _converter.Create(); using (var parser = new FormEncodedResponseParser(tr)) { foreach (var kvp in parser.ReadAll()) { _converter.SetValue(ret, kvp.Item1, kvp.Item2); } } return(ret); }
public void ReadMultiplePastEndIsNullAsync() { using (var parser = new FormEncodedResponseParser(new StringReader("MyKey=MyValue"))) { var first = parser.ReadAsync().Result; Assert.IsNotNull(first); var second = parser.ReadAsync().Result; Assert.IsNull(second); var third = parser.ReadAsync().Result; Assert.IsNull(third); } }
public async Task <T> ParseAsync(TextReader tr) { var ret = _converter.Create(); using (var parser = new FormEncodedResponseParser(tr)) { Tuple <string, string> kvp; while ((kvp = await parser.ReadAsync()) != null) { _converter.SetValue(ret, kvp.Item1, kvp.Item2); } } return(ret); }