summaryrefslogtreecommitdiffstats
path: root/src/interactive/app/terminal_app.rs
diff options
context:
space:
mode:
authorPiotr Wach <pwach@bloomberg.net>2024-01-08 23:17:53 +0000
committerPiotr Wach <pwach@bloomberg.net>2024-01-08 23:17:53 +0000
commitd903ea67a4f77c9483aed7bda1ef6694ee4465da (patch)
tree3254eadc317a6899bbce054d764b4bf2f757361d /src/interactive/app/terminal_app.rs
parent6c63bf5a33ebb6b98516ca9a96796facfdab2277 (diff)
Fixed tests
Diffstat (limited to 'src/interactive/app/terminal_app.rs')
-rw-r--r--src/interactive/app/terminal_app.rs25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/interactive/app/terminal_app.rs b/src/interactive/app/terminal_app.rs
index 757ac76..82d7199 100644
--- a/src/interactive/app/terminal_app.rs
+++ b/src/interactive/app/terminal_app.rs
@@ -103,4 +103,29 @@ impl TerminalApp {
ProcessingResult::ExitRequested(res) => Ok(res),
}
}
+
+ pub fn run_until_traversed<B>(
+ &mut self,
+ terminal: &mut Terminal<B>,
+ events: Receiver<Event>,
+ ) -> Result<WalkResult>
+ where
+ B: Backend
+ {
+ while self.state.running_traversal.is_some() {
+ match self.state.process_event(
+ &mut self.window,
+ &mut self.traversal,
+ &mut self.display,
+ terminal,
+ &events,
+ )? {
+ Some(ProcessingResult::ExitRequested(res)) => {
+ return Ok(res);
+ }
+ _ => {}
+ }
+ }
+ Ok(WalkResult { num_errors: 0 })
+ }
}