diff --git a/test/fixedbugs/bug027.go b/test/fixedbugs/bug027.go
index a7b6394..cf2daae 100644
--- a/test/fixedbugs/bug027.go
+++ b/test/fixedbugs/bug027.go
@@ -6,6 +6,8 @@
 
 package main
 
+import "fmt"
+
 type Element interface {
 }
 
@@ -43,7 +45,7 @@
 	i4 := new(I)
 	i4.val = 44444
 	v := New()
-	print("hi\n")
+	r := "hi\n"
 	v.Insert(i4)
 	v.Insert(i3)
 	v.Insert(i2)
@@ -52,10 +54,25 @@
 	for i := 0; i < v.nelem; i++ {
 		var x *I
 		x = v.At(i).(*I)
-		print(i, " ", x.val, "\n") // prints correct list
+		r += fmt.Sprintln(i, x.val) // prints correct list
 	}
 	for i := 0; i < v.nelem; i++ {
-		print(i, " ", v.At(i).(*I).val, "\n")
+		r += fmt.Sprintln(i, v.At(i).(*I).val)
+	}
+	expect := `hi
+0 44444
+1 3333
+2 222
+3 11
+4 0
+0 44444
+1 3333
+2 222
+3 11
+4 0
+`
+	if r != expect {
+		panic(r)
 	}
 }
 
diff --git a/test/fixedbugs/bug070.go b/test/fixedbugs/bug070.go
index f63caa9..24ac779 100644
--- a/test/fixedbugs/bug070.go
+++ b/test/fixedbugs/bug070.go
@@ -6,11 +6,14 @@
 
 package main
 
+import "fmt"
+
 func main() {
 	var i, k int
+	var r string
 outer:
 	for k = 0; k < 2; k++ {
-		print("outer loop top k ", k, "\n")
+		r += fmt.Sprintln("outer loop top k", k)
 		if k != 0 {
 			panic("k not zero")
 		} // inner loop breaks this one every time
@@ -18,12 +21,20 @@
 			if i != 0 {
 				panic("i not zero")
 			} // loop breaks every time
-			print("inner loop top i ", i, "\n")
+			r += fmt.Sprintln("inner loop top i", i)
 			if true {
-				print("do break\n")
+				r += "do break\n"
 				break outer
 			}
 		}
 	}
-	print("broke\n")
+	r += "broke\n"
+	expect := `outer loop top k 0
+inner loop top i 0
+do break
+broke
+`
+	if r != expect {
+		panic(r)
+	}
 }
diff --git a/test/golden.out b/test/golden.out
index 6dccb6e..58a0df2 100644
--- a/test/golden.out
+++ b/test/golden.out
@@ -11,18 +11,6 @@
 =========== ./helloworld.go
 hello, world
 
-=========== ./peano.go
-0! = 1
-1! = 1
-2! = 2
-3! = 6
-4! = 24
-5! = 120
-6! = 720
-7! = 5040
-8! = 40320
-9! = 362880
-
 =========== ./printbig.go
 -9223372036854775808
 9223372036854775807
@@ -30,9 +18,6 @@
 =========== ./sigchld.go
 survived SIGCHLD
 
-=========== ./turing.go
-Hello World!
-
 == ken/
 
 =========== ken/cplx0.go
@@ -45,14 +30,6 @@
 (+1.292308e+000-1.384615e-001i)
 (+1.292308e+000-1.384615e-001i)
 
-=========== ken/cplx4.go
-c = (-5.000000-6.000000i)
-c = (5.000000+6.000000i)
-c = (5.000000+6.000000i)
-c = (5.000000+6.000000i)
-c = (5+6i)
-c = (13+7i)
-
 =========== ken/cplx5.go
 (+5.000000e+000-5.000000e+000i)
 (+5.000000e+000-5.000000e+000i)
@@ -65,21 +42,6 @@
 =========== ken/intervar.go
  print 1 bio 2 file 3 -- abc
 
-=========== ken/label.go
-100
-
-=========== ken/rob1.go
-9876543210
-
-=========== ken/rob2.go
-(defn foo (add 12 34))
-
-=========== ken/simpprint.go
-hello world
-
-=========== ken/simpswitch.go
-0out01out12out2aout34out4fiveout56out6aout78out89out9
-
 =========== ken/string.go
 abcxyz-abcxyz-abcxyz-abcxyz-abcxyz-abcxyz-abcxyz
 
