mirror of
				https://github.com/tmux-plugins/tmux-resurrect.git
				synced 2025-11-04 08:56:03 +00:00 
			
		
		
		
	Test resurrect save feature
This commit is contained in:
		
							
								
								
									
										42
									
								
								tests/helpers/create_and_save_tmux_test_environment.exp
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										42
									
								
								tests/helpers/create_and_save_tmux_test_environment.exp
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,42 @@
 | 
			
		||||
#!/usr/bin/env expect
 | 
			
		||||
 | 
			
		||||
source "./tests/helpers/expect_helpers.exp"
 | 
			
		||||
 | 
			
		||||
expect_setup
 | 
			
		||||
 | 
			
		||||
spawn tmux
 | 
			
		||||
# delay with sleep to compensate for tmux starting time
 | 
			
		||||
sleep 1
 | 
			
		||||
 | 
			
		||||
run_shell_command "cd /tmp"
 | 
			
		||||
 | 
			
		||||
# session red
 | 
			
		||||
rename_current_session "red"
 | 
			
		||||
 | 
			
		||||
new_tmux_window
 | 
			
		||||
horizontal_split
 | 
			
		||||
vertical_split
 | 
			
		||||
 | 
			
		||||
new_tmux_window
 | 
			
		||||
horizontal_split
 | 
			
		||||
 | 
			
		||||
# session blue
 | 
			
		||||
new_tmux_session "blue"
 | 
			
		||||
 | 
			
		||||
run_shell_command "touch foo.txt"
 | 
			
		||||
run_shell_command "vim foo.txt"
 | 
			
		||||
 | 
			
		||||
new_tmux_window
 | 
			
		||||
vertical_split
 | 
			
		||||
run_shell_command "man echo"
 | 
			
		||||
 | 
			
		||||
new_tmux_window
 | 
			
		||||
 | 
			
		||||
# session yellow
 | 
			
		||||
new_tmux_session "yellow"
 | 
			
		||||
run_shell_command "mkdir bar"
 | 
			
		||||
run_shell_command "cd bar"
 | 
			
		||||
 | 
			
		||||
start_resurrect_save
 | 
			
		||||
 | 
			
		||||
run_shell_command "tmux kill-server"
 | 
			
		||||
							
								
								
									
										55
									
								
								tests/helpers/expect_helpers.exp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								tests/helpers/expect_helpers.exp
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,55 @@
 | 
			
		||||
# a set of expect helpers
 | 
			
		||||
 | 
			
		||||
# basic setup for each script
 | 
			
		||||
proc expect_setup {} {
 | 
			
		||||
  # disables script output
 | 
			
		||||
  log_user 0
 | 
			
		||||
  # standard timeout
 | 
			
		||||
  set timeout 5
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
proc new_tmux_window {} {
 | 
			
		||||
  send "c"
 | 
			
		||||
  send "cd /tmp\r"
 | 
			
		||||
  sleep 0.2
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
proc rename_current_session {name} {
 | 
			
		||||
  send "$"
 | 
			
		||||
  # delete existing name with ctrl-u
 | 
			
		||||
  send ""
 | 
			
		||||
  send "$name\r"
 | 
			
		||||
  sleep 0.2
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
proc new_tmux_session {name} {
 | 
			
		||||
  send "TMUX='' tmux new -d -s $name\r"
 | 
			
		||||
  sleep 1
 | 
			
		||||
  send "tmux switch-client -t $name\r"
 | 
			
		||||
  send "cd /tmp\r"
 | 
			
		||||
  sleep 0.5
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
proc horizontal_split {} {
 | 
			
		||||
  send "\""
 | 
			
		||||
  sleep 0.2
 | 
			
		||||
  send "cd /tmp\r"
 | 
			
		||||
  sleep 0.1
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
proc vertical_split {} {
 | 
			
		||||
  send "%"
 | 
			
		||||
  sleep 0.2
 | 
			
		||||
  send "cd /tmp\r"
 | 
			
		||||
  sleep 0.1
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
proc run_shell_command {command} {
 | 
			
		||||
  send "$command\r"
 | 
			
		||||
  sleep 1
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
proc start_resurrect_save {} {
 | 
			
		||||
  send ""
 | 
			
		||||
  sleep 5
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										12
									
								
								tests/helpers/resurrect_helpers.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								tests/helpers/resurrect_helpers.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
			
		||||
install_tmux_resurrect_helper() {
 | 
			
		||||
	rm -rf ~/.tmux/plugins/tmux-resurrect/
 | 
			
		||||
	cd "$CURRENT_DIR"
 | 
			
		||||
	git clone --recursive ../ ~/.tmux/plugins/tmux-resurrect/ >/dev/null 2>&1
 | 
			
		||||
	cd - >/dev/null
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# we want "fixed" dimensions no matter the size of real display
 | 
			
		||||
set_screen_dimensions() {
 | 
			
		||||
	stty cols 200
 | 
			
		||||
	stty rows 50
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user