fn test_build_response_sync_flag_false()

in clock-bound-d/src/response.rs [604:638]


    fn test_build_response_sync_flag_false() {
        let mut tracking = mock_tracking();

        tracking.leap_status = LEAP_STATUS_UNSYNCHRONIZED;

        let mut request: [u8; 12] = [0; 12];

        // Now request
        let request_type: u8 = 1;

        // Create a now request to test
        // Header
        // Version
        request[0] = RESPONSE_VERSION;
        // Command Type
        request[1] = request_type;

        let response = build_response(request, 4, tracking, false, 1.0);

        let mut rdr = Cursor::new(response);
        assert_eq!(RESPONSE_VERSION, rdr.read_u8().unwrap());
        assert_eq!(request_type, rdr.read_u8().unwrap());
        // Sync flag should be false
        assert_eq!(1, rdr.read_u8().unwrap());
        // Reserved
        assert_eq!(0, rdr.read_u8().unwrap());
        // Should still build the body of the response with the sync flag as false
        // Get the CEB from mock tracking data
        let ceb = ClockErrorBound::from(tracking).ceb;
        let bounds = clockbound_now(ceb);
        // Earliest bound
        assert_eq!(bounds.0, rdr.read_u64::<NetworkEndian>().unwrap());
        // Latest bound
        assert_eq!(bounds.1, rdr.read_u64::<NetworkEndian>().unwrap());
    }