@@ -93,28 +55,9 @@
 
 == fixedbugs/
 
-=========== fixedbugs/bug027.go
-hi
-0 44444
-1 3333
-2 222
-3 11
-4 0
-0 44444
-1 3333
-2 222
-3 11
-4 0
-
 =========== fixedbugs/bug067.go
 ok
 
-=========== fixedbugs/bug070.go
-outer loop top k 0
-inner loop top i 0
-do break
-broke
-
 =========== fixedbugs/bug328.go
 0x0
 
diff --git a/test/ken/cplx4.go b/test/ken/cplx4.go
index 8524e47..738afcd 100644
--- a/test/ken/cplx4.go
+++ b/test/ken/cplx4.go
@@ -15,30 +15,44 @@
 	C1 = R + I // ADD(5,6)
 )
 
-func doprint(c complex128) { fmt.Printf("c = %f\n", c) }
+func want(s, w string) {
+	if s != w {
+		panic(s + " != " + w)
+	}
+}
+
+func doprint(c complex128, w string) {
+	s := fmt.Sprintf("%f", c)
+	want(s, w)
+}
 
 func main() {
 
 	// constants
-	fmt.Printf("c = %f\n", -C1)
-	doprint(C1)
+	s := fmt.Sprintf("%f", -C1)
+	want(s, "(-5.000000-6.000000i)")
+	doprint(C1, "(5.000000+6.000000i)")
 
 	// variables
 	c1 := C1
-	fmt.Printf("c = %f\n", c1)
-	doprint(c1)
+	s = fmt.Sprintf("%f", c1)
+	want(s, "(5.000000+6.000000i)")
+	doprint(c1, "(5.000000+6.000000i)")
 
 	// 128
 	c2 := complex128(C1)
-	fmt.Printf("c = %G\n", c2)
+	s = fmt.Sprintf("%G", c2)
+	want(s, "(5+6i)")
 
 	// real, imag, complex
 	c3 := complex(real(c2)+3, imag(c2)-5) + c2
-	fmt.Printf("c = %G\n", c3)
+	s = fmt.Sprintf("%G", c3)
+	want(s, "(13+7i)")
 
 	// compiler used to crash on nested divide
 	c4 := complex(real(c3/2), imag(c3/2))
 	if c4 != c3/2 {
 		fmt.Printf("BUG: c3 = %G != c4 = %G\n", c3, c4)
+		panic(0)
 	}
 }
diff --git a/test/ken/label.go b/test/ken/label.go
index fa5dc06..7a509f0 100644
--- a/test/ken/label.go
+++ b/test/ken/label.go
@@ -25,8 +25,6 @@
 	if i < 100 {
 		goto loop
 	}
-	print(i)
-	print("\n")
 	return
 
 gogoloop:
diff --git a/test/ken/rob1.go b/test/ken/rob1.go
index 8f1da4b..a5854b9 100644
--- a/test/ken/rob1.go
+++ b/test/ken/rob1.go
@@ -7,7 +7,7 @@
 package main
 
 type Item interface {
-	Print()
+	Print() string
 }
 
 type ListItem struct {
@@ -30,12 +30,14 @@
 	list.head = item
 }
 
-func (list *List) Print() {
+func (list *List) Print() string {
+	r := ""
 	i := list.head
 	for i != nil {
-		i.item.Print()
+		r += i.item.Print()
 		i = i.next
 	}
+	return r
 }
 
 // Something to put in a list
@@ -48,8 +50,8 @@
 	return this
 }
 
-func (this *Integer) Print() {
-	print(this.val)
+func (this *Integer) Print() string {
+	return string(this.val + '0')
 }
 
 func main() {
@@ -61,6 +63,8 @@
 		list.Insert(integer)
 	}
 
-	list.Print()
-	print("\n")
+	r := list.Print()
+	if r != "9876543210" {
+		panic(r)
+	}
 }
