11use std:: time:: Duration ;
22
3- use bson:: { doc, DateTime as BsonDateTime } ;
4- use chrono:: { DateTime , NaiveDateTime , Utc } ;
3+ use bson:: doc;
4+ use chrono:: { TimeZone , Utc } ;
55use serde:: Deserialize ;
66
77use crate :: {
@@ -89,7 +89,7 @@ impl TestServerDescription {
8989 let mut command_response = is_master_response_from_server_type ( server_type) ;
9090 command_response. tags = self . tags ;
9191 command_response. last_write = self . last_write . map ( |last_write| LastWrite {
92- last_write_date : utc_datetime_from_millis ( last_write. last_write_date ) ,
92+ last_write_date : Utc . timestamp_millis ( last_write. last_write_date ) . into ( ) ,
9393 } ) ;
9494
9595 let is_master = IsMasterReply {
@@ -104,7 +104,7 @@ impl TestServerDescription {
104104 ) ;
105105 server_desc. last_update_time = self
106106 . last_update_time
107- . map ( |i| utc_datetime_from_millis ( i as i64 ) ) ;
107+ . map ( |i| Utc . timestamp_millis ( i . into ( ) ) . into ( ) ) ;
108108
109109 Some ( server_desc)
110110 }
@@ -150,16 +150,6 @@ impl TestServerType {
150150 }
151151}
152152
153- fn utc_datetime_from_millis ( millis : i64 ) -> BsonDateTime {
154- let seconds_portion = millis / 1000 ;
155- let nanos_portion = ( millis % 1000 ) * 1_000_000 ;
156-
157- let naive_datetime = NaiveDateTime :: from_timestamp ( seconds_portion, nanos_portion as u32 ) ;
158- let datetime = DateTime :: from_utc ( naive_datetime, Utc ) ;
159-
160- BsonDateTime ( datetime)
161- }
162-
163153fn is_master_response_from_server_type ( server_type : ServerType ) -> IsMasterCommandResponse {
164154 let mut response = IsMasterCommandResponse :: default ( ) ;
165155
0 commit comments