File tree Expand file tree Collapse file tree 2 files changed +15
-2
lines changed
branches/snap-stage3/src/libstd Expand file tree Collapse file tree 2 files changed +15
-2
lines changed Original file line number Diff line number Diff line change 1
1
---
2
2
refs/heads/master: 3bbcac322669cff3abde5be937cc4ec3860f3985
3
3
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4
- refs/heads/snap-stage3: 4d6dcefcbb8688b69dd80bc7382a2f593c3b08d8
4
+ refs/heads/snap-stage3: 4e9a63ff917af32bd9ddfee65f5871a5586771e1
5
5
refs/heads/try: 2a8fb58d79e685d5ca07b039badcf2ae3ef077ea
6
6
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
7
7
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
Original file line number Diff line number Diff line change @@ -851,7 +851,6 @@ impl<'self> serialize::Decoder for Decoder<'self> {
851
851
852
852
fn read_enum<T>(&self, name: &str, f: &fn() -> T) -> T {
853
853
debug!(" read_enum( %s) ", name);
854
- if name != ~" option" { fail!(~" only supports the option enum ") }
855
854
f()
856
855
}
857
856
@@ -1720,6 +1719,20 @@ mod tests {
1720
1719
assert_eq!( value, Some ( ~"jodhpurs"));
1721
1720
}
1722
1721
1722
+ #[test]
1723
+ fn test_read_enum_no_args() {
1724
+ let decoder = Decoder(from_str(~"\" Dog\" " ) . unwrap( ) ) ;
1725
+ let value: Animal = Decodable :: decode( & decoder) ;
1726
+ assert_eq!( value, Dog ) ;
1727
+ }
1728
+
1729
+ #[ test]
1730
+ fn test_read_enum_multiple_args( ) {
1731
+ let decoder = Decoder ( from_str( ~"[ \" Frog \" , \" Henry \" , 349 ] ").unwrap());
1732
+ let value: Animal = Decodable::decode(&decoder);
1733
+ assert_eq!(value, Frog(~" Henry ", 349));
1734
+ }
1735
+
1723
1736
#[test]
1724
1737
fn test_multiline_errors() {
1725
1738
assert_eq!(from_str(~" { \n \"foo\" : \n \"bar\" ") ,
You can’t perform that action at this time.
0 commit comments