diff --git a/test/ken/rob2.go b/test/ken/rob2.go
index 76a471c..d13e244 100644
--- a/test/ken/rob2.go
+++ b/test/ken/rob2.go
@@ -6,6 +6,8 @@
 
 package main
 
+import "fmt"
+
 const nilchar = 0
 
 type Atom struct {
@@ -80,40 +82,44 @@
 		if list == nil {
 			break
 		}
-		list.Print()
+		r := list.Print()
 		list.Free()
+		if r != "(defn foo (add 12 34))" {
+			panic(r)
+		}
 		break
 	}
 }
 
-func (slist *Slist) PrintOne(doparen bool) {
+func (slist *Slist) PrintOne(doparen bool) string {
 	if slist == nil {
-		return
+		return ""
 	}
+	var r string
 	if slist.isatom {
 		if slist.isstring {
-			print(slist.String())
+			r = slist.String()
 		} else {
-			print(slist.Integer())
+			r = fmt.Sprintf("%v", slist.Integer())
 		}
 	} else {
 		if doparen {
-			print("(")
+			r += "("
 		}
-		slist.Car().PrintOne(true)
+		r += slist.Car().PrintOne(true)
 		if slist.Cdr() != nil {
-			print(" ")
-			slist.Cdr().PrintOne(false)
+			r += " "
+			r += slist.Cdr().PrintOne(false)
 		}
 		if doparen {
-			print(")")
+			r += ")"
 		}
 	}
+	return r
 }
 
-func (slist *Slist) Print() {
-	slist.PrintOne(true)
-	print("\n")
+func (slist *Slist) Print() string {
+	return slist.PrintOne(true)
 }
 
 func Get() int {
diff --git a/test/ken/simpprint.go b/test/ken/simpprint.go
deleted file mode 100644
index 6077f7e..0000000
--- a/test/ken/simpprint.go
+++ /dev/null
@@ -1,13 +0,0 @@
-// $G $D/$F.go && $L $F.$A && ./$A.out
-
-// 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.
-
-
-package main
-
-func
-main() {
-	print("hello world\n");
-}
diff --git a/test/ken/simpswitch.go b/test/ken/simpswitch.go
index 4db98b1..710af2e 100644
--- a/test/ken/simpswitch.go
+++ b/test/ken/simpswitch.go
@@ -7,17 +7,20 @@
 package main
 
 func main() {
+	r := ""
 	a := 3
 	for i := 0; i < 10; i = i + 1 {
 		switch i {
 		case 5:
-			print("five")
+			r += "five"
 		case a, 7:
-			print("a")
+			r += "a"
 		default:
-			print(i)
+			r += string(i + '0')
 		}
-		print("out", i)
+		r += "out" + string(i+'0')
 	}
-	print("\n")
+	if r != "0out01out12out2aout34out4fiveout56out6aout78out89out9" {
+		panic(r)
+	}
 }
diff --git a/test/peano.go b/test/peano.go
index fb74e65..dd4c36e 100644
--- a/test/peano.go
+++ b/test/peano.go
@@ -107,8 +107,16 @@
 // -------------------------------------
 // Factorial
 
+var results = [...]int{
+	1, 1, 2, 6, 24, 120, 720, 5040, 40320, 362880, 3628800,
+	39916800, 479001600,
+}
+
 func main() {
 	for i := 0; i <= 9; i++ {
-		print(i, "! = ", count(fact(gen(i))), "\n")
+		if f := count(fact(gen(i))); f != results[i] {
+			println("FAIL:", i, "!:", f, "!=", results[i])
+			panic(0)
+		}
 	}
 }
diff --git a/test/turing.go b/test/turing.go
index 9d3f3a6..366982e 100644
--- a/test/turing.go
+++ b/test/turing.go
@@ -25,6 +25,7 @@
 }
 
 func main() {
+	r := ""
 	for {
 		switch prog[pc] {
 		case '>':
@@ -36,7 +37,7 @@
 		case '-':
 			a[p]--
 		case '.':
-			print(string(a[p]))
+			r += string(a[p])
 		case '[':
 			if a[p] == 0 {
 				scan(1)
@@ -46,6 +47,9 @@
 				scan(-1)
 			}
 		default:
+			if r != "Hello World!\n" {
+				panic(r)
+			}
 			return
 		}
 		pc++
