File tree Expand file tree Collapse file tree 2 files changed +15
-2
lines changed Expand file tree Collapse file tree 2 files changed +15
-2
lines changed Original file line number Diff line number Diff line change @@ -5,7 +5,7 @@ refs/heads/snap-stage3: 78a7676898d9f80ab540c6df5d4c9ce35bb50463
5
5
refs/heads/try: 519addf6277dbafccbb4159db4b710c37eaa2ec5
6
6
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
7
7
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8
- refs/heads/try2: 4d6dcefcbb8688b69dd80bc7382a2f593c3b08d8
8
+ refs/heads/try2: 4e9a63ff917af32bd9ddfee65f5871a5586771e1
9
9
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d
10
10
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
11
11
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
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