diff --git a/test.sh b/test.sh
index 27f033bb6326016a7e1480e2a30fd9e67380229e..1e6d7b819ac637d79c68985d9001e169474109b7 100755
--- a/test.sh
+++ b/test.sh
@@ -4,10 +4,7 @@ set -ex
 cargo build
 cargo build --manifest-path src/crt0/Cargo.toml
 
-cd openlibm
-make
-cd ..
+CFLAGS=-fno-stack-protector make -C openlibm
 
-cd tests
-make clean
-make run
+make -C tests clean
+make -C tests run
diff --git a/tests/.gitignore b/tests/.gitignore
index 9d5272bf2cb978c455ae030e304f3b24d5a976f4..6cfb8396be3a812afe7c47d4c3e7b4af7639e310 100644
--- a/tests/.gitignore
+++ b/tests/.gitignore
@@ -1,3 +1,4 @@
+/*.out
 /gen/
 /alloc
 /args
@@ -6,19 +7,15 @@
 /brk
 /chdir
 /create
-/create.out
 /ctype
 /dup
-/dup.out
 /error
 /fchdir
 /fcntl
 /fsync
 /ftruncate
-/ftruncate.out
 /getid
 /link
-/link.out
 /math
 /mem
 /setid
@@ -36,5 +33,5 @@
 /string/strrchr
 /string/strspn
 /unlink
-/unlink.out
 /write
+
diff --git a/tests/Makefile b/tests/Makefile
index 7b61b5e61fd69e30e8584e477a5d8d3490cd23a9..a2528896058cbcc1690c00a79b65746959f760c9 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -4,7 +4,6 @@ EXPECT_BINS=\
 	atoi \
 	brk \
 	args \
-	chdir \
 	create \
 	ctype \
 	dup \
@@ -35,6 +34,7 @@ EXPECT_BINS=\
 BINS=\
 	$(EXPECT_BINS) \
 	alloc \
+	chdir \
 	getid \
 	setid
 
diff --git a/tests/expected/chdir.stderr b/tests/expected/chdir.stderr
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/tests/expected/chdir.stdout b/tests/expected/chdir.stdout
deleted file mode 100644
index 6d79e11be0b87900d32ef232c49b0b99fc526f48..0000000000000000000000000000000000000000
--- a/tests/expected/chdir.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-initial cwd: /home/jeremy/Projects/relibc/tests
-final cwd: /home/jeremy/Projects/relibc
diff --git a/tests/expected/math.stdout b/tests/expected/math.stdout
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..087a3bdf0e486d698e31bf34178b934b84d42b37 100644
--- a/tests/expected/math.stdout
+++ b/tests/expected/math.stdout
@@ -0,0 +1 @@
+cos(3.14) = -0.9999987483024597
diff --git a/tests/fcntl.out b/tests/fcntl.out
deleted file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/tests/link.c b/tests/link.c
index 383575e8ce60e3a7d7fd57b71e2cb9b7d41f7c8e..4df0dfde2f7b7a3ebdc2c828efeb317e900ef0e8 100644
--- a/tests/link.c
+++ b/tests/link.c
@@ -1,3 +1,4 @@
+#include <stdio.h>
 #include <unistd.h>
 
 int main(int argc, char** argv) {
diff --git a/tests/math.c b/tests/math.c
index 159bb14ced82f66c6c9cc7b4929fee90e5e0163d..981300fdeff56909cb8d6b0cca56594f6026fc7f 100644
--- a/tests/math.c
+++ b/tests/math.c
@@ -1,5 +1,8 @@
 #include <math.h>
+#include <stdio.h>
 
 int main(int argc, char ** argv) {
-    float c = cos(3.14);
+    double pi = 3.14;
+    float c = cos(pi);
+    printf("cos(%f) = %f\n", pi, c);
 }