diff options
Diffstat (limited to 'source_tests.lua')
-rw-r--r-- | source_tests.lua | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/source_tests.lua b/source_tests.lua index 044ff47..81bdb74 100644 --- a/source_tests.lua +++ b/source_tests.lua @@ -21,6 +21,7 @@ end function test_show_log_browser_side() io.write('\ntest_show_log_browser_side') App.screen.init{width=300, height=300} + Display_width = App.screen.width Current_app = 'source' Editor_state = edit.initialize_test_state() Editor_state.filename = 'foo' @@ -35,6 +36,66 @@ function test_show_log_browser_side() check(Show_log_browser_side, 'F - test_show_log_browser_side') end +function test_show_log_browser_side_doubles_window_width_if_possible() + io.write('\ntest_show_log_browser_side_doubles_window_width_if_possible') + -- initialize screen dimensions to half width + App.screen.init{width=300, height=300} + Display_width = App.screen.width*2 + -- initialize source app with left side occupying entire window (half the display) + Current_app = 'source' + Editor_state = edit.initialize_test_state() + Editor_state.filename = 'foo' + Editor_state.left = Margin_left + Editor_state.right = App.screen.width - Margin_right + local old_editor_right = Editor_state.right + Text.redraw_all(Editor_state) + Log_browser_state = edit.initialize_test_state() + -- log browser has some arbitrary margins + Log_browser_state.left = 200 + Margin_left + Log_browser_state.right = 400 + Text.redraw_all(Log_browser_state) + log_browser.parse(Log_browser_state) + -- display log browser + App.wait_fake_time(0.1) + App.run_after_keychord('C-l') + -- window width is doubled + check_eq(App.screen.width, 600, 'F - test_show_log_browser_side_doubles_window_width_if_possible/display:width') + -- left side margins are unchanged + check_eq(Editor_state.left, Margin_left, 'F - test_show_log_browser_side_doubles_window_width_if_possible/edit:left') + check_eq(Editor_state.right, old_editor_right, 'F - test_show_log_browser_side_doubles_window_width_if_possible/edit:right') + -- log browser margins are adjusted + check_eq(Log_browser_state.left, App.screen.width/2 + Margin_left, 'F - test_show_log_browser_side_doubles_window_width_if_possible/log:left') + check_eq(Log_browser_state.right, App.screen.width - Margin_right, 'F - test_show_log_browser_side_doubles_window_width_if_possible/log:right') +end + +function test_show_log_browser_side_resizes_both_sides_if_cannot_double_window_width() + io.write('\ntest_show_log_browser_side_resizes_both_sides_if_cannot_double_window_width') + -- initialize screen dimensions and indicate that it is maximized + App.screen.init{width=300, height=300} + Display_width = 300 + -- initialize source app with left side occupying more than half the display + Current_app = 'source' + Editor_state = edit.initialize_test_state() + Editor_state.filename = 'foo' + Editor_state.left = Margin_left + Editor_state.right = 200 + Text.redraw_all(Editor_state) + Log_browser_state = edit.initialize_test_state() + -- log browser has some arbitrary margins + Log_browser_state.left = 200 + Margin_left + Log_browser_state.right = 400 + Text.redraw_all(Log_browser_state) + log_browser.parse(Log_browser_state) + -- display log browser + App.wait_fake_time(0.1) + App.run_after_keychord('C-l') + -- margins are now adjusted + check_eq(Editor_state.left, Margin_left, 'F - test_show_log_browser_side_resizes_both_sides_if_cannot_double_window_width/edit:left') + check_eq(Editor_state.right, App.screen.width/2 - Margin_right, 'F - test_show_log_browser_side_resizes_both_sides_if_cannot_double_window_width/edit:right') + check_eq(Log_browser_state.left, App.screen.width/2 + Margin_left, 'F - test_show_log_browser_side_resizes_both_sides_if_cannot_double_window_width/log:left') + check_eq(Log_browser_state.right, App.screen.width - Margin_right, 'F - test_show_log_browser_side_resizes_both_sides_if_cannot_double_window_width/log:right') +end + function test_drop_file() io.write('\ntest_drop_file') App.screen.init{width=Editor_state.left+300, height=300} |