mirror of
https://github.com/stedolan/jq.git
synced 2024-05-11 05:55:39 +00:00
get testing working in autoconf
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
# setup is only used by distribution developers, not package developers.
|
# setup is only used by distribution developers, not package developers.
|
||||||
# Still, as a matter of allowing patching, its not a bad idea to distribute
|
# Still, as a matter of allowing patching, its not a bad idea to distribute
|
||||||
# the developer setup script in the tarball.
|
# the developer setup script in the tarball.
|
||||||
EXTRA_DIST = setup.sh config.h.in ChangeLog VERSION lexer.l lexer.h gen_utf8_tables.py jq.spec
|
EXTRA_DIST = setup.sh config.h.in ChangeLog VERSION lexer.l lexer.h gen_utf8_tables.py jq.spec testdata
|
||||||
|
|
||||||
# README.md is expected in Github projects, good stuff in it, so we'll
|
# README.md is expected in Github projects, good stuff in it, so we'll
|
||||||
# distribute it and install it with the package in the doc directory.
|
# distribute it and install it with the package in the doc directory.
|
||||||
@@ -27,13 +27,11 @@ bin_PROGRAMS = jq jq_test
|
|||||||
BUILT_SOURCES = jv_utf8_tables.gen.h lexer.h lexer.c
|
BUILT_SOURCES = jv_utf8_tables.gen.h lexer.h lexer.c
|
||||||
jq_SOURCES = $(JQ_SRC) main.c
|
jq_SOURCES = $(JQ_SRC) main.c
|
||||||
jq_CPPFLAGS = $(DEVCFLAGS) -O -DJQ_DEBUG=0
|
jq_CPPFLAGS = $(DEVCFLAGS) -O -DJQ_DEBUG=0
|
||||||
jq_CFLAGS = $(DEVCFLAGS) -O -DJQ_DEBUG=0
|
|
||||||
|
|
||||||
|
|
||||||
TESTS = jq_test
|
TESTS = jq_test
|
||||||
jq_test_SOURCES = $(JQ_SRC) jq_test.c
|
jq_test_SOURCES = $(JQ_SRC) jq_test.c
|
||||||
jq_test_CPPFLAGS = $(DEVCFLAGS) -DJQ_DEBUG=1
|
jq_test_CPPFLAGS = $(DEVCFLAGS) -DJQ_DEBUG=1
|
||||||
jq_test_CFLAGS = $(DEVCFLAGS) -DJQ_DEBUG=1
|
|
||||||
LOG_COMPILER = valgrind
|
LOG_COMPILER = valgrind
|
||||||
AM_LOG_FLAGS = --error-exitcode=1 -q --leak-check=full
|
AM_LOG_FLAGS = --error-exitcode=1 -q --leak-check=full
|
||||||
|
|
||||||
|
5
README
5
README
@@ -3,3 +3,8 @@ README file is not used, README.md is the file to READ!
|
|||||||
|
|
||||||
When you checkout the file, run "setup.sh" which gets autoconf initialized.
|
When you checkout the file, run "setup.sh" which gets autoconf initialized.
|
||||||
Then follow the instructions in INSTALL. Real standard stuff...
|
Then follow the instructions in INSTALL. Real standard stuff...
|
||||||
|
|
||||||
|
|
||||||
|
$ ./setup.sh # initializes Autoconf and builds your release
|
||||||
|
$ ./setup.sh clean # cleans all the temp files out of your tree
|
||||||
|
$ ./setup.sh superclean # deletes your release files so you can try again
|
||||||
|
13
jq_test.c
13
jq_test.c
@@ -24,10 +24,21 @@ static int skipline(const char* buf) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void run_jq_tests() {
|
static void run_jq_tests() {
|
||||||
FILE* testdata = fopen("testdata","r");
|
FILE* testdata = NULL;
|
||||||
char buf[4096];
|
char buf[4096];
|
||||||
int tests = 0, passed = 0;
|
int tests = 0, passed = 0;
|
||||||
|
|
||||||
|
testdata = fopen("testdata","r");
|
||||||
|
if ( NULL == testdata )
|
||||||
|
{
|
||||||
|
/* in an autoconf distcheck, the binary file will be in a _build subdirectory */
|
||||||
|
testdata = fopen("../testdata", "r");
|
||||||
|
if ( NULL == testdata )
|
||||||
|
{
|
||||||
|
fprintf(stderr, "Could not find testdata file\n");
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
while (1) {
|
while (1) {
|
||||||
if (!fgets(buf, sizeof(buf), testdata)) break;
|
if (!fgets(buf, sizeof(buf), testdata)) break;
|
||||||
if (skipline(buf)) continue;
|
if (skipline(buf)) continue;
|
||||||
|
Reference in New Issue
Block a user