mirror of
				https://github.com/golang/go.git
				synced 2025-10-31 16:50:58 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			78 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/bin/bash
 | |
| # Copyright 2009 The Go Authors. All rights reserved.
 | |
| # Use of this source code is governed by a BSD-style
 | |
| # license that can be found in the LICENSE file.
 | |
| 
 | |
| . $GOROOT/src/Make.$GOARCH
 | |
| 
 | |
| if [ -z "$O" ]; then
 | |
| 	echo 'missing $O - maybe no Make.$GOARCH?' 1>&2
 | |
| 	exit 1
 | |
| fi
 | |
| 
 | |
| rm -f *.$O
 | |
| 
 | |
| for i in \
 | |
| 	file.go \
 | |
| 	helloworld.go \
 | |
| 	helloworld3.go \
 | |
| 	echo.go \
 | |
| 	cat.go \
 | |
| 	cat_rot13.go \
 | |
| 	sum.go \
 | |
| 	sort.go \
 | |
| 	sortmain.go \
 | |
| 	print.go \
 | |
| 	print_string.go \
 | |
| 	sieve.go \
 | |
| 	sieve1.go \
 | |
| 	server1.go \
 | |
| ; do
 | |
| 	BASE=$(basename $i .go)
 | |
| 
 | |
| 	$GC $i
 | |
| done
 | |
| 
 | |
| function testit {
 | |
| 	$LD $1.$O
 | |
| 	x=$(echo $(./$O.out $2 2>&1))  # extra echo canonicalizes
 | |
| 	if [ "$x" != "$3" ]
 | |
| 	then
 | |
| 		echo $1 failed: '"'$x'"' is not '"'$3'"'
 | |
| 	fi
 | |
| }
 | |
| 
 | |
| function testitpipe {
 | |
| 	$LD $1.$O
 | |
| 	x=$(echo $(./$O.out | $2 2>&1))  # extra echo canonicalizes
 | |
| 	if [ "$x" != "$3" ]
 | |
| 	then
 | |
| 		echo $1 failed: '"'$x'"' is not '"'$3'"'
 | |
| 	fi
 | |
| }
 | |
| 
 | |
| 
 | |
| testit helloworld "" "Hello, world; or Καλημέρα κόσμε; or こんにちは 世界"
 | |
| testit helloworld3 "" "hello, world can't open file; err=no such file or directory"
 | |
| testit echo "hello, world" "hello, world"
 | |
| testit sum "" "6"
 | |
| 
 | |
| alphabet=abcdefghijklmnopqrstuvwxyz
 | |
| rot13=nopqrstuvwxyzabcdefghijklm
 | |
| echo $alphabet | testit cat "" $alphabet
 | |
| echo $alphabet | testit cat_rot13 "--rot13" $rot13
 | |
| echo $rot13 | testit cat_rot13 "--rot13" $alphabet
 | |
| 
 | |
| testit sortmain "" "Sunday Monday Tuesday Wednesday Thursday Friday Saturday"
 | |
| 
 | |
| testit print "" "18446744073709551615 -1 18446744073709551615 {77 Sunset Strip} [1 2 3 4] 18446744073709551615 {77 Sunset Strip} [1 2 3 4] 18446744073709551615 {77 Sunset Strip} [1 2 3 4]"
 | |
| testit print_string "" "77 Sunset Strip"
 | |
| 
 | |
| testitpipe sieve "sed 10q" "2 3 5 7 11 13 17 19 23 29"
 | |
| testitpipe sieve "sed 10q" "2 3 5 7 11 13 17 19 23 29"
 | |
| 
 | |
| # server hangs; don't run it, just compile it
 | |
| $GC server.go
 | |
| testit server1 "" ""
 | |
| 
 | |
| rm -f $O.out *.$O
 | 
