86 lines
1.7 KiB
VHS
86 lines
1.7 KiB
VHS
# VHS E2E test for lazygitclj - Commit workflow with git verification
|
|
# Tests the full commit workflow: stage files, open commit modal, type message, commit
|
|
# Verifies the commit was actually made using git CLI
|
|
|
|
Output test/e2e/output/commit-verify.gif
|
|
Output test/e2e/output/commit-verify.ascii
|
|
|
|
Require bb
|
|
|
|
Set Shell "bash"
|
|
Set FontSize 14
|
|
Set Width 1000
|
|
Set Height 600
|
|
Set Framerate 10
|
|
|
|
# Setup: Create a fresh test repo
|
|
Type "rm -rf /tmp/lazygitclj-e2e-commit-verify && mkdir -p /tmp/lazygitclj-e2e-commit-verify && cd /tmp/lazygitclj-e2e-commit-verify"
|
|
Enter
|
|
Sleep 500ms
|
|
|
|
# Initialize git repo
|
|
Type "git init -b main && git config user.email 'test@example.com' && git config user.name 'Test User'"
|
|
Enter
|
|
Sleep 500ms
|
|
|
|
# Create initial commit
|
|
Type "echo 'initial' > README.md && git add . && git commit -m 'Initial commit'"
|
|
Enter
|
|
Sleep 500ms
|
|
|
|
# Create a new file to commit with lazygitclj
|
|
Type "echo 'test content for commit' > test-file.txt"
|
|
Enter
|
|
Sleep 500ms
|
|
|
|
# Show the file exists
|
|
Type "ls -la"
|
|
Enter
|
|
Sleep 500ms
|
|
|
|
# Run lazygitclj
|
|
Type "bb --config /home/ajet/repos/lazygitclj/bb.edn start"
|
|
Enter
|
|
Sleep 2s
|
|
|
|
# Stage the file with 'a' (stage all)
|
|
Type "a"
|
|
Sleep 500ms
|
|
|
|
# Press 'c' to open commit modal
|
|
Type "c"
|
|
Sleep 1s
|
|
|
|
# Type commit message
|
|
Set TypingSpeed 50ms
|
|
Type "Add test file via lazygitclj"
|
|
Sleep 500ms
|
|
|
|
# Press Enter to commit
|
|
Enter
|
|
Sleep 1s
|
|
|
|
# Should see "Committed!" message
|
|
# Navigate to commits panel to see the new commit
|
|
Type "4"
|
|
Sleep 500ms
|
|
|
|
# Quit lazygitclj
|
|
Type "q"
|
|
Sleep 1s
|
|
|
|
# Verify the commit was made using git CLI
|
|
Type "git log --oneline -2"
|
|
Enter
|
|
Sleep 500ms
|
|
|
|
# Show that the file is tracked
|
|
Type "git status"
|
|
Enter
|
|
Sleep 500ms
|
|
|
|
# Show commit details
|
|
Type "git show --stat HEAD"
|
|
Enter
|
|
Sleep 1s
|