This (morally) reverts commit d280f68313,
which added some tests that are a pain to maintain and are not likely
to find bugs in git.
Helped-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Acked-by: Jeff King <peff@peff.net>
		
	
		
			
				
	
	
		
			91 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			91 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/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 '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
 |