Lines Matching full:send
136 /// enough flow control credits to send at least some of that data.
159 /// control credit and need to send MAX_STREAM_DATA. This is used to
175 /// receive side, and need to send a STOP_SENDING frame. The value of the
564 /// Creates an iterator over streams that need to send MAX_STREAM_DATA.
569 /// Creates an iterator over streams that need to send STREAM_DATA_BLOCKED.
574 /// Creates an iterator over streams that need to send RESET_STREAM.
579 /// Creates an iterator over streams that need to send STOP_SENDING.
615 /// Returns true if there are any streams that need to send STOP_SENDING.
649 /// Send-side stream buffer.
650 pub send: SendBuf, field
661 pub data: Option<Box<dyn std::any::Any + Send + Sync>>,
678 send: SendBuf::new(max_tx_data), in new()
696 !self.send.shutdown && in is_writable()
697 !self.send.is_fin() && in is_writable()
698 (self.send.off + self.send_lowat as u64) < self.send.max_data in is_writable()
701 /// Returns true if the stream has data to send and is allowed to send at
704 self.send.ready() && self.send.off_front() < self.send.max_data in is_flushable()
709 /// For bidirectional streams this happens when both the receive and send
713 /// For unidirectional streams this happens when either the receive or send
718 // For bidirectional streams we need to check both receive and send in is_complete()
720 (true, _) => self.recv.is_fin() && self.send.is_complete(), in is_complete()
723 // check the send side for completion. in is_complete()
724 (false, true) => self.send.is_complete(), in is_complete()
1103 /// Send-side stream buffer.
1130 /// The maximum offset we are allowed to send to the peer.
1139 /// Whether the stream's send-side has been shut down.
1150 /// Creates a new send buffer.
1166 // Get the stream send capacity. This will return an error if the stream in write()
1217 // The new data can simply be appended at the end of the send buffer. in write()
1227 /// Writes data from the send buffer into the given output buffer.
1469 /// The maximum offset we are allowed to send to the peer.
1476 /// This happens when the stream's send final size is known, and the
1486 /// Returns true if the send-side of the stream is complete.
1488 /// This happens when the stream's send final size is known, and the peer
2279 let mut send = SendBuf::new(u64::MAX); in empty_write() localVariable
2280 assert_eq!(send.len, 0); in empty_write()
2282 let (written, fin) = send.emit(&mut buf).unwrap(); in empty_write()
2291 let mut send = SendBuf::new(u64::MAX); in multi_write() localVariable
2292 assert_eq!(send.len, 0); in multi_write()
2297 assert!(send.write(first, false).is_ok()); in multi_write()
2298 assert_eq!(send.len, 9); in multi_write()
2300 assert!(send.write(second, true).is_ok()); in multi_write()
2301 assert_eq!(send.len, 19); in multi_write()
2303 let (written, fin) = send.emit(&mut buf[..128]).unwrap(); in multi_write()
2307 assert_eq!(send.len, 0); in multi_write()
2314 let mut send = SendBuf::new(u64::MAX); in split_write() localVariable
2315 assert_eq!(send.len, 0); in split_write()
2320 assert!(send.write(first, false).is_ok()); in split_write()
2321 assert_eq!(send.len, 9); in split_write()
2323 assert!(send.write(second, true).is_ok()); in split_write()
2324 assert_eq!(send.len, 19); in split_write()
2326 assert_eq!(send.off_front(), 0); in split_write()
2328 let (written, fin) = send.emit(&mut buf[..10]).unwrap(); in split_write()
2332 assert_eq!(send.len, 9); in split_write()
2334 assert_eq!(send.off_front(), 10); in split_write()
2336 let (written, fin) = send.emit(&mut buf[..5]).unwrap(); in split_write()
2340 assert_eq!(send.len, 4); in split_write()
2342 assert_eq!(send.off_front(), 15); in split_write()
2344 let (written, fin) = send.emit(&mut buf[..10]).unwrap(); in split_write()
2348 assert_eq!(send.len, 0); in split_write()
2350 assert_eq!(send.off_front(), 19); in split_write()
2357 let mut send = SendBuf::new(u64::MAX); in resend() localVariable
2358 assert_eq!(send.len, 0); in resend()
2359 assert_eq!(send.off_front(), 0); in resend()
2364 assert!(send.write(first, false).is_ok()); in resend()
2365 assert_eq!(send.off_front(), 0); in resend()
2367 assert!(send.write(second, true).is_ok()); in resend()
2368 assert_eq!(send.off_front(), 0); in resend()
2370 assert_eq!(send.len, 19); in resend()
2372 let (written, fin) = send.emit(&mut buf[..4]).unwrap(); in resend()
2376 assert_eq!(send.len, 15); in resend()
2377 assert_eq!(send.off_front(), 4); in resend()
2379 let (written, fin) = send.emit(&mut buf[..5]).unwrap(); in resend()
2383 assert_eq!(send.len, 10); in resend()
2384 assert_eq!(send.off_front(), 9); in resend()
2386 let (written, fin) = send.emit(&mut buf[..5]).unwrap(); in resend()
2390 assert_eq!(send.len, 5); in resend()
2391 assert_eq!(send.off_front(), 14); in resend()
2393 send.retransmit(4, 5); in resend()
2394 assert_eq!(send.len, 10); in resend()
2395 assert_eq!(send.off_front(), 4); in resend()
2397 send.retransmit(0, 4); in resend()
2398 assert_eq!(send.len, 14); in resend()
2399 assert_eq!(send.off_front(), 0); in resend()
2401 let (written, fin) = send.emit(&mut buf[..11]).unwrap(); in resend()
2405 assert_eq!(send.len, 5); in resend()
2406 assert_eq!(send.off_front(), 14); in resend()
2408 let (written, fin) = send.emit(&mut buf[..11]).unwrap(); in resend()
2412 assert_eq!(send.len, 0); in resend()
2413 assert_eq!(send.off_front(), 19); in resend()
2420 let mut send = SendBuf::default(); in write_blocked_by_off() localVariable
2421 assert_eq!(send.len, 0); in write_blocked_by_off()
2426 assert_eq!(send.write(first, false), Ok(0)); in write_blocked_by_off()
2427 assert_eq!(send.len, 0); in write_blocked_by_off()
2429 assert_eq!(send.write(second, true), Ok(0)); in write_blocked_by_off()
2430 assert_eq!(send.len, 0); in write_blocked_by_off()
2432 send.update_max_data(5); in write_blocked_by_off()
2434 assert_eq!(send.write(first, false), Ok(5)); in write_blocked_by_off()
2435 assert_eq!(send.len, 5); in write_blocked_by_off()
2437 assert_eq!(send.write(second, true), Ok(0)); in write_blocked_by_off()
2438 assert_eq!(send.len, 5); in write_blocked_by_off()
2440 assert_eq!(send.off_front(), 0); in write_blocked_by_off()
2442 let (written, fin) = send.emit(&mut buf[..10]).unwrap(); in write_blocked_by_off()
2446 assert_eq!(send.len, 0); in write_blocked_by_off()
2448 assert_eq!(send.off_front(), 5); in write_blocked_by_off()
2450 let (written, fin) = send.emit(&mut buf[..10]).unwrap(); in write_blocked_by_off()
2454 assert_eq!(send.len, 0); in write_blocked_by_off()
2456 send.update_max_data(15); in write_blocked_by_off()
2458 assert_eq!(send.write(&first[5..], false), Ok(4)); in write_blocked_by_off()
2459 assert_eq!(send.len, 4); in write_blocked_by_off()
2461 assert_eq!(send.write(second, true), Ok(6)); in write_blocked_by_off()
2462 assert_eq!(send.len, 10); in write_blocked_by_off()
2464 assert_eq!(send.off_front(), 5); in write_blocked_by_off()
2466 let (written, fin) = send.emit(&mut buf[..10]).unwrap(); in write_blocked_by_off()
2470 assert_eq!(send.len, 0); in write_blocked_by_off()
2472 send.update_max_data(25); in write_blocked_by_off()
2474 assert_eq!(send.write(&second[6..], true), Ok(4)); in write_blocked_by_off()
2475 assert_eq!(send.len, 4); in write_blocked_by_off()
2477 assert_eq!(send.off_front(), 15); in write_blocked_by_off()
2479 let (written, fin) = send.emit(&mut buf[..10]).unwrap(); in write_blocked_by_off()
2483 assert_eq!(send.len, 0); in write_blocked_by_off()
2490 let mut send = SendBuf::new(u64::MAX); in zero_len_write() localVariable
2491 assert_eq!(send.len, 0); in zero_len_write()
2495 assert!(send.write(first, false).is_ok()); in zero_len_write()
2496 assert_eq!(send.len, 9); in zero_len_write()
2498 assert!(send.write(&[], true).is_ok()); in zero_len_write()
2499 assert_eq!(send.len, 9); in zero_len_write()
2501 assert_eq!(send.off_front(), 0); in zero_len_write()
2503 let (written, fin) = send.emit(&mut buf[..10]).unwrap(); in zero_len_write()
2507 assert_eq!(send.len, 0); in zero_len_write()
2671 assert!(stream.send.write(first, false).is_ok()); in send_flow_control()
2672 assert!(stream.send.write(second, false).is_ok()); in send_flow_control()
2673 assert!(stream.send.write(third, false).is_ok()); in send_flow_control()
2675 assert_eq!(stream.send.off_front(), 0); in send_flow_control()
2677 let (written, fin) = stream.send.emit(&mut buf[..25]).unwrap(); in send_flow_control()
2682 assert_eq!(stream.send.off_front(), 15); in send_flow_control()
2684 let (written, fin) = stream.send.emit(&mut buf[..25]).unwrap(); in send_flow_control()
2689 stream.send.retransmit(0, 15); in send_flow_control()
2691 assert_eq!(stream.send.off_front(), 0); in send_flow_control()
2693 let (written, fin) = stream.send.emit(&mut buf[..10]).unwrap(); in send_flow_control()
2698 assert_eq!(stream.send.off_front(), 10); in send_flow_control()
2700 let (written, fin) = stream.send.emit(&mut buf[..10]).unwrap(); in send_flow_control()
2714 assert_eq!(stream.send.write(first, false), Ok(5)); in send_past_fin()
2716 assert_eq!(stream.send.write(second, true), Ok(5)); in send_past_fin()
2717 assert!(stream.send.is_fin()); in send_past_fin()
2719 assert_eq!(stream.send.write(third, false), Err(Error::FinalSize)); in send_past_fin()
2726 assert_eq!(stream.send.write(b"hello", true), Ok(5)); in send_fin_dup()
2727 assert!(stream.send.is_fin()); in send_fin_dup()
2729 assert_eq!(stream.send.write(b"", true), Ok(0)); in send_fin_dup()
2730 assert!(stream.send.is_fin()); in send_fin_dup()
2737 assert_eq!(stream.send.write(b"hello", true), Ok(5)); in send_undo_fin()
2738 assert!(stream.send.is_fin()); in send_undo_fin()
2741 stream.send.write(b"helloworld", true), in send_undo_fin()
2754 assert!(stream.send.write(slice, true).is_ok()); in send_fin_max_data_match()
2756 let (written, fin) = stream.send.emit(&mut buf[..15]).unwrap(); in send_fin_max_data_match()
2768 assert_eq!(stream.send.write(b"hello", false), Ok(5)); in send_fin_zero_length()
2769 assert_eq!(stream.send.write(b"", true), Ok(0)); in send_fin_zero_length()
2770 assert!(stream.send.is_fin()); in send_fin_zero_length()
2772 let (written, fin) = stream.send.emit(&mut buf[..5]).unwrap(); in send_fin_zero_length()
2784 assert_eq!(stream.send.write(b"hello", false), Ok(5)); in send_ack()
2785 assert_eq!(stream.send.write(b"world", false), Ok(5)); in send_ack()
2786 assert_eq!(stream.send.write(b"", true), Ok(0)); in send_ack()
2787 assert!(stream.send.is_fin()); in send_ack()
2789 assert_eq!(stream.send.off_front(), 0); in send_ack()
2791 let (written, fin) = stream.send.emit(&mut buf[..5]).unwrap(); in send_ack()
2796 stream.send.ack_and_drop(0, 5); in send_ack()
2798 stream.send.retransmit(0, 5); in send_ack()
2800 assert_eq!(stream.send.off_front(), 5); in send_ack()
2802 let (written, fin) = stream.send.emit(&mut buf[..5]).unwrap(); in send_ack()
2814 assert_eq!(stream.send.write(b"hello", false), Ok(5)); in send_ack_reordering()
2815 assert_eq!(stream.send.write(b"world", false), Ok(5)); in send_ack_reordering()
2816 assert_eq!(stream.send.write(b"", true), Ok(0)); in send_ack_reordering()
2817 assert!(stream.send.is_fin()); in send_ack_reordering()
2819 assert_eq!(stream.send.off_front(), 0); in send_ack_reordering()
2821 let (written, fin) = stream.send.emit(&mut buf[..5]).unwrap(); in send_ack_reordering()
2826 assert_eq!(stream.send.off_front(), 5); in send_ack_reordering()
2828 let (written, fin) = stream.send.emit(&mut buf[..1]).unwrap(); in send_ack_reordering()
2833 stream.send.ack_and_drop(5, 1); in send_ack_reordering()
2834 stream.send.ack_and_drop(0, 5); in send_ack_reordering()
2836 stream.send.retransmit(0, 5); in send_ack_reordering()
2837 stream.send.retransmit(5, 1); in send_ack_reordering()
2839 assert_eq!(stream.send.off_front(), 6); in send_ack_reordering()
2841 let (written, fin) = stream.send.emit(&mut buf[..5]).unwrap(); in send_ack_reordering()
2873 assert_eq!(stream.send.write(b"hello", false), Ok(5)); in stream_complete()
2874 assert_eq!(stream.send.write(b"world", false), Ok(5)); in stream_complete()
2876 assert!(!stream.send.is_complete()); in stream_complete()
2877 assert!(!stream.send.is_fin()); in stream_complete()
2879 assert_eq!(stream.send.write(b"", true), Ok(0)); in stream_complete()
2881 assert!(!stream.send.is_complete()); in stream_complete()
2882 assert!(stream.send.is_fin()); in stream_complete()
2888 stream.send.ack(6, 4); in stream_complete()
2889 assert!(!stream.send.is_complete()); in stream_complete()
2895 stream.send.ack(1, 5); in stream_complete()
2896 assert!(!stream.send.is_complete()); in stream_complete()
2898 stream.send.ack(0, 1); in stream_complete()
2899 assert!(stream.send.is_complete()); in stream_complete()
2916 assert_eq!(stream.send.write(b"hello", false), Ok(5)); in send_fin_zero_length_output()
2917 assert_eq!(stream.send.off_front(), 0); in send_fin_zero_length_output()
2918 assert!(!stream.send.is_fin()); in send_fin_zero_length_output()
2920 let (written, fin) = stream.send.emit(&mut buf).unwrap(); in send_fin_zero_length_output()
2925 assert_eq!(stream.send.write(b"", true), Ok(0)); in send_fin_zero_length_output()
2926 assert!(stream.send.is_fin()); in send_fin_zero_length_output()
2927 assert_eq!(stream.send.off_front(), 5); in send_fin_zero_length_output()
2929 let (written, fin) = stream.send.emit(&mut buf).unwrap(); in send_fin_zero_length_output()
2941 assert_eq!(stream.send.write(b"hello", false), Ok(5)); in send_emit()
2942 assert_eq!(stream.send.write(b"world", false), Ok(5)); in send_emit()
2943 assert_eq!(stream.send.write(b"olleh", false), Ok(5)); in send_emit()
2944 assert_eq!(stream.send.write(b"dlrow", true), Ok(5)); in send_emit()
2945 assert_eq!(stream.send.off_front(), 0); in send_emit()
2946 assert_eq!(stream.send.data.len(), 4); in send_emit()
2950 assert!(stream.send.ready()); in send_emit()
2951 assert_eq!(stream.send.emit(&mut buf[..4]), Ok((4, false))); in send_emit()
2952 assert_eq!(stream.send.off_front(), 4); in send_emit()
2955 assert!(stream.send.ready()); in send_emit()
2956 assert_eq!(stream.send.emit(&mut buf[..4]), Ok((4, false))); in send_emit()
2957 assert_eq!(stream.send.off_front(), 8); in send_emit()
2960 assert!(stream.send.ready()); in send_emit()
2961 assert_eq!(stream.send.emit(&mut buf[..2]), Ok((2, false))); in send_emit()
2962 assert_eq!(stream.send.off_front(), 10); in send_emit()
2965 assert!(stream.send.ready()); in send_emit()
2966 assert_eq!(stream.send.emit(&mut buf[..1]), Ok((1, false))); in send_emit()
2967 assert_eq!(stream.send.off_front(), 11); in send_emit()
2970 assert!(stream.send.ready()); in send_emit()
2971 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((5, false))); in send_emit()
2972 assert_eq!(stream.send.off_front(), 16); in send_emit()
2975 assert!(stream.send.ready()); in send_emit()
2976 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((4, true))); in send_emit()
2977 assert_eq!(stream.send.off_front(), 20); in send_emit()
2982 assert!(!stream.send.ready()); in send_emit()
2983 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((0, true))); in send_emit()
2984 assert_eq!(stream.send.off_front(), 20); in send_emit()
2993 assert_eq!(stream.send.write(b"hello", false), Ok(5)); in send_emit_ack()
2994 assert_eq!(stream.send.write(b"world", false), Ok(5)); in send_emit_ack()
2995 assert_eq!(stream.send.write(b"olleh", false), Ok(5)); in send_emit_ack()
2996 assert_eq!(stream.send.write(b"dlrow", true), Ok(5)); in send_emit_ack()
2997 assert_eq!(stream.send.off_front(), 0); in send_emit_ack()
2998 assert_eq!(stream.send.data.len(), 4); in send_emit_ack()
3002 assert!(stream.send.ready()); in send_emit_ack()
3003 assert_eq!(stream.send.emit(&mut buf[..4]), Ok((4, false))); in send_emit_ack()
3004 assert_eq!(stream.send.off_front(), 4); in send_emit_ack()
3007 assert!(stream.send.ready()); in send_emit_ack()
3008 assert_eq!(stream.send.emit(&mut buf[..4]), Ok((4, false))); in send_emit_ack()
3009 assert_eq!(stream.send.off_front(), 8); in send_emit_ack()
3012 stream.send.ack_and_drop(0, 5); in send_emit_ack()
3013 assert_eq!(stream.send.data.len(), 3); in send_emit_ack()
3015 assert!(stream.send.ready()); in send_emit_ack()
3016 assert_eq!(stream.send.emit(&mut buf[..2]), Ok((2, false))); in send_emit_ack()
3017 assert_eq!(stream.send.off_front(), 10); in send_emit_ack()
3020 stream.send.ack_and_drop(7, 5); in send_emit_ack()
3021 assert_eq!(stream.send.data.len(), 3); in send_emit_ack()
3023 assert!(stream.send.ready()); in send_emit_ack()
3024 assert_eq!(stream.send.emit(&mut buf[..1]), Ok((1, false))); in send_emit_ack()
3025 assert_eq!(stream.send.off_front(), 11); in send_emit_ack()
3028 assert!(stream.send.ready()); in send_emit_ack()
3029 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((5, false))); in send_emit_ack()
3030 assert_eq!(stream.send.off_front(), 16); in send_emit_ack()
3033 stream.send.ack_and_drop(5, 7); in send_emit_ack()
3034 assert_eq!(stream.send.data.len(), 2); in send_emit_ack()
3036 assert!(stream.send.ready()); in send_emit_ack()
3037 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((4, true))); in send_emit_ack()
3038 assert_eq!(stream.send.off_front(), 20); in send_emit_ack()
3043 assert!(!stream.send.ready()); in send_emit_ack()
3044 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((0, true))); in send_emit_ack()
3045 assert_eq!(stream.send.off_front(), 20); in send_emit_ack()
3047 stream.send.ack_and_drop(22, 4); in send_emit_ack()
3048 assert_eq!(stream.send.data.len(), 2); in send_emit_ack()
3050 stream.send.ack_and_drop(20, 1); in send_emit_ack()
3051 assert_eq!(stream.send.data.len(), 2); in send_emit_ack()
3060 assert_eq!(stream.send.write(b"hello", false), Ok(5)); in send_emit_retransmit()
3061 assert_eq!(stream.send.write(b"world", false), Ok(5)); in send_emit_retransmit()
3062 assert_eq!(stream.send.write(b"olleh", false), Ok(5)); in send_emit_retransmit()
3063 assert_eq!(stream.send.write(b"dlrow", true), Ok(5)); in send_emit_retransmit()
3064 assert_eq!(stream.send.off_front(), 0); in send_emit_retransmit()
3065 assert_eq!(stream.send.data.len(), 4); in send_emit_retransmit()
3069 assert!(stream.send.ready()); in send_emit_retransmit()
3070 assert_eq!(stream.send.emit(&mut buf[..4]), Ok((4, false))); in send_emit_retransmit()
3071 assert_eq!(stream.send.off_front(), 4); in send_emit_retransmit()
3074 assert!(stream.send.ready()); in send_emit_retransmit()
3075 assert_eq!(stream.send.emit(&mut buf[..4]), Ok((4, false))); in send_emit_retransmit()
3076 assert_eq!(stream.send.off_front(), 8); in send_emit_retransmit()
3079 stream.send.retransmit(3, 3); in send_emit_retransmit()
3080 assert_eq!(stream.send.off_front(), 3); in send_emit_retransmit()
3082 assert!(stream.send.ready()); in send_emit_retransmit()
3083 assert_eq!(stream.send.emit(&mut buf[..3]), Ok((3, false))); in send_emit_retransmit()
3084 assert_eq!(stream.send.off_front(), 8); in send_emit_retransmit()
3087 assert!(stream.send.ready()); in send_emit_retransmit()
3088 assert_eq!(stream.send.emit(&mut buf[..2]), Ok((2, false))); in send_emit_retransmit()
3089 assert_eq!(stream.send.off_front(), 10); in send_emit_retransmit()
3092 stream.send.ack_and_drop(7, 2); in send_emit_retransmit()
3094 stream.send.retransmit(8, 2); in send_emit_retransmit()
3096 assert!(stream.send.ready()); in send_emit_retransmit()
3097 assert_eq!(stream.send.emit(&mut buf[..2]), Ok((2, false))); in send_emit_retransmit()
3098 assert_eq!(stream.send.off_front(), 10); in send_emit_retransmit()
3101 assert!(stream.send.ready()); in send_emit_retransmit()
3102 assert_eq!(stream.send.emit(&mut buf[..1]), Ok((1, false))); in send_emit_retransmit()
3103 assert_eq!(stream.send.off_front(), 11); in send_emit_retransmit()
3106 assert!(stream.send.ready()); in send_emit_retransmit()
3107 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((5, false))); in send_emit_retransmit()
3108 assert_eq!(stream.send.off_front(), 16); in send_emit_retransmit()
3111 stream.send.retransmit(12, 2); in send_emit_retransmit()
3113 assert!(stream.send.ready()); in send_emit_retransmit()
3114 assert_eq!(stream.send.emit(&mut buf[..2]), Ok((2, false))); in send_emit_retransmit()
3115 assert_eq!(stream.send.off_front(), 16); in send_emit_retransmit()
3118 assert!(stream.send.ready()); in send_emit_retransmit()
3119 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((4, true))); in send_emit_retransmit()
3120 assert_eq!(stream.send.off_front(), 20); in send_emit_retransmit()
3125 assert!(!stream.send.ready()); in send_emit_retransmit()
3126 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((0, true))); in send_emit_retransmit()
3127 assert_eq!(stream.send.off_front(), 20); in send_emit_retransmit()
3129 stream.send.retransmit(7, 12); in send_emit_retransmit()
3131 assert!(stream.send.ready()); in send_emit_retransmit()
3132 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((5, false))); in send_emit_retransmit()
3133 assert_eq!(stream.send.off_front(), 12); in send_emit_retransmit()
3136 assert!(stream.send.ready()); in send_emit_retransmit()
3137 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((5, false))); in send_emit_retransmit()
3138 assert_eq!(stream.send.off_front(), 17); in send_emit_retransmit()
3141 assert!(stream.send.ready()); in send_emit_retransmit()
3142 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((2, false))); in send_emit_retransmit()
3143 assert_eq!(stream.send.off_front(), 20); in send_emit_retransmit()
3146 stream.send.ack_and_drop(12, 7); in send_emit_retransmit()
3148 stream.send.retransmit(7, 12); in send_emit_retransmit()
3150 assert!(stream.send.ready()); in send_emit_retransmit()
3151 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((5, false))); in send_emit_retransmit()
3152 assert_eq!(stream.send.off_front(), 12); in send_emit_retransmit()
3155 assert!(stream.send.ready()); in send_emit_retransmit()
3156 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((5, false))); in send_emit_retransmit()
3157 assert_eq!(stream.send.off_front(), 17); in send_emit_retransmit()
3160 assert!(stream.send.ready()); in send_emit_retransmit()
3161 assert_eq!(stream.send.emit(&mut buf[..5]), Ok((2, false))); in send_emit_retransmit()
3162 assert_eq!(stream.send.off_front(), 20); in send_emit_retransmit()
3349 let mut send = SendBuf::new(u64::MAX); in send_buf_len_on_retransmit() localVariable
3350 assert_eq!(send.len, 0); in send_buf_len_on_retransmit()
3351 assert_eq!(send.off_front(), 0); in send_buf_len_on_retransmit()
3355 assert!(send.write(first, false).is_ok()); in send_buf_len_on_retransmit()
3356 assert_eq!(send.off_front(), 0); in send_buf_len_on_retransmit()
3358 assert_eq!(send.len, 9); in send_buf_len_on_retransmit()
3360 let (written, fin) = send.emit(&mut buf[..4]).unwrap(); in send_buf_len_on_retransmit()
3364 assert_eq!(send.len, 5); in send_buf_len_on_retransmit()
3365 assert_eq!(send.off_front(), 4); in send_buf_len_on_retransmit()
3367 send.retransmit(3, 5); in send_buf_len_on_retransmit()
3368 assert_eq!(send.len, 6); in send_buf_len_on_retransmit()
3369 assert_eq!(send.off_front(), 3); in send_buf_len_on_retransmit()
3375 let mut send = SendBuf::new(u64::MAX); in send_buf_final_size_retransmit() localVariable
3377 send.write(&buf, false).unwrap(); in send_buf_final_size_retransmit()
3378 assert_eq!(send.off_front(), 0); in send_buf_final_size_retransmit()
3381 let (written, _fin) = send.emit(&mut buf).unwrap(); in send_buf_final_size_retransmit()
3383 assert_eq!(send.off_front(), buf.len() as u64); in send_buf_final_size_retransmit()
3387 send.retransmit(40, 10); in send_buf_final_size_retransmit()
3390 // send in the RESET_STREAM should be 50. If we send anything less, in send_buf_final_size_retransmit()
3392 let (fin_off, unsent) = send.stop(0).unwrap(); in send_buf_final_size_retransmit()