summaryrefslogtreecommitdiff
path: root/tests/header_r_main.c
diff options
context:
space:
mode:
authorWill Estes <westes575@gmail.com>2014-06-04 19:15:28 -0400
committerWill Estes <westes575@gmail.com>2014-11-12 05:14:26 -0500
commit3086fc063cb4bec53431b5f1ea9b2341f0aceeb5 (patch)
treea94bac512e2ccd8850623aec0a658c1630a90741 /tests/header_r_main.c
parent1c39506c5a670f120c7fae3181f2f5b0aa17653d (diff)
refactor header_r test for new test suite layout
Diffstat (limited to 'tests/header_r_main.c')
-rw-r--r--tests/header_r_main.c63
1 files changed, 63 insertions, 0 deletions
diff --git a/tests/header_r_main.c b/tests/header_r_main.c
new file mode 100644
index 0000000..6c3dd8f
--- /dev/null
+++ b/tests/header_r_main.c
@@ -0,0 +1,63 @@
+/*
+ * This file is part of flex.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ */
+
+#include "header_r_scanner.h"
+
+/* The scanner itself is not important here.
+ * We simply try to use all the functions that are exported in the
+ * header, to see if we get any compiler warnings.
+ */
+int
+main ( int argc, char** argv )
+{
+ yyscan_t scanner;
+ FILE *fp;
+ char * extra = "EXTRA";
+
+ testlex_init(&scanner);
+ testset_in(stdin,scanner);
+ testset_out(stdout,scanner);
+ testset_extra(extra,scanner);
+
+ fp = testget_in(scanner);
+ fp = testget_out(scanner);
+
+ while(testlex(scanner)) {
+ char * text;
+ int line;
+ line = testget_lineno(scanner);
+ text = testget_text(scanner);
+
+ if( (char*)testget_extra(scanner) != extra)
+ break;
+
+ if ( !text || line < 0)
+ continue;
+ }
+ testlex_destroy(scanner);
+ printf("TEST RETURNING OK.\n");
+ return 0;
+}
+
+
+/* vim:set tabstop=8 softtabstop=4 shiftwidth=4: */