53 lines
		
	
	
		
			910 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
			
		
		
	
	
			53 lines
		
	
	
		
			910 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
| #!/bin/sh
 | |
| 
 | |
| test_description='Basic sort performance tests'
 | |
| . ./perf-lib.sh
 | |
| 
 | |
| test_perf_default_repo
 | |
| 
 | |
| test_expect_success 'setup' '
 | |
| 	git ls-files --stage "*.[ch]" "*.sh" |
 | |
| 	cut -f2 -d" " |
 | |
| 	git cat-file --batch >unsorted
 | |
| '
 | |
| 
 | |
| test_perf 'sort(1) unsorted' '
 | |
| 	sort <unsorted >sorted
 | |
| '
 | |
| 
 | |
| test_expect_success 'reverse' '
 | |
| 	sort -r <unsorted >reversed
 | |
| '
 | |
| 
 | |
| for file in sorted reversed
 | |
| do
 | |
| 	test_perf "sort(1) $file" "
 | |
| 		sort <$file >actual
 | |
| 	"
 | |
| done
 | |
| 
 | |
| for file in unsorted sorted reversed
 | |
| do
 | |
| 
 | |
| 	test_perf "string_list_sort() $file" "
 | |
| 		test-tool string-list sort <$file >actual
 | |
| 	"
 | |
| 
 | |
| 	test_expect_success "string_list_sort() $file sorts like sort(1)" "
 | |
| 		test_cmp_bin sorted actual
 | |
| 	"
 | |
| done
 | |
| 
 | |
| for file in unsorted sorted reversed
 | |
| do
 | |
| 	test_perf "DEFINE_LIST_SORT $file" "
 | |
| 		test-tool mergesort sort <$file >actual
 | |
| 	"
 | |
| 
 | |
| 	test_expect_success "DEFINE_LIST_SORT $file sorts like sort(1)" "
 | |
| 		test_cmp_bin sorted actual
 | |
| 	"
 | |
| done
 | |
| 
 | |
| test_done
 |