add tests to deserializing sequences into a tuple
This commit is contained in:
parent
5892d4fd67
commit
f967a77a80
@ -199,13 +199,13 @@ pub trait Deserializer<E>: Iterator<Result<Token, E>> {
|
||||
fn expect_null(&mut self, token: Token) -> Result<(), E> {
|
||||
match token {
|
||||
Null => Ok(()),
|
||||
TupleStart(_) => {
|
||||
TupleStart(_) | SeqStart(_) => {
|
||||
match try!(self.expect_token()) {
|
||||
End => Ok(()),
|
||||
token => Err(self.syntax_error(token, [EndKind])),
|
||||
}
|
||||
}
|
||||
token => Err(self.syntax_error(token, [NullKind, TupleStartKind])),
|
||||
token => Err(self.syntax_error(token, [NullKind, TupleStartKind, SeqStartKind])),
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2897,6 +2897,13 @@ mod tests {
|
||||
test_parse_ok([
|
||||
("[[3], [1, 2]]", vec!(vec!(3i), vec!(1, 2))),
|
||||
]);
|
||||
|
||||
let v: () = from_iter("[]".chars()).unwrap();
|
||||
assert_eq!(v, ());
|
||||
|
||||
test_parse_ok([
|
||||
("[1, 2, 3]", (1u, 2u, 3u)),
|
||||
]);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
Loading…
Reference in New Issue
Block a user