Squashed 'third_party/git/' content from commit cb71568594
git-subtree-dir: third_party/git git-subtree-split: cb715685942260375e1eb8153b0768a376e4ece7
This commit is contained in:
commit
1b593e1ea4
3629 changed files with 1139935 additions and 0 deletions
90
t/t0081-line-buffer.sh
Executable file
90
t/t0081-line-buffer.sh
Executable file
|
|
@ -0,0 +1,90 @@
|
|||
#!/bin/sh
|
||||
|
||||
test_description="Test the svn importer's input handling routines.
|
||||
|
||||
These tests provide some simple checks that the line_buffer API
|
||||
behaves as advertised.
|
||||
|
||||
While at it, check that input of newlines and null bytes are handled
|
||||
correctly.
|
||||
"
|
||||
. ./test-lib.sh
|
||||
|
||||
test_expect_success 'hello world' '
|
||||
echo ">HELLO" >expect &&
|
||||
test-line-buffer <<-\EOF >actual &&
|
||||
binary 6
|
||||
HELLO
|
||||
EOF
|
||||
test_cmp expect actual
|
||||
'
|
||||
|
||||
test_expect_success '0-length read, send along greeting' '
|
||||
echo ">HELLO" >expect &&
|
||||
test-line-buffer <<-\EOF >actual &&
|
||||
binary 0
|
||||
copy 6
|
||||
HELLO
|
||||
EOF
|
||||
test_cmp expect actual
|
||||
'
|
||||
|
||||
test_expect_success !MINGW 'read from file descriptor' '
|
||||
rm -f input &&
|
||||
echo hello >expect &&
|
||||
echo hello >input &&
|
||||
echo copy 6 |
|
||||
test-line-buffer "&4" 4<input >actual &&
|
||||
test_cmp expect actual
|
||||
'
|
||||
|
||||
test_expect_success 'skip, copy null byte' '
|
||||
echo Q | q_to_nul >expect &&
|
||||
q_to_nul <<-\EOF | test-line-buffer >actual &&
|
||||
skip 2
|
||||
Q
|
||||
copy 2
|
||||
Q
|
||||
EOF
|
||||
test_cmp expect actual
|
||||
'
|
||||
|
||||
test_expect_success 'read null byte' '
|
||||
echo ">QhelloQ" | q_to_nul >expect &&
|
||||
q_to_nul <<-\EOF | test-line-buffer >actual &&
|
||||
binary 8
|
||||
QhelloQ
|
||||
EOF
|
||||
test_cmp expect actual
|
||||
'
|
||||
|
||||
test_expect_success 'long reads are truncated' '
|
||||
echo ">foo" >expect &&
|
||||
test-line-buffer <<-\EOF >actual &&
|
||||
binary 5
|
||||
foo
|
||||
EOF
|
||||
test_cmp expect actual
|
||||
'
|
||||
|
||||
test_expect_success 'long copies are truncated' '
|
||||
printf "%s\n" ">" foo >expect &&
|
||||
test-line-buffer <<-\EOF >actual &&
|
||||
binary 1
|
||||
|
||||
copy 5
|
||||
foo
|
||||
EOF
|
||||
test_cmp expect actual
|
||||
'
|
||||
|
||||
test_expect_success 'long binary reads are truncated' '
|
||||
echo ">foo" >expect &&
|
||||
test-line-buffer <<-\EOF >actual &&
|
||||
binary 5
|
||||
foo
|
||||
EOF
|
||||
test_cmp expect actual
|
||||
'
|
||||
|
||||
test_done
|
||||
Loading…
Add table
Add a link
Reference in a new issue