fixes
Some checks failed
CI / Check (pull_request) Has been cancelled
CI / Format (pull_request) Has been cancelled
CI / Clippy (pull_request) Has been cancelled
CI / Build (macos-latest) (pull_request) Has been cancelled
CI / Build (ubuntu-latest) (pull_request) Has been cancelled
CI / Build (windows-latest) (pull_request) Has been cancelled

This commit is contained in:
Mikhail Kilin
2026-01-29 01:22:57 +03:00
parent 68a2b7a982
commit 126c7482af
39 changed files with 2861 additions and 74 deletions

116
tests/footer.rs Normal file
View File

@@ -0,0 +1,116 @@
// Footer UI snapshot tests
mod helpers;
use helpers::test_data::create_test_chat;
use helpers::app_builder::TestAppBuilder;
use helpers::snapshot_utils::{render_to_buffer, buffer_to_string};
use insta::assert_snapshot;
use tele_tui::tdlib::NetworkState;
#[test]
fn snapshot_footer_chat_list() {
let chat = create_test_chat("Mom", 123);
let app = TestAppBuilder::new()
.with_chat(chat)
.build();
let buffer = render_to_buffer(80, 24, |f| {
tele_tui::ui::footer::render(f, f.area(), &app);
});
let output = buffer_to_string(&buffer);
assert_snapshot!("footer_chat_list", output);
}
#[test]
fn snapshot_footer_open_chat() {
let chat = create_test_chat("Mom", 123);
let mut app = TestAppBuilder::new()
.with_chat(chat)
.selected_chat(123)
.build();
let buffer = render_to_buffer(80, 24, |f| {
tele_tui::ui::footer::render(f, f.area(), &app);
});
let output = buffer_to_string(&buffer);
assert_snapshot!("footer_open_chat", output);
}
#[test]
fn snapshot_footer_network_waiting() {
let chat = create_test_chat("Mom", 123);
let mut app = TestAppBuilder::new()
.with_chat(chat)
.build();
// Set network state to WaitingForNetwork
app.td_client.network_state = NetworkState::WaitingForNetwork;
let buffer = render_to_buffer(80, 24, |f| {
tele_tui::ui::footer::render(f, f.area(), &app);
});
let output = buffer_to_string(&buffer);
assert_snapshot!("footer_network_waiting", output);
}
#[test]
fn snapshot_footer_network_connecting_proxy() {
let chat = create_test_chat("Mom", 123);
let mut app = TestAppBuilder::new()
.with_chat(chat)
.build();
// Set network state to ConnectingToProxy
app.td_client.network_state = NetworkState::ConnectingToProxy;
let buffer = render_to_buffer(80, 24, |f| {
tele_tui::ui::footer::render(f, f.area(), &app);
});
let output = buffer_to_string(&buffer);
assert_snapshot!("footer_network_connecting_proxy", output);
}
#[test]
fn snapshot_footer_network_connecting() {
let chat = create_test_chat("Mom", 123);
let mut app = TestAppBuilder::new()
.with_chat(chat)
.build();
// Set network state to Connecting
app.td_client.network_state = NetworkState::Connecting;
let buffer = render_to_buffer(80, 24, |f| {
tele_tui::ui::footer::render(f, f.area(), &app);
});
let output = buffer_to_string(&buffer);
assert_snapshot!("footer_network_connecting", output);
}
#[test]
fn snapshot_footer_search_mode() {
let chat = create_test_chat("Mom", 123);
let mut app = TestAppBuilder::new()
.with_chat(chat)
.searching("query")
.build();
let buffer = render_to_buffer(80, 24, |f| {
tele_tui::ui::footer::render(f, f.area(), &app);
});
let output = buffer_to_string(&buffer);
assert_snapshot!("footer_search_mode", output);
}