File tree Expand file tree Collapse file tree 3 files changed +61
-1
lines changed Expand file tree Collapse file tree 3 files changed +61
-1
lines changed Original file line number Diff line number Diff line change 4
4
- beta
5
5
- nightly
6
6
cache : cargo
7
+ before_cache :
8
+ - cargo clean -p serde-xml-rs
9
+ - rm -f target/debug/deps/libserde_xml_rs*.rlib
7
10
env :
8
11
global :
9
12
- RUST_BACKTRACE=1
Original file line number Diff line number Diff line change @@ -10,9 +10,14 @@ version = "0.3.0"
10
10
log = " 0.4"
11
11
serde = " 1.0"
12
12
xml-rs = " 0.8.0"
13
- error-chain = " 0.10.0"
13
+ error-chain = { version = " 0.10.0" , default-features = false }
14
14
15
15
[dev-dependencies ]
16
16
serde_derive = " 1.0"
17
17
simple_logger = " 1.0.1"
18
18
docmatic = " 0.1.2"
19
+
20
+ [features ]
21
+ default = [" with-backtrace" ]
22
+ with-backtrace = [" error-chain/default" ]
23
+ legacy-support = [" error-chain/example_generated" ]
Original file line number Diff line number Diff line change
1
+ #[ macro_use]
2
+ extern crate serde_derive;
3
+ extern crate serde_xml_rs;
4
+
5
+ #[ macro_use]
6
+ extern crate log;
7
+ extern crate simple_logger;
8
+
9
+ use serde_xml_rs:: from_str;
10
+
11
+ #[ derive( Debug , Deserialize , PartialEq ) ]
12
+ struct Item {
13
+ name : String ,
14
+ source : String ,
15
+ }
16
+
17
+ #[ test]
18
+ fn simple_struct_from_attributes_should_fail ( ) {
19
+ let _ = simple_logger:: init ( ) ;
20
+
21
+ let s = r##"
22
+ <item name="hello" source="world.rs />
23
+ "## ;
24
+
25
+ let item: Result < Item , _ > = from_str ( s) ;
26
+ match item {
27
+ Ok ( _) => assert ! ( false ) ,
28
+ Err ( e) => {
29
+ info ! ( "simple_struct_from_attributes_should_fail(): {}" , e) ;
30
+ assert ! ( true )
31
+ }
32
+ }
33
+ }
34
+
35
+ #[ test]
36
+ fn multiple_roots_attributes_should_fail ( ) {
37
+ let _ = simple_logger:: init ( ) ;
38
+
39
+ let s = r##"
40
+ <item name="hello" source="world.rs" />
41
+ <item name="hello source="world.rs" />
42
+ "## ;
43
+
44
+ let item: Result < Vec < Item > , _ > = from_str ( s) ;
45
+ match item {
46
+ Ok ( _) => assert ! ( false ) ,
47
+ Err ( e) => {
48
+ info ! ( "multiple_roots_attributes_should_fail(): {}" , e) ;
49
+ assert ! ( true )
50
+ }
51
+ }
52
+ }
You can’t perform that action at this time.
0 commit comments