@@ -415,7 +415,7 @@ fn process_events(pager: &mut Pager, stdout: &mut Stdout, options: &Options) ->
415415 modifiers : KeyModifiers :: NONE ,
416416 ..
417417 } ) => {
418- pager. page_up ( ) ? ;
418+ pager. page_up ( ) ;
419419 }
420420 Event :: Key ( KeyEvent {
421421 code : KeyCode :: Char ( 'k' ) ,
@@ -605,7 +605,7 @@ impl<'a> Pager<'a> {
605605 self . upper_mark = self . upper_mark . saturating_add ( 1 ) ;
606606 }
607607
608- fn page_up ( & mut self ) -> UResult < ( ) > {
608+ fn page_up ( & mut self ) {
609609 self . eof_reached = false ;
610610 // Move the viewing window up by the number of lines to display
611611 self . upper_mark = self
@@ -622,7 +622,6 @@ impl<'a> Pager<'a> {
622622 self . upper_mark = self . upper_mark . saturating_sub ( 1 ) ;
623623 }
624624 }
625- Ok ( ( ) )
626625 }
627626
628627 fn prev_line ( & mut self ) {
@@ -645,7 +644,7 @@ impl<'a> Pager<'a> {
645644 Ok ( ( ) )
646645 }
647646
648- fn draw_lines ( & mut self , stdout : & mut Stdout ) -> UResult < ( ) > {
647+ fn draw_lines ( & mut self , stdout : & mut impl Write ) -> UResult < ( ) > {
649648 // Clear current prompt line
650649 stdout. queue ( Clear ( ClearType :: CurrentLine ) ) ?;
651650
@@ -862,7 +861,7 @@ mod tests {
862861 assert_eq ! ( pager. upper_mark, pager. content_rows) ;
863862 pager. next_line ( ) ;
864863 assert_eq ! ( pager. upper_mark, pager. content_rows + 1 ) ;
865- pager. page_up ( ) . unwrap ( ) ;
864+ pager. page_up ( ) ;
866865 assert_eq ! ( pager. upper_mark, 1 ) ;
867866 pager. prev_line ( ) ;
868867 assert_eq ! ( pager. upper_mark, 0 ) ;
@@ -888,4 +887,17 @@ mod tests {
888887 let pager = TestPagerBuilder :: new ( & content) . from_line ( 3 ) . build ( ) ;
889888 assert_eq ! ( pager. upper_mark, 3 ) ;
890889 }
890+
891+ #[ test]
892+ fn test_silent_mode ( ) {
893+ let content = ( 1 ..=5 ) . map ( |i| i. to_string ( ) + "\n " ) . collect :: < String > ( ) ;
894+ let mut pager = TestPagerBuilder :: new ( & content)
895+ . from_line ( 3 )
896+ . silent ( true )
897+ . build ( ) ;
898+ let mut buf = Vec :: new ( ) ;
899+ pager. draw_prompt ( & mut buf, None ) ;
900+ let buf_str = String :: from_utf8_lossy ( & buf) ;
901+ assert ! ( buf_str. contains( HELP_MESSAGE ) ) ;
902+ }
891903}
0 commit comments