about summary refs log tree commit diff homepage
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2014-09-14 11:47:53 -0700
committerDaniel Dunbar <daniel@zuster.org>2014-09-14 11:47:53 -0700
commitd283bdaaa38b36190139b20861dc60190ffc8ae1 (patch)
treec73e0c1f2b72ac9b118b9833cfd47bd44212730b
parent70fe6477b58c93366368951dc5ba9bcb6c0fe168 (diff)
parent448872a3e885dec5c4ef402e179af17f185a32c0 (diff)
downloadklee-d283bdaaa38b36190139b20861dc60190ffc8ae1.tar.gz
Merge pull request #155 from MartinNowack/fix_fd_fail2
Fix testcase FD_Fail2.c
-rw-r--r--test/Runtime/POSIX/FD_Fail2.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/test/Runtime/POSIX/FD_Fail2.c b/test/Runtime/POSIX/FD_Fail2.c
index 74957597..c2e5596b 100644
--- a/test/Runtime/POSIX/FD_Fail2.c
+++ b/test/Runtime/POSIX/FD_Fail2.c
@@ -1,13 +1,16 @@
 // RUN: %llvmgcc %s -emit-llvm -O0 -c -o %t1.bc
 // RUN: rm -rf %t.klee-out
-// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --posix-runtime --search=dfs %t1.bc --sym-files 1 10 --max-fail 1
+// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --posix-runtime --search=dfs %t1.bc --sym-files 1 10 --max-fail 2
+//
+// Check that generated assembly doesn't use puts to output strings
+// RUN: FileCheck -input-file=%t.klee-out/assembly.ll %s
+// CHECK-NOT: puts
+//
 // RUN: test -f %t.klee-out/test000001.ktest
 // RUN: test -f %t.klee-out/test000002.ktest
 // RUN: test -f %t.klee-out/test000003.ktest
 // RUN: test -f %t.klee-out/test000004.ktest
-// RUN: test -f %t.klee-out/test000005.ktest
-// RUN: test -f %t.klee-out/test000006.ktest
-// RUN: test -f %t.klee-out/test000007.ktest
+// RUN: not test -f %t.klee-out/test000005.ktest
 
 #include <stdio.h>
 #include <assert.h>
@@ -18,7 +21,8 @@
 #include <stdio.h>
 
 int main(int argc, char** argv) {
-  char buf[1024];  
+  char buf[1024];
+  // Open the symbolic file "A"
   int fd = open("A", O_RDONLY);
   assert(fd != -1);
 
@@ -26,12 +30,12 @@ int main(int argc, char** argv) {
 
   r = read(fd, buf, 1, 5);
   if (r != -1)
-    printf("read() succeeded\n");
+    printf("read() succeeded %u\n", fd);
   else printf("read() failed with error '%s'\n", strerror(errno));
 
   r = close(fd);
   if (r != -1)
-    printf("close() succeeded\n");
+    printf("close() succeeded %u\n", fd);
   else printf("close() failed with error '%s'\n", strerror(errno));
 
   return 0;