File tree Expand file tree Collapse file tree 2 files changed +27
-0
lines changed Expand file tree Collapse file tree 2 files changed +27
-0
lines changed Original file line number Diff line number Diff line change
1
+ use bson:: { Bson , Document } ;
2
+
3
+ #[ test]
4
+ fn to_json ( ) {
5
+ let mut doc = Document :: new ( ) ;
6
+ doc. insert ( "first" . to_owned ( ) , Bson :: I32 ( 1 ) ) ;
7
+ doc. insert ( "second" . to_owned ( ) , Bson :: String ( "foo" . to_owned ( ) ) ) ;
8
+ doc. insert ( "alphanumeric" . to_owned ( ) , Bson :: String ( "bar" . to_owned ( ) ) ) ;
9
+ let data = Bson :: Document ( doc) . to_json ( ) ;
10
+
11
+ assert ! ( data. is_object( ) ) ;
12
+ let obj = data. as_object ( ) . unwrap ( ) ;
13
+
14
+ let first = obj. get ( "first" ) . unwrap ( ) ;
15
+ assert ! ( first. is_number( ) ) ;
16
+ assert_eq ! ( first. as_i64( ) . unwrap( ) , 1 ) ;
17
+
18
+ let second = obj. get ( "second" ) . unwrap ( ) ;
19
+ assert ! ( second. is_string( ) ) ;
20
+ assert_eq ! ( second. as_string( ) . unwrap( ) , "foo" ) ;
21
+
22
+ let alphanumeric = obj. get ( "alphanumeric" ) . unwrap ( ) ;
23
+ assert ! ( alphanumeric. is_string( ) ) ;
24
+ assert_eq ! ( alphanumeric. as_string( ) . unwrap( ) , "bar" ) ;
25
+
26
+ }
Original file line number Diff line number Diff line change @@ -2,3 +2,4 @@ mod encoder;
2
2
mod macros;
3
3
mod oid;
4
4
mod ordered;
5
+ mod bson;
You can’t perform that action at this time.
0 commit comments