diff options
Diffstat (limited to 'tools/node_modules/expresso/deps/jscoverage/tests')
258 files changed, 9235 insertions, 0 deletions
diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/asprintf.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/asprintf.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/asprintf.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/encoding.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/encoding.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/encoding.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/encodings.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/encodings.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/encodings.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/gethostbyname.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/gethostbyname.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/gethostbyname.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/highlight.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/highlight.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/highlight.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-client-bad-body.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-client-bad-body.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-client-bad-body.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-client-bad-url.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-client-bad-url.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-client-bad-url.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-client-close-after-request.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-client-close-after-request.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-client-close-after-request.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-host.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-host.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-host.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-bad-body.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-bad-body.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-bad-body.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-bad-headers.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-bad-headers.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-bad-headers.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-charset.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-charset.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-charset.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-chunked.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-chunked.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-chunked.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-close-immediately.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-close-immediately.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-server-close-immediately.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-url.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-url.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/http-url.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/instrument-js.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/instrument-js.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/instrument-js.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/json.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/json.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/json.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/mkdirs.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/mkdirs.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/mkdirs.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/recursive-dir-list.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/recursive-dir-list.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/recursive-dir-list.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/resource-manager.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/resource-manager.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/resource-manager.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/stream.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/stream.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/stream.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/streams.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/streams.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/streams.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/.deps/util.Po b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/util.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/.deps/util.Po @@ -0,0 +1 @@ +# dummy diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/Makefile b/tools/node_modules/expresso/deps/jscoverage/tests/Makefile new file mode 100644 index 0000000..9f6d1fc --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/Makefile @@ -0,0 +1,846 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# tests/Makefile. Generated from Makefile.in by configure. + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + + + +# Makefile.am - build tests +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + +pkgdatadir = $(datadir)/jscoverage +pkglibdir = $(libdir)/jscoverage +pkgincludedir = $(includedir)/jscoverage +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = x86_64-unknown-linux-gnu +host_triplet = x86_64-unknown-linux-gnu +noinst_PROGRAMS = asprintf$(EXEEXT) encodings$(EXEEXT) \ + gethostbyname$(EXEEXT) http-client-bad-body$(EXEEXT) \ + http-client-bad-url$(EXEEXT) \ + http-client-close-after-request$(EXEEXT) \ + http-server-bad-body$(EXEEXT) http-server-bad-headers$(EXEEXT) \ + http-server-charset$(EXEEXT) http-server-chunked$(EXEEXT) \ + http-server-close-immediately$(EXEEXT) json$(EXEEXT) \ + mkdirs$(EXEEXT) recursive-dir-list$(EXEEXT) streams$(EXEEXT) +subdir = tests +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +PROGRAMS = $(noinst_PROGRAMS) +am_asprintf_OBJECTS = asprintf.$(OBJEXT) util.$(OBJEXT) +asprintf_OBJECTS = $(am_asprintf_OBJECTS) +asprintf_LDADD = $(LDADD) +am_encodings_OBJECTS = encodings.$(OBJEXT) encoding.$(OBJEXT) \ + util.$(OBJEXT) +encodings_OBJECTS = $(am_encodings_OBJECTS) +encodings_DEPENDENCIES = +am_gethostbyname_OBJECTS = gethostbyname.$(OBJEXT) http-host.$(OBJEXT) \ + util.$(OBJEXT) +gethostbyname_OBJECTS = $(am_gethostbyname_OBJECTS) +gethostbyname_DEPENDENCIES = +am_http_client_bad_body_OBJECTS = http-client-bad-body.$(OBJEXT) \ + http-url.$(OBJEXT) util.$(OBJEXT) +http_client_bad_body_OBJECTS = $(am_http_client_bad_body_OBJECTS) +http_client_bad_body_DEPENDENCIES = +am_http_client_bad_url_OBJECTS = http-client-bad-url.$(OBJEXT) \ + util.$(OBJEXT) +http_client_bad_url_OBJECTS = $(am_http_client_bad_url_OBJECTS) +http_client_bad_url_DEPENDENCIES = +http_client_close_after_request_SOURCES = \ + http-client-close-after-request.c +http_client_close_after_request_OBJECTS = \ + http-client-close-after-request.$(OBJEXT) +http_client_close_after_request_DEPENDENCIES = +http_server_bad_body_SOURCES = http-server-bad-body.c +http_server_bad_body_OBJECTS = http-server-bad-body.$(OBJEXT) +http_server_bad_body_DEPENDENCIES = +http_server_bad_headers_SOURCES = http-server-bad-headers.c +http_server_bad_headers_OBJECTS = http-server-bad-headers.$(OBJEXT) +http_server_bad_headers_DEPENDENCIES = +am_http_server_charset_OBJECTS = http-server-charset.$(OBJEXT) \ + stream.$(OBJEXT) util.$(OBJEXT) +http_server_charset_OBJECTS = $(am_http_server_charset_OBJECTS) +http_server_charset_DEPENDENCIES = +am_http_server_chunked_OBJECTS = http-server-chunked.$(OBJEXT) \ + stream.$(OBJEXT) util.$(OBJEXT) +http_server_chunked_OBJECTS = $(am_http_server_chunked_OBJECTS) +http_server_chunked_DEPENDENCIES = +http_server_close_immediately_SOURCES = \ + http-server-close-immediately.c +http_server_close_immediately_OBJECTS = \ + http-server-close-immediately.$(OBJEXT) +http_server_close_immediately_DEPENDENCIES = +am_json_OBJECTS = json.$(OBJEXT) encoding.$(OBJEXT) \ + highlight.$(OBJEXT) instrument-js.$(OBJEXT) \ + resource-manager.$(OBJEXT) stream.$(OBJEXT) util.$(OBJEXT) +json_OBJECTS = $(am_json_OBJECTS) +json_DEPENDENCIES = ../js/obj/libjs.a +am_mkdirs_OBJECTS = mkdirs.$(OBJEXT) util.$(OBJEXT) +mkdirs_OBJECTS = $(am_mkdirs_OBJECTS) +mkdirs_LDADD = $(LDADD) +am_recursive_dir_list_OBJECTS = recursive-dir-list.$(OBJEXT) \ + util.$(OBJEXT) +recursive_dir_list_OBJECTS = $(am_recursive_dir_list_OBJECTS) +recursive_dir_list_LDADD = $(LDADD) +am_streams_OBJECTS = streams.$(OBJEXT) stream.$(OBJEXT) util.$(OBJEXT) +streams_OBJECTS = $(am_streams_OBJECTS) +streams_LDADD = $(LDADD) +DEFAULT_INCLUDES = -I. -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +CXXLD = $(CXX) +CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ + -o $@ +SOURCES = $(asprintf_SOURCES) $(encodings_SOURCES) \ + $(gethostbyname_SOURCES) $(http_client_bad_body_SOURCES) \ + $(http_client_bad_url_SOURCES) \ + http-client-close-after-request.c http-server-bad-body.c \ + http-server-bad-headers.c $(http_server_charset_SOURCES) \ + $(http_server_chunked_SOURCES) http-server-close-immediately.c \ + $(json_SOURCES) $(mkdirs_SOURCES) \ + $(recursive_dir_list_SOURCES) $(streams_SOURCES) +DIST_SOURCES = $(asprintf_SOURCES) $(encodings_SOURCES) \ + $(gethostbyname_SOURCES) $(http_client_bad_body_SOURCES) \ + $(http_client_bad_url_SOURCES) \ + http-client-close-after-request.c http-server-bad-body.c \ + http-server-bad-headers.c $(http_server_charset_SOURCES) \ + $(http_server_chunked_SOURCES) http-server-close-immediately.c \ + $(json_SOURCES) $(mkdirs_SOURCES) \ + $(recursive_dir_list_SOURCES) $(streams_SOURCES) +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = ${SHELL} /scratch/oe/oe-admin/tools/node_modules/expresso/deps/jscoverage/missing --run aclocal-1.10 +AMTAR = ${SHELL} /scratch/oe/oe-admin/tools/node_modules/expresso/deps/jscoverage/missing --run tar +AUTOCONF = ${SHELL} /scratch/oe/oe-admin/tools/node_modules/expresso/deps/jscoverage/missing --run autoconf +AUTOHEADER = ${SHELL} /scratch/oe/oe-admin/tools/node_modules/expresso/deps/jscoverage/missing --run autoheader +AUTOMAKE = ${SHELL} /scratch/oe/oe-admin/tools/node_modules/expresso/deps/jscoverage/missing --run automake-1.10 +AWK = gawk +CC = gcc -std=gnu99 +CCDEPMODE = depmode=gcc3 +CFLAGS = -g -O2 +CPP = gcc -std=gnu99 -E +CPPFLAGS = +CXX = g++ +CXXDEPMODE = depmode=gcc3 +CXXFLAGS = -g -O2 +CYGPATH_W = echo +DEFS = -DHAVE_CONFIG_H +DEPDIR = .deps +ECHO_C = +ECHO_N = -n +ECHO_T = +EGREP = /bin/grep -E +EXEEXT = +EXTRA_SOCKET_LIBS = +EXTRA_THREAD_LIBS = -lpthread +EXTRA_TIMER_LIBS = +GREP = /bin/grep +INSTALL = /usr/bin/install -c +INSTALL_DATA = ${INSTALL} -m 644 +INSTALL_PROGRAM = ${INSTALL} +INSTALL_SCRIPT = ${INSTALL} +INSTALL_STRIP_PROGRAM = $(install_sh) -c -s +LDFLAGS = +LIBICONV = +LIBOBJS = +LIBS = +LTLIBICONV = +LTLIBOBJS = +MAKEINFO = ${SHELL} /scratch/oe/oe-admin/tools/node_modules/expresso/deps/jscoverage/missing --run makeinfo +MKDIR_P = /bin/mkdir -p +OBJEXT = o +PACKAGE = jscoverage +PACKAGE_BUGREPORT = +PACKAGE_NAME = jscoverage +PACKAGE_STRING = jscoverage 0.4 +PACKAGE_TARNAME = jscoverage +PACKAGE_VERSION = 0.4 +PATH_SEPARATOR = : +SET_MAKE = +SHELL = /bin/sh +STRIP = +VERSION = 0.4 +XP_DEF = -DXP_UNIX +abs_builddir = /scratch/oe/oe-admin/tools/node_modules/expresso/deps/jscoverage/tests +abs_srcdir = /scratch/oe/oe-admin/tools/node_modules/expresso/deps/jscoverage/tests +abs_top_builddir = /scratch/oe/oe-admin/tools/node_modules/expresso/deps/jscoverage +abs_top_srcdir = /scratch/oe/oe-admin/tools/node_modules/expresso/deps/jscoverage +ac_ct_CC = gcc +ac_ct_CXX = g++ +am__include = include +am__leading_dot = . +am__quote = +am__tar = ${AMTAR} chof - "$$tardir" +am__untar = ${AMTAR} xf - +bindir = ${exec_prefix}/bin +build = x86_64-unknown-linux-gnu +build_alias = +build_cpu = x86_64 +build_os = linux-gnu +build_vendor = unknown +builddir = . +datadir = ${datarootdir} +datarootdir = ${prefix}/share +docdir = ${datarootdir}/doc/${PACKAGE_TARNAME} +dvidir = ${docdir} +exec_prefix = ${prefix} +host = x86_64-unknown-linux-gnu +host_alias = +host_cpu = x86_64 +host_os = linux-gnu +host_vendor = unknown +htmldir = ${docdir} +includedir = ${prefix}/include +infodir = ${datarootdir}/info +install_sh = $(SHELL) /scratch/oe/oe-admin/tools/node_modules/expresso/deps/jscoverage/install-sh +libdir = ${exec_prefix}/lib +libexecdir = ${exec_prefix}/libexec +localedir = ${datarootdir}/locale +localstatedir = ${prefix}/var +mandir = ${datarootdir}/man +mkdir_p = /bin/mkdir -p +oldincludedir = /usr/include +pdfdir = ${docdir} +prefix = /usr/local +program_transform_name = s,x,x, +psdir = ${docdir} +sbindir = ${exec_prefix}/sbin +sharedstatedir = ${prefix}/com +srcdir = . +sysconfdir = ${prefix}/etc +target_alias = +top_builddir = .. +top_srcdir = .. +AM_CFLAGS = -DXP_UNIX -I../js -I../js/obj +AM_CXXFLAGS = -DXP_UNIX -I../js -I../js/obj +asprintf_SOURCES = asprintf.c ../util.c +encodings_SOURCES = encodings.c ../encoding.c ../util.c +encodings_LDADD = +gethostbyname_SOURCES = gethostbyname.c ../http-host.c ../util.c +gethostbyname_LDADD = +http_client_bad_body_SOURCES = http-client-bad-body.c ../http-url.c ../util.c +http_client_bad_body_LDADD = +http_client_bad_url_SOURCES = http-client-bad-url.c ../util.c +http_client_bad_url_LDADD = +http_client_close_after_request_LDADD = +http_server_bad_body_LDADD = +http_server_bad_headers_LDADD = +http_server_charset_SOURCES = http-server-charset.c ../stream.c ../util.c +http_server_charset_LDADD = +http_server_chunked_SOURCES = http-server-chunked.c ../stream.c ../util.c +http_server_chunked_LDADD = +http_server_close_immediately_LDADD = +json_SOURCES = json.c ../encoding.c ../highlight.c ../instrument-js.cpp ../resource-manager.c ../stream.c ../util.c +json_LDADD = ../js/obj/libjs.a -lm +mkdirs_SOURCES = mkdirs.c ../util.c +recursive_dir_list_SOURCES = recursive-dir-list.c ../util.c +streams_SOURCES = streams.c ../stream.c ../util.c +TESTS = encodings.sh \ + fatal.sh \ + help.sh \ + invalid-option.sh \ + javascript.sh \ + javascript-ignore.sh \ + javascript-utf-8.sh \ + no-arguments.sh \ + recursive.sh \ + recursive-crlf.sh \ + recursive-exclude.sh \ + recursive-fatal.sh \ + recursive-no-instrument.sh \ + same-directory.sh \ + version.sh \ + asprintf.sh \ + mkdirs.sh \ + recursive-dir-list.sh \ + streams.sh \ + charset.sh \ + chunked.sh \ + gethostbyname.sh \ + json.sh \ + proxy.sh \ + proxy-bad-request-body.sh \ + proxy-bad-response-body.sh \ + proxy-bad-response-body-javascript.sh \ + proxy-bad-response-headers.sh \ + proxy-no-server.sh \ + proxy-url.sh \ + server.sh \ + server-bad-requests.sh \ + server-close-after-request.sh \ + server-content-types.sh \ + server-directory-listing.sh \ + server-directory-redirect.sh \ + server-encoded-url.sh \ + server-error.sh \ + server-help.sh \ + server-ip-address.sh \ + server-shutdown.sh \ + server-shutdown-bad-method.sh \ + server-special-file.sh \ + server-unreadable-directory.sh \ + server-unreadable-file.sh \ + server-verbose.sh \ + server-version.sh \ + store.sh \ + store-bad-json.sh \ + store-bad-request-body.sh \ + store-bad-response-headers.sh \ + store-escaped-characters.sh \ + store-server-bad-body.sh \ + store-server-closes-immediately.sh \ + store-source-not-found.sh \ + store-unreadable-json.sh \ + store-unwritable-json.sh + +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .cpp .o .obj +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --foreign tests/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +clean-noinstPROGRAMS: + -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) +asprintf$(EXEEXT): $(asprintf_OBJECTS) $(asprintf_DEPENDENCIES) + @rm -f asprintf$(EXEEXT) + $(LINK) $(asprintf_OBJECTS) $(asprintf_LDADD) $(LIBS) +encodings$(EXEEXT): $(encodings_OBJECTS) $(encodings_DEPENDENCIES) + @rm -f encodings$(EXEEXT) + $(LINK) $(encodings_OBJECTS) $(encodings_LDADD) $(LIBS) +gethostbyname$(EXEEXT): $(gethostbyname_OBJECTS) $(gethostbyname_DEPENDENCIES) + @rm -f gethostbyname$(EXEEXT) + $(LINK) $(gethostbyname_OBJECTS) $(gethostbyname_LDADD) $(LIBS) +http-client-bad-body$(EXEEXT): $(http_client_bad_body_OBJECTS) $(http_client_bad_body_DEPENDENCIES) + @rm -f http-client-bad-body$(EXEEXT) + $(LINK) $(http_client_bad_body_OBJECTS) $(http_client_bad_body_LDADD) $(LIBS) +http-client-bad-url$(EXEEXT): $(http_client_bad_url_OBJECTS) $(http_client_bad_url_DEPENDENCIES) + @rm -f http-client-bad-url$(EXEEXT) + $(LINK) $(http_client_bad_url_OBJECTS) $(http_client_bad_url_LDADD) $(LIBS) +http-client-close-after-request$(EXEEXT): $(http_client_close_after_request_OBJECTS) $(http_client_close_after_request_DEPENDENCIES) + @rm -f http-client-close-after-request$(EXEEXT) + $(LINK) $(http_client_close_after_request_OBJECTS) $(http_client_close_after_request_LDADD) $(LIBS) +http-server-bad-body$(EXEEXT): $(http_server_bad_body_OBJECTS) $(http_server_bad_body_DEPENDENCIES) + @rm -f http-server-bad-body$(EXEEXT) + $(LINK) $(http_server_bad_body_OBJECTS) $(http_server_bad_body_LDADD) $(LIBS) +http-server-bad-headers$(EXEEXT): $(http_server_bad_headers_OBJECTS) $(http_server_bad_headers_DEPENDENCIES) + @rm -f http-server-bad-headers$(EXEEXT) + $(LINK) $(http_server_bad_headers_OBJECTS) $(http_server_bad_headers_LDADD) $(LIBS) +http-server-charset$(EXEEXT): $(http_server_charset_OBJECTS) $(http_server_charset_DEPENDENCIES) + @rm -f http-server-charset$(EXEEXT) + $(LINK) $(http_server_charset_OBJECTS) $(http_server_charset_LDADD) $(LIBS) +http-server-chunked$(EXEEXT): $(http_server_chunked_OBJECTS) $(http_server_chunked_DEPENDENCIES) + @rm -f http-server-chunked$(EXEEXT) + $(LINK) $(http_server_chunked_OBJECTS) $(http_server_chunked_LDADD) $(LIBS) +http-server-close-immediately$(EXEEXT): $(http_server_close_immediately_OBJECTS) $(http_server_close_immediately_DEPENDENCIES) + @rm -f http-server-close-immediately$(EXEEXT) + $(LINK) $(http_server_close_immediately_OBJECTS) $(http_server_close_immediately_LDADD) $(LIBS) +json$(EXEEXT): $(json_OBJECTS) $(json_DEPENDENCIES) + @rm -f json$(EXEEXT) + $(CXXLINK) $(json_OBJECTS) $(json_LDADD) $(LIBS) +mkdirs$(EXEEXT): $(mkdirs_OBJECTS) $(mkdirs_DEPENDENCIES) + @rm -f mkdirs$(EXEEXT) + $(LINK) $(mkdirs_OBJECTS) $(mkdirs_LDADD) $(LIBS) +recursive-dir-list$(EXEEXT): $(recursive_dir_list_OBJECTS) $(recursive_dir_list_DEPENDENCIES) + @rm -f recursive-dir-list$(EXEEXT) + $(LINK) $(recursive_dir_list_OBJECTS) $(recursive_dir_list_LDADD) $(LIBS) +streams$(EXEEXT): $(streams_OBJECTS) $(streams_DEPENDENCIES) + @rm -f streams$(EXEEXT) + $(LINK) $(streams_OBJECTS) $(streams_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +include ./$(DEPDIR)/asprintf.Po +include ./$(DEPDIR)/encoding.Po +include ./$(DEPDIR)/encodings.Po +include ./$(DEPDIR)/gethostbyname.Po +include ./$(DEPDIR)/highlight.Po +include ./$(DEPDIR)/http-client-bad-body.Po +include ./$(DEPDIR)/http-client-bad-url.Po +include ./$(DEPDIR)/http-client-close-after-request.Po +include ./$(DEPDIR)/http-host.Po +include ./$(DEPDIR)/http-server-bad-body.Po +include ./$(DEPDIR)/http-server-bad-headers.Po +include ./$(DEPDIR)/http-server-charset.Po +include ./$(DEPDIR)/http-server-chunked.Po +include ./$(DEPDIR)/http-server-close-immediately.Po +include ./$(DEPDIR)/http-url.Po +include ./$(DEPDIR)/instrument-js.Po +include ./$(DEPDIR)/json.Po +include ./$(DEPDIR)/mkdirs.Po +include ./$(DEPDIR)/recursive-dir-list.Po +include ./$(DEPDIR)/resource-manager.Po +include ./$(DEPDIR)/stream.Po +include ./$(DEPDIR)/streams.Po +include ./$(DEPDIR)/util.Po + +.c.o: + $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< + mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +# source='$<' object='$@' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(COMPILE) -c $< + +.c.obj: + $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` + mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +# source='$<' object='$@' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(COMPILE) -c `$(CYGPATH_W) '$<'` + +util.o: ../util.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT util.o -MD -MP -MF $(DEPDIR)/util.Tpo -c -o util.o `test -f '../util.c' || echo '$(srcdir)/'`../util.c + mv -f $(DEPDIR)/util.Tpo $(DEPDIR)/util.Po +# source='../util.c' object='util.o' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o util.o `test -f '../util.c' || echo '$(srcdir)/'`../util.c + +util.obj: ../util.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT util.obj -MD -MP -MF $(DEPDIR)/util.Tpo -c -o util.obj `if test -f '../util.c'; then $(CYGPATH_W) '../util.c'; else $(CYGPATH_W) '$(srcdir)/../util.c'; fi` + mv -f $(DEPDIR)/util.Tpo $(DEPDIR)/util.Po +# source='../util.c' object='util.obj' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o util.obj `if test -f '../util.c'; then $(CYGPATH_W) '../util.c'; else $(CYGPATH_W) '$(srcdir)/../util.c'; fi` + +encoding.o: ../encoding.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT encoding.o -MD -MP -MF $(DEPDIR)/encoding.Tpo -c -o encoding.o `test -f '../encoding.c' || echo '$(srcdir)/'`../encoding.c + mv -f $(DEPDIR)/encoding.Tpo $(DEPDIR)/encoding.Po +# source='../encoding.c' object='encoding.o' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o encoding.o `test -f '../encoding.c' || echo '$(srcdir)/'`../encoding.c + +encoding.obj: ../encoding.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT encoding.obj -MD -MP -MF $(DEPDIR)/encoding.Tpo -c -o encoding.obj `if test -f '../encoding.c'; then $(CYGPATH_W) '../encoding.c'; else $(CYGPATH_W) '$(srcdir)/../encoding.c'; fi` + mv -f $(DEPDIR)/encoding.Tpo $(DEPDIR)/encoding.Po +# source='../encoding.c' object='encoding.obj' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o encoding.obj `if test -f '../encoding.c'; then $(CYGPATH_W) '../encoding.c'; else $(CYGPATH_W) '$(srcdir)/../encoding.c'; fi` + +http-host.o: ../http-host.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT http-host.o -MD -MP -MF $(DEPDIR)/http-host.Tpo -c -o http-host.o `test -f '../http-host.c' || echo '$(srcdir)/'`../http-host.c + mv -f $(DEPDIR)/http-host.Tpo $(DEPDIR)/http-host.Po +# source='../http-host.c' object='http-host.o' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o http-host.o `test -f '../http-host.c' || echo '$(srcdir)/'`../http-host.c + +http-host.obj: ../http-host.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT http-host.obj -MD -MP -MF $(DEPDIR)/http-host.Tpo -c -o http-host.obj `if test -f '../http-host.c'; then $(CYGPATH_W) '../http-host.c'; else $(CYGPATH_W) '$(srcdir)/../http-host.c'; fi` + mv -f $(DEPDIR)/http-host.Tpo $(DEPDIR)/http-host.Po +# source='../http-host.c' object='http-host.obj' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o http-host.obj `if test -f '../http-host.c'; then $(CYGPATH_W) '../http-host.c'; else $(CYGPATH_W) '$(srcdir)/../http-host.c'; fi` + +http-url.o: ../http-url.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT http-url.o -MD -MP -MF $(DEPDIR)/http-url.Tpo -c -o http-url.o `test -f '../http-url.c' || echo '$(srcdir)/'`../http-url.c + mv -f $(DEPDIR)/http-url.Tpo $(DEPDIR)/http-url.Po +# source='../http-url.c' object='http-url.o' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o http-url.o `test -f '../http-url.c' || echo '$(srcdir)/'`../http-url.c + +http-url.obj: ../http-url.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT http-url.obj -MD -MP -MF $(DEPDIR)/http-url.Tpo -c -o http-url.obj `if test -f '../http-url.c'; then $(CYGPATH_W) '../http-url.c'; else $(CYGPATH_W) '$(srcdir)/../http-url.c'; fi` + mv -f $(DEPDIR)/http-url.Tpo $(DEPDIR)/http-url.Po +# source='../http-url.c' object='http-url.obj' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o http-url.obj `if test -f '../http-url.c'; then $(CYGPATH_W) '../http-url.c'; else $(CYGPATH_W) '$(srcdir)/../http-url.c'; fi` + +stream.o: ../stream.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT stream.o -MD -MP -MF $(DEPDIR)/stream.Tpo -c -o stream.o `test -f '../stream.c' || echo '$(srcdir)/'`../stream.c + mv -f $(DEPDIR)/stream.Tpo $(DEPDIR)/stream.Po +# source='../stream.c' object='stream.o' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o stream.o `test -f '../stream.c' || echo '$(srcdir)/'`../stream.c + +stream.obj: ../stream.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT stream.obj -MD -MP -MF $(DEPDIR)/stream.Tpo -c -o stream.obj `if test -f '../stream.c'; then $(CYGPATH_W) '../stream.c'; else $(CYGPATH_W) '$(srcdir)/../stream.c'; fi` + mv -f $(DEPDIR)/stream.Tpo $(DEPDIR)/stream.Po +# source='../stream.c' object='stream.obj' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o stream.obj `if test -f '../stream.c'; then $(CYGPATH_W) '../stream.c'; else $(CYGPATH_W) '$(srcdir)/../stream.c'; fi` + +highlight.o: ../highlight.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT highlight.o -MD -MP -MF $(DEPDIR)/highlight.Tpo -c -o highlight.o `test -f '../highlight.c' || echo '$(srcdir)/'`../highlight.c + mv -f $(DEPDIR)/highlight.Tpo $(DEPDIR)/highlight.Po +# source='../highlight.c' object='highlight.o' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o highlight.o `test -f '../highlight.c' || echo '$(srcdir)/'`../highlight.c + +highlight.obj: ../highlight.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT highlight.obj -MD -MP -MF $(DEPDIR)/highlight.Tpo -c -o highlight.obj `if test -f '../highlight.c'; then $(CYGPATH_W) '../highlight.c'; else $(CYGPATH_W) '$(srcdir)/../highlight.c'; fi` + mv -f $(DEPDIR)/highlight.Tpo $(DEPDIR)/highlight.Po +# source='../highlight.c' object='highlight.obj' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o highlight.obj `if test -f '../highlight.c'; then $(CYGPATH_W) '../highlight.c'; else $(CYGPATH_W) '$(srcdir)/../highlight.c'; fi` + +resource-manager.o: ../resource-manager.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resource-manager.o -MD -MP -MF $(DEPDIR)/resource-manager.Tpo -c -o resource-manager.o `test -f '../resource-manager.c' || echo '$(srcdir)/'`../resource-manager.c + mv -f $(DEPDIR)/resource-manager.Tpo $(DEPDIR)/resource-manager.Po +# source='../resource-manager.c' object='resource-manager.o' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resource-manager.o `test -f '../resource-manager.c' || echo '$(srcdir)/'`../resource-manager.c + +resource-manager.obj: ../resource-manager.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resource-manager.obj -MD -MP -MF $(DEPDIR)/resource-manager.Tpo -c -o resource-manager.obj `if test -f '../resource-manager.c'; then $(CYGPATH_W) '../resource-manager.c'; else $(CYGPATH_W) '$(srcdir)/../resource-manager.c'; fi` + mv -f $(DEPDIR)/resource-manager.Tpo $(DEPDIR)/resource-manager.Po +# source='../resource-manager.c' object='resource-manager.obj' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resource-manager.obj `if test -f '../resource-manager.c'; then $(CYGPATH_W) '../resource-manager.c'; else $(CYGPATH_W) '$(srcdir)/../resource-manager.c'; fi` + +.cpp.o: + $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< + mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +# source='$<' object='$@' libtool=no \ +# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \ +# $(CXXCOMPILE) -c -o $@ $< + +.cpp.obj: + $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` + mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +# source='$<' object='$@' libtool=no \ +# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \ +# $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +instrument-js.o: ../instrument-js.cpp + $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT instrument-js.o -MD -MP -MF $(DEPDIR)/instrument-js.Tpo -c -o instrument-js.o `test -f '../instrument-js.cpp' || echo '$(srcdir)/'`../instrument-js.cpp + mv -f $(DEPDIR)/instrument-js.Tpo $(DEPDIR)/instrument-js.Po +# source='../instrument-js.cpp' object='instrument-js.o' libtool=no \ +# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \ +# $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o instrument-js.o `test -f '../instrument-js.cpp' || echo '$(srcdir)/'`../instrument-js.cpp + +instrument-js.obj: ../instrument-js.cpp + $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT instrument-js.obj -MD -MP -MF $(DEPDIR)/instrument-js.Tpo -c -o instrument-js.obj `if test -f '../instrument-js.cpp'; then $(CYGPATH_W) '../instrument-js.cpp'; else $(CYGPATH_W) '$(srcdir)/../instrument-js.cpp'; fi` + mv -f $(DEPDIR)/instrument-js.Tpo $(DEPDIR)/instrument-js.Po +# source='../instrument-js.cpp' object='instrument-js.obj' libtool=no \ +# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \ +# $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o instrument-js.obj `if test -f '../instrument-js.cpp'; then $(CYGPATH_W) '../instrument-js.cpp'; else $(CYGPATH_W) '$(srcdir)/../instrument-js.cpp'; fi` + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; ws='[ ]'; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *$$ws$$tst$$ws*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + echo "XPASS: $$tst"; \ + ;; \ + *) \ + echo "PASS: $$tst"; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *$$ws$$tst$$ws*) \ + xfail=`expr $$xfail + 1`; \ + echo "XFAIL: $$tst"; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + echo "FAIL: $$tst"; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + echo "SKIP: $$tst"; \ + fi; \ + done; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="All $$all tests passed"; \ + else \ + banner="All $$all tests behaved as expected ($$xfail expected failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all tests failed"; \ + else \ + banner="$$failed of $$all tests did not behave as expected ($$xpass unexpected passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + skipped="($$skip tests were not run)"; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + echo "$$dashes"; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes"; \ + test "$$failed" -eq 0; \ + else :; fi + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS +check: check-am +all-am: Makefile $(PROGRAMS) +installdirs: +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-noinstPROGRAMS mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-exec-am: + +install-html: install-html-am + +install-info: install-info-am + +install-man: + +install-pdf: install-pdf-am + +install-ps: install-ps-am + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ + clean-generic clean-noinstPROGRAMS ctags distclean \ + distclean-compile distclean-generic distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ + uninstall-am + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/Makefile.am b/tools/node_modules/expresso/deps/jscoverage/tests/Makefile.am new file mode 100644 index 0000000..c58d2a3 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/Makefile.am @@ -0,0 +1,130 @@ +# Makefile.am - build tests +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +noinst_PROGRAMS = asprintf \ + encodings \ + gethostbyname \ + http-client-bad-body \ + http-client-bad-url \ + http-client-close-after-request \ + http-server-bad-body \ + http-server-bad-headers \ + http-server-charset \ + http-server-chunked \ + http-server-close-immediately \ + json \ + mkdirs \ + recursive-dir-list \ + streams + +AM_CFLAGS = @XP_DEF@ -I../js -I../js/obj +AM_CXXFLAGS = @XP_DEF@ -I../js -I../js/obj + +asprintf_SOURCES = asprintf.c ../util.c + +encodings_SOURCES = encodings.c ../encoding.c ../util.c +encodings_LDADD = @LIBICONV@ + +gethostbyname_SOURCES = gethostbyname.c ../http-host.c ../util.c +gethostbyname_LDADD = @EXTRA_SOCKET_LIBS@ + +http_client_bad_body_SOURCES = http-client-bad-body.c ../http-url.c ../util.c +http_client_bad_body_LDADD = @EXTRA_SOCKET_LIBS@ + +http_client_bad_url_SOURCES = http-client-bad-url.c ../util.c +http_client_bad_url_LDADD = @EXTRA_SOCKET_LIBS@ + +http_client_close_after_request_LDADD = @EXTRA_SOCKET_LIBS@ + +http_server_bad_body_LDADD = @EXTRA_SOCKET_LIBS@ + +http_server_bad_headers_LDADD = @EXTRA_SOCKET_LIBS@ + +http_server_charset_SOURCES = http-server-charset.c ../stream.c ../util.c +http_server_charset_LDADD = @EXTRA_SOCKET_LIBS@ + +http_server_chunked_SOURCES = http-server-chunked.c ../stream.c ../util.c +http_server_chunked_LDADD = @EXTRA_SOCKET_LIBS@ + +http_server_close_immediately_LDADD = @EXTRA_SOCKET_LIBS@ + +json_SOURCES = json.c ../encoding.c ../highlight.c ../instrument-js.cpp ../resource-manager.c ../stream.c ../util.c +json_LDADD = ../js/obj/libjs.a -lm @LIBICONV@ @EXTRA_TIMER_LIBS@ + +mkdirs_SOURCES = mkdirs.c ../util.c + +recursive_dir_list_SOURCES = recursive-dir-list.c ../util.c + +streams_SOURCES = streams.c ../stream.c ../util.c + +TESTS = encodings.sh \ + fatal.sh \ + help.sh \ + invalid-option.sh \ + javascript.sh \ + javascript-ignore.sh \ + javascript-utf-8.sh \ + no-arguments.sh \ + recursive.sh \ + recursive-crlf.sh \ + recursive-exclude.sh \ + recursive-fatal.sh \ + recursive-no-instrument.sh \ + same-directory.sh \ + version.sh \ + asprintf.sh \ + mkdirs.sh \ + recursive-dir-list.sh \ + streams.sh \ + charset.sh \ + chunked.sh \ + gethostbyname.sh \ + json.sh \ + proxy.sh \ + proxy-bad-request-body.sh \ + proxy-bad-response-body.sh \ + proxy-bad-response-body-javascript.sh \ + proxy-bad-response-headers.sh \ + proxy-no-server.sh \ + proxy-url.sh \ + server.sh \ + server-bad-requests.sh \ + server-close-after-request.sh \ + server-content-types.sh \ + server-directory-listing.sh \ + server-directory-redirect.sh \ + server-encoded-url.sh \ + server-error.sh \ + server-help.sh \ + server-ip-address.sh \ + server-shutdown.sh \ + server-shutdown-bad-method.sh \ + server-special-file.sh \ + server-unreadable-directory.sh \ + server-unreadable-file.sh \ + server-verbose.sh \ + server-version.sh \ + store.sh \ + store-bad-json.sh \ + store-bad-request-body.sh \ + store-bad-response-headers.sh \ + store-escaped-characters.sh \ + store-server-bad-body.sh \ + store-server-closes-immediately.sh \ + store-source-not-found.sh \ + store-unreadable-json.sh \ + store-unwritable-json.sh diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/Makefile.in b/tools/node_modules/expresso/deps/jscoverage/tests/Makefile.in new file mode 100644 index 0000000..bbe0402 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/Makefile.in @@ -0,0 +1,846 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +# Makefile.am - build tests +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +noinst_PROGRAMS = asprintf$(EXEEXT) encodings$(EXEEXT) \ + gethostbyname$(EXEEXT) http-client-bad-body$(EXEEXT) \ + http-client-bad-url$(EXEEXT) \ + http-client-close-after-request$(EXEEXT) \ + http-server-bad-body$(EXEEXT) http-server-bad-headers$(EXEEXT) \ + http-server-charset$(EXEEXT) http-server-chunked$(EXEEXT) \ + http-server-close-immediately$(EXEEXT) json$(EXEEXT) \ + mkdirs$(EXEEXT) recursive-dir-list$(EXEEXT) streams$(EXEEXT) +subdir = tests +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +PROGRAMS = $(noinst_PROGRAMS) +am_asprintf_OBJECTS = asprintf.$(OBJEXT) util.$(OBJEXT) +asprintf_OBJECTS = $(am_asprintf_OBJECTS) +asprintf_LDADD = $(LDADD) +am_encodings_OBJECTS = encodings.$(OBJEXT) encoding.$(OBJEXT) \ + util.$(OBJEXT) +encodings_OBJECTS = $(am_encodings_OBJECTS) +encodings_DEPENDENCIES = +am_gethostbyname_OBJECTS = gethostbyname.$(OBJEXT) http-host.$(OBJEXT) \ + util.$(OBJEXT) +gethostbyname_OBJECTS = $(am_gethostbyname_OBJECTS) +gethostbyname_DEPENDENCIES = +am_http_client_bad_body_OBJECTS = http-client-bad-body.$(OBJEXT) \ + http-url.$(OBJEXT) util.$(OBJEXT) +http_client_bad_body_OBJECTS = $(am_http_client_bad_body_OBJECTS) +http_client_bad_body_DEPENDENCIES = +am_http_client_bad_url_OBJECTS = http-client-bad-url.$(OBJEXT) \ + util.$(OBJEXT) +http_client_bad_url_OBJECTS = $(am_http_client_bad_url_OBJECTS) +http_client_bad_url_DEPENDENCIES = +http_client_close_after_request_SOURCES = \ + http-client-close-after-request.c +http_client_close_after_request_OBJECTS = \ + http-client-close-after-request.$(OBJEXT) +http_client_close_after_request_DEPENDENCIES = +http_server_bad_body_SOURCES = http-server-bad-body.c +http_server_bad_body_OBJECTS = http-server-bad-body.$(OBJEXT) +http_server_bad_body_DEPENDENCIES = +http_server_bad_headers_SOURCES = http-server-bad-headers.c +http_server_bad_headers_OBJECTS = http-server-bad-headers.$(OBJEXT) +http_server_bad_headers_DEPENDENCIES = +am_http_server_charset_OBJECTS = http-server-charset.$(OBJEXT) \ + stream.$(OBJEXT) util.$(OBJEXT) +http_server_charset_OBJECTS = $(am_http_server_charset_OBJECTS) +http_server_charset_DEPENDENCIES = +am_http_server_chunked_OBJECTS = http-server-chunked.$(OBJEXT) \ + stream.$(OBJEXT) util.$(OBJEXT) +http_server_chunked_OBJECTS = $(am_http_server_chunked_OBJECTS) +http_server_chunked_DEPENDENCIES = +http_server_close_immediately_SOURCES = \ + http-server-close-immediately.c +http_server_close_immediately_OBJECTS = \ + http-server-close-immediately.$(OBJEXT) +http_server_close_immediately_DEPENDENCIES = +am_json_OBJECTS = json.$(OBJEXT) encoding.$(OBJEXT) \ + highlight.$(OBJEXT) instrument-js.$(OBJEXT) \ + resource-manager.$(OBJEXT) stream.$(OBJEXT) util.$(OBJEXT) +json_OBJECTS = $(am_json_OBJECTS) +json_DEPENDENCIES = ../js/obj/libjs.a +am_mkdirs_OBJECTS = mkdirs.$(OBJEXT) util.$(OBJEXT) +mkdirs_OBJECTS = $(am_mkdirs_OBJECTS) +mkdirs_LDADD = $(LDADD) +am_recursive_dir_list_OBJECTS = recursive-dir-list.$(OBJEXT) \ + util.$(OBJEXT) +recursive_dir_list_OBJECTS = $(am_recursive_dir_list_OBJECTS) +recursive_dir_list_LDADD = $(LDADD) +am_streams_OBJECTS = streams.$(OBJEXT) stream.$(OBJEXT) util.$(OBJEXT) +streams_OBJECTS = $(am_streams_OBJECTS) +streams_LDADD = $(LDADD) +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +CXXLD = $(CXX) +CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ + -o $@ +SOURCES = $(asprintf_SOURCES) $(encodings_SOURCES) \ + $(gethostbyname_SOURCES) $(http_client_bad_body_SOURCES) \ + $(http_client_bad_url_SOURCES) \ + http-client-close-after-request.c http-server-bad-body.c \ + http-server-bad-headers.c $(http_server_charset_SOURCES) \ + $(http_server_chunked_SOURCES) http-server-close-immediately.c \ + $(json_SOURCES) $(mkdirs_SOURCES) \ + $(recursive_dir_list_SOURCES) $(streams_SOURCES) +DIST_SOURCES = $(asprintf_SOURCES) $(encodings_SOURCES) \ + $(gethostbyname_SOURCES) $(http_client_bad_body_SOURCES) \ + $(http_client_bad_url_SOURCES) \ + http-client-close-after-request.c http-server-bad-body.c \ + http-server-bad-headers.c $(http_server_charset_SOURCES) \ + $(http_server_chunked_SOURCES) http-server-close-immediately.c \ + $(json_SOURCES) $(mkdirs_SOURCES) \ + $(recursive_dir_list_SOURCES) $(streams_SOURCES) +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +EXTRA_SOCKET_LIBS = @EXTRA_SOCKET_LIBS@ +EXTRA_THREAD_LIBS = @EXTRA_THREAD_LIBS@ +EXTRA_TIMER_LIBS = @EXTRA_TIMER_LIBS@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LDFLAGS = @LDFLAGS@ +LIBICONV = @LIBICONV@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LTLIBICONV = @LTLIBICONV@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +XP_DEF = @XP_DEF@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +AM_CFLAGS = @XP_DEF@ -I../js -I../js/obj +AM_CXXFLAGS = @XP_DEF@ -I../js -I../js/obj +asprintf_SOURCES = asprintf.c ../util.c +encodings_SOURCES = encodings.c ../encoding.c ../util.c +encodings_LDADD = @LIBICONV@ +gethostbyname_SOURCES = gethostbyname.c ../http-host.c ../util.c +gethostbyname_LDADD = @EXTRA_SOCKET_LIBS@ +http_client_bad_body_SOURCES = http-client-bad-body.c ../http-url.c ../util.c +http_client_bad_body_LDADD = @EXTRA_SOCKET_LIBS@ +http_client_bad_url_SOURCES = http-client-bad-url.c ../util.c +http_client_bad_url_LDADD = @EXTRA_SOCKET_LIBS@ +http_client_close_after_request_LDADD = @EXTRA_SOCKET_LIBS@ +http_server_bad_body_LDADD = @EXTRA_SOCKET_LIBS@ +http_server_bad_headers_LDADD = @EXTRA_SOCKET_LIBS@ +http_server_charset_SOURCES = http-server-charset.c ../stream.c ../util.c +http_server_charset_LDADD = @EXTRA_SOCKET_LIBS@ +http_server_chunked_SOURCES = http-server-chunked.c ../stream.c ../util.c +http_server_chunked_LDADD = @EXTRA_SOCKET_LIBS@ +http_server_close_immediately_LDADD = @EXTRA_SOCKET_LIBS@ +json_SOURCES = json.c ../encoding.c ../highlight.c ../instrument-js.cpp ../resource-manager.c ../stream.c ../util.c +json_LDADD = ../js/obj/libjs.a -lm @LIBICONV@ @EXTRA_TIMER_LIBS@ +mkdirs_SOURCES = mkdirs.c ../util.c +recursive_dir_list_SOURCES = recursive-dir-list.c ../util.c +streams_SOURCES = streams.c ../stream.c ../util.c +TESTS = encodings.sh \ + fatal.sh \ + help.sh \ + invalid-option.sh \ + javascript.sh \ + javascript-ignore.sh \ + javascript-utf-8.sh \ + no-arguments.sh \ + recursive.sh \ + recursive-crlf.sh \ + recursive-exclude.sh \ + recursive-fatal.sh \ + recursive-no-instrument.sh \ + same-directory.sh \ + version.sh \ + asprintf.sh \ + mkdirs.sh \ + recursive-dir-list.sh \ + streams.sh \ + charset.sh \ + chunked.sh \ + gethostbyname.sh \ + json.sh \ + proxy.sh \ + proxy-bad-request-body.sh \ + proxy-bad-response-body.sh \ + proxy-bad-response-body-javascript.sh \ + proxy-bad-response-headers.sh \ + proxy-no-server.sh \ + proxy-url.sh \ + server.sh \ + server-bad-requests.sh \ + server-close-after-request.sh \ + server-content-types.sh \ + server-directory-listing.sh \ + server-directory-redirect.sh \ + server-encoded-url.sh \ + server-error.sh \ + server-help.sh \ + server-ip-address.sh \ + server-shutdown.sh \ + server-shutdown-bad-method.sh \ + server-special-file.sh \ + server-unreadable-directory.sh \ + server-unreadable-file.sh \ + server-verbose.sh \ + server-version.sh \ + store.sh \ + store-bad-json.sh \ + store-bad-request-body.sh \ + store-bad-response-headers.sh \ + store-escaped-characters.sh \ + store-server-bad-body.sh \ + store-server-closes-immediately.sh \ + store-source-not-found.sh \ + store-unreadable-json.sh \ + store-unwritable-json.sh + +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .cpp .o .obj +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --foreign tests/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +clean-noinstPROGRAMS: + -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) +asprintf$(EXEEXT): $(asprintf_OBJECTS) $(asprintf_DEPENDENCIES) + @rm -f asprintf$(EXEEXT) + $(LINK) $(asprintf_OBJECTS) $(asprintf_LDADD) $(LIBS) +encodings$(EXEEXT): $(encodings_OBJECTS) $(encodings_DEPENDENCIES) + @rm -f encodings$(EXEEXT) + $(LINK) $(encodings_OBJECTS) $(encodings_LDADD) $(LIBS) +gethostbyname$(EXEEXT): $(gethostbyname_OBJECTS) $(gethostbyname_DEPENDENCIES) + @rm -f gethostbyname$(EXEEXT) + $(LINK) $(gethostbyname_OBJECTS) $(gethostbyname_LDADD) $(LIBS) +http-client-bad-body$(EXEEXT): $(http_client_bad_body_OBJECTS) $(http_client_bad_body_DEPENDENCIES) + @rm -f http-client-bad-body$(EXEEXT) + $(LINK) $(http_client_bad_body_OBJECTS) $(http_client_bad_body_LDADD) $(LIBS) +http-client-bad-url$(EXEEXT): $(http_client_bad_url_OBJECTS) $(http_client_bad_url_DEPENDENCIES) + @rm -f http-client-bad-url$(EXEEXT) + $(LINK) $(http_client_bad_url_OBJECTS) $(http_client_bad_url_LDADD) $(LIBS) +http-client-close-after-request$(EXEEXT): $(http_client_close_after_request_OBJECTS) $(http_client_close_after_request_DEPENDENCIES) + @rm -f http-client-close-after-request$(EXEEXT) + $(LINK) $(http_client_close_after_request_OBJECTS) $(http_client_close_after_request_LDADD) $(LIBS) +http-server-bad-body$(EXEEXT): $(http_server_bad_body_OBJECTS) $(http_server_bad_body_DEPENDENCIES) + @rm -f http-server-bad-body$(EXEEXT) + $(LINK) $(http_server_bad_body_OBJECTS) $(http_server_bad_body_LDADD) $(LIBS) +http-server-bad-headers$(EXEEXT): $(http_server_bad_headers_OBJECTS) $(http_server_bad_headers_DEPENDENCIES) + @rm -f http-server-bad-headers$(EXEEXT) + $(LINK) $(http_server_bad_headers_OBJECTS) $(http_server_bad_headers_LDADD) $(LIBS) +http-server-charset$(EXEEXT): $(http_server_charset_OBJECTS) $(http_server_charset_DEPENDENCIES) + @rm -f http-server-charset$(EXEEXT) + $(LINK) $(http_server_charset_OBJECTS) $(http_server_charset_LDADD) $(LIBS) +http-server-chunked$(EXEEXT): $(http_server_chunked_OBJECTS) $(http_server_chunked_DEPENDENCIES) + @rm -f http-server-chunked$(EXEEXT) + $(LINK) $(http_server_chunked_OBJECTS) $(http_server_chunked_LDADD) $(LIBS) +http-server-close-immediately$(EXEEXT): $(http_server_close_immediately_OBJECTS) $(http_server_close_immediately_DEPENDENCIES) + @rm -f http-server-close-immediately$(EXEEXT) + $(LINK) $(http_server_close_immediately_OBJECTS) $(http_server_close_immediately_LDADD) $(LIBS) +json$(EXEEXT): $(json_OBJECTS) $(json_DEPENDENCIES) + @rm -f json$(EXEEXT) + $(CXXLINK) $(json_OBJECTS) $(json_LDADD) $(LIBS) +mkdirs$(EXEEXT): $(mkdirs_OBJECTS) $(mkdirs_DEPENDENCIES) + @rm -f mkdirs$(EXEEXT) + $(LINK) $(mkdirs_OBJECTS) $(mkdirs_LDADD) $(LIBS) +recursive-dir-list$(EXEEXT): $(recursive_dir_list_OBJECTS) $(recursive_dir_list_DEPENDENCIES) + @rm -f recursive-dir-list$(EXEEXT) + $(LINK) $(recursive_dir_list_OBJECTS) $(recursive_dir_list_LDADD) $(LIBS) +streams$(EXEEXT): $(streams_OBJECTS) $(streams_DEPENDENCIES) + @rm -f streams$(EXEEXT) + $(LINK) $(streams_OBJECTS) $(streams_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asprintf.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/encoding.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/encodings.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gethostbyname.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/highlight.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http-client-bad-body.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http-client-bad-url.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http-client-close-after-request.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http-host.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http-server-bad-body.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http-server-bad-headers.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http-server-charset.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http-server-chunked.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http-server-close-immediately.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http-url.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/instrument-js.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/json.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mkdirs.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/recursive-dir-list.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resource-manager.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stream.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/streams.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/util.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` + +util.o: ../util.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT util.o -MD -MP -MF $(DEPDIR)/util.Tpo -c -o util.o `test -f '../util.c' || echo '$(srcdir)/'`../util.c +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/util.Tpo $(DEPDIR)/util.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../util.c' object='util.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o util.o `test -f '../util.c' || echo '$(srcdir)/'`../util.c + +util.obj: ../util.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT util.obj -MD -MP -MF $(DEPDIR)/util.Tpo -c -o util.obj `if test -f '../util.c'; then $(CYGPATH_W) '../util.c'; else $(CYGPATH_W) '$(srcdir)/../util.c'; fi` +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/util.Tpo $(DEPDIR)/util.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../util.c' object='util.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o util.obj `if test -f '../util.c'; then $(CYGPATH_W) '../util.c'; else $(CYGPATH_W) '$(srcdir)/../util.c'; fi` + +encoding.o: ../encoding.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT encoding.o -MD -MP -MF $(DEPDIR)/encoding.Tpo -c -o encoding.o `test -f '../encoding.c' || echo '$(srcdir)/'`../encoding.c +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/encoding.Tpo $(DEPDIR)/encoding.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../encoding.c' object='encoding.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o encoding.o `test -f '../encoding.c' || echo '$(srcdir)/'`../encoding.c + +encoding.obj: ../encoding.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT encoding.obj -MD -MP -MF $(DEPDIR)/encoding.Tpo -c -o encoding.obj `if test -f '../encoding.c'; then $(CYGPATH_W) '../encoding.c'; else $(CYGPATH_W) '$(srcdir)/../encoding.c'; fi` +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/encoding.Tpo $(DEPDIR)/encoding.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../encoding.c' object='encoding.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o encoding.obj `if test -f '../encoding.c'; then $(CYGPATH_W) '../encoding.c'; else $(CYGPATH_W) '$(srcdir)/../encoding.c'; fi` + +http-host.o: ../http-host.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT http-host.o -MD -MP -MF $(DEPDIR)/http-host.Tpo -c -o http-host.o `test -f '../http-host.c' || echo '$(srcdir)/'`../http-host.c +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/http-host.Tpo $(DEPDIR)/http-host.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../http-host.c' object='http-host.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o http-host.o `test -f '../http-host.c' || echo '$(srcdir)/'`../http-host.c + +http-host.obj: ../http-host.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT http-host.obj -MD -MP -MF $(DEPDIR)/http-host.Tpo -c -o http-host.obj `if test -f '../http-host.c'; then $(CYGPATH_W) '../http-host.c'; else $(CYGPATH_W) '$(srcdir)/../http-host.c'; fi` +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/http-host.Tpo $(DEPDIR)/http-host.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../http-host.c' object='http-host.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o http-host.obj `if test -f '../http-host.c'; then $(CYGPATH_W) '../http-host.c'; else $(CYGPATH_W) '$(srcdir)/../http-host.c'; fi` + +http-url.o: ../http-url.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT http-url.o -MD -MP -MF $(DEPDIR)/http-url.Tpo -c -o http-url.o `test -f '../http-url.c' || echo '$(srcdir)/'`../http-url.c +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/http-url.Tpo $(DEPDIR)/http-url.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../http-url.c' object='http-url.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o http-url.o `test -f '../http-url.c' || echo '$(srcdir)/'`../http-url.c + +http-url.obj: ../http-url.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT http-url.obj -MD -MP -MF $(DEPDIR)/http-url.Tpo -c -o http-url.obj `if test -f '../http-url.c'; then $(CYGPATH_W) '../http-url.c'; else $(CYGPATH_W) '$(srcdir)/../http-url.c'; fi` +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/http-url.Tpo $(DEPDIR)/http-url.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../http-url.c' object='http-url.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o http-url.obj `if test -f '../http-url.c'; then $(CYGPATH_W) '../http-url.c'; else $(CYGPATH_W) '$(srcdir)/../http-url.c'; fi` + +stream.o: ../stream.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT stream.o -MD -MP -MF $(DEPDIR)/stream.Tpo -c -o stream.o `test -f '../stream.c' || echo '$(srcdir)/'`../stream.c +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/stream.Tpo $(DEPDIR)/stream.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../stream.c' object='stream.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o stream.o `test -f '../stream.c' || echo '$(srcdir)/'`../stream.c + +stream.obj: ../stream.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT stream.obj -MD -MP -MF $(DEPDIR)/stream.Tpo -c -o stream.obj `if test -f '../stream.c'; then $(CYGPATH_W) '../stream.c'; else $(CYGPATH_W) '$(srcdir)/../stream.c'; fi` +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/stream.Tpo $(DEPDIR)/stream.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../stream.c' object='stream.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o stream.obj `if test -f '../stream.c'; then $(CYGPATH_W) '../stream.c'; else $(CYGPATH_W) '$(srcdir)/../stream.c'; fi` + +highlight.o: ../highlight.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT highlight.o -MD -MP -MF $(DEPDIR)/highlight.Tpo -c -o highlight.o `test -f '../highlight.c' || echo '$(srcdir)/'`../highlight.c +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/highlight.Tpo $(DEPDIR)/highlight.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../highlight.c' object='highlight.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o highlight.o `test -f '../highlight.c' || echo '$(srcdir)/'`../highlight.c + +highlight.obj: ../highlight.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT highlight.obj -MD -MP -MF $(DEPDIR)/highlight.Tpo -c -o highlight.obj `if test -f '../highlight.c'; then $(CYGPATH_W) '../highlight.c'; else $(CYGPATH_W) '$(srcdir)/../highlight.c'; fi` +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/highlight.Tpo $(DEPDIR)/highlight.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../highlight.c' object='highlight.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o highlight.obj `if test -f '../highlight.c'; then $(CYGPATH_W) '../highlight.c'; else $(CYGPATH_W) '$(srcdir)/../highlight.c'; fi` + +resource-manager.o: ../resource-manager.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resource-manager.o -MD -MP -MF $(DEPDIR)/resource-manager.Tpo -c -o resource-manager.o `test -f '../resource-manager.c' || echo '$(srcdir)/'`../resource-manager.c +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/resource-manager.Tpo $(DEPDIR)/resource-manager.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../resource-manager.c' object='resource-manager.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resource-manager.o `test -f '../resource-manager.c' || echo '$(srcdir)/'`../resource-manager.c + +resource-manager.obj: ../resource-manager.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resource-manager.obj -MD -MP -MF $(DEPDIR)/resource-manager.Tpo -c -o resource-manager.obj `if test -f '../resource-manager.c'; then $(CYGPATH_W) '../resource-manager.c'; else $(CYGPATH_W) '$(srcdir)/../resource-manager.c'; fi` +@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/resource-manager.Tpo $(DEPDIR)/resource-manager.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../resource-manager.c' object='resource-manager.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resource-manager.obj `if test -f '../resource-manager.c'; then $(CYGPATH_W) '../resource-manager.c'; else $(CYGPATH_W) '$(srcdir)/../resource-manager.c'; fi` + +.cpp.o: +@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< + +.cpp.obj: +@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +instrument-js.o: ../instrument-js.cpp +@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT instrument-js.o -MD -MP -MF $(DEPDIR)/instrument-js.Tpo -c -o instrument-js.o `test -f '../instrument-js.cpp' || echo '$(srcdir)/'`../instrument-js.cpp +@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/instrument-js.Tpo $(DEPDIR)/instrument-js.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='../instrument-js.cpp' object='instrument-js.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o instrument-js.o `test -f '../instrument-js.cpp' || echo '$(srcdir)/'`../instrument-js.cpp + +instrument-js.obj: ../instrument-js.cpp +@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT instrument-js.obj -MD -MP -MF $(DEPDIR)/instrument-js.Tpo -c -o instrument-js.obj `if test -f '../instrument-js.cpp'; then $(CYGPATH_W) '../instrument-js.cpp'; else $(CYGPATH_W) '$(srcdir)/../instrument-js.cpp'; fi` +@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/instrument-js.Tpo $(DEPDIR)/instrument-js.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='../instrument-js.cpp' object='instrument-js.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o instrument-js.obj `if test -f '../instrument-js.cpp'; then $(CYGPATH_W) '../instrument-js.cpp'; else $(CYGPATH_W) '$(srcdir)/../instrument-js.cpp'; fi` + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; ws='[ ]'; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *$$ws$$tst$$ws*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + echo "XPASS: $$tst"; \ + ;; \ + *) \ + echo "PASS: $$tst"; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *$$ws$$tst$$ws*) \ + xfail=`expr $$xfail + 1`; \ + echo "XFAIL: $$tst"; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + echo "FAIL: $$tst"; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + echo "SKIP: $$tst"; \ + fi; \ + done; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="All $$all tests passed"; \ + else \ + banner="All $$all tests behaved as expected ($$xfail expected failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all tests failed"; \ + else \ + banner="$$failed of $$all tests did not behave as expected ($$xpass unexpected passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + skipped="($$skip tests were not run)"; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + echo "$$dashes"; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes"; \ + test "$$failed" -eq 0; \ + else :; fi + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS +check: check-am +all-am: Makefile $(PROGRAMS) +installdirs: +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-noinstPROGRAMS mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-exec-am: + +install-html: install-html-am + +install-info: install-info-am + +install-man: + +install-pdf: install-pdf-am + +install-ps: install-ps-am + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ + clean-generic clean-noinstPROGRAMS ctags distclean \ + distclean-compile distclean-generic distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ + uninstall-am + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/asprintf.c b/tools/node_modules/expresso/deps/jscoverage/tests/asprintf.c new file mode 100644 index 0000000..7f8246b --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/asprintf.c @@ -0,0 +1,42 @@ +/*
+ asprintf.c - test `asprintf' function
+ Copyright (C) 2008 siliconforks.com
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+*/
+
+#include <assert.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "util.h"
+
+int main(void) {
+ int result;
+ char * s;
+
+ result = asprintf(&s, "%s %d %c", "abc", 123, 'x');
+ assert(result == 9);
+ assert(strcmp("abc 123 x", s) == 0);
+ free(s);
+
+ char * long_string = "abcdefghijklmnopqrstuvwxyz";
+ result = asprintf(&s, "%s %s %s %s", long_string, long_string, long_string, long_string);
+ assert(result == 107);
+ assert(strcmp("abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz", s) == 0);
+ free(s);
+
+ exit(EXIT_SUCCESS);
+}
diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/asprintf.sh b/tools/node_modules/expresso/deps/jscoverage/tests/asprintf.sh new file mode 100755 index 0000000..c7843e4 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/asprintf.sh @@ -0,0 +1,19 @@ +#!/bin/sh +# asprintf.sh - test `asprintf' function +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +$VALGRIND ./asprintf diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/charset.sh b/tools/node_modules/expresso/deps/jscoverage/tests/charset.sh new file mode 100755 index 0000000..9fb07eb --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/charset.sh @@ -0,0 +1,110 @@ +#!/bin/sh +# charset.sh - test jscoverage-server with different charset values +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${proxy_server_port}/jscoverage-shutdown" > /dev/null + wait $proxy_server_pid +} + +cleanup() { + shutdown + kill -9 $origin_server_pid +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +if jscoverage-server --version | grep -q 'iconv\|MultiByteToWideChar' +then + character_encoding_support=yes +else + character_encoding_support=no +fi + +$VALGRIND jscoverage-server --proxy --no-highlight > OUT 2> ERR & +proxy_server_pid=$! +proxy_server_port=8080 + +./http-server-charset & +origin_server_pid=$! + +sleep $delay + +case "$character_encoding_support" in + yes) + cat ../report.js > EXPECTED + cat javascript-utf-8.expected/javascript-utf-8.js | sed 's/javascript-utf-8.js/http:\/\/127.0.0.1:8000\/utf-8.js/g' >> EXPECTED + curl -s -x 127.0.0.1:8080 http://127.0.0.1:8000/utf-8.js > ACTUAL + diff EXPECTED ACTUAL + ;; + *) + echo 500 > EXPECTED + ! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://127.0.0.1:8000/utf-8.js 2> /dev/null > ACTUAL + diff EXPECTED ACTUAL + ;; +esac + +shutdown + +$VALGRIND jscoverage-server --proxy > OUT 2> ERR & +proxy_server_pid=$! +proxy_server_port=8080 + +sleep $delay + +case "$character_encoding_support" in + yes) + cat ../report.js > EXPECTED + cat javascript.expected/javascript-iso-8859-1.js | sed 's/javascript-iso-8859-1.js/http:\/\/127.0.0.1:8000\/iso-8859-1.js/g' >> EXPECTED + curl -s -x 127.0.0.1:8080 http://127.0.0.1:8000/iso-8859-1.js > ACTUAL + diff EXPECTED ACTUAL + ;; + *) + echo 500 > EXPECTED + ! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://127.0.0.1:8000/iso-8859-1.js 2> /dev/null > ACTUAL + diff EXPECTED ACTUAL + ;; +esac + +# bogus charset +echo 500 > EXPECTED +! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://127.0.0.1:8000/bogus.js 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL + +# malformed encoding +case "$character_encoding_support" in + yes) + status=502 + ;; + *) + status=500 + ;; +esac +echo $status > EXPECTED +! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://127.0.0.1:8000/malformed.js 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/chunked.sh b/tools/node_modules/expresso/deps/jscoverage/tests/chunked.sh new file mode 100755 index 0000000..2986552 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/chunked.sh @@ -0,0 +1,74 @@ +#!/bin/sh +# chunked.sh - test jscoverage-server with Transfer-Encoding: chunked +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${proxy_server_port}/jscoverage-shutdown" > /dev/null + wait $proxy_server_pid +} + +cleanup() { + shutdown + kill -9 $origin_server_pid +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +$VALGRIND jscoverage-server --proxy > OUT 2> ERR & +proxy_server_pid=$! +proxy_server_port=8080 + +./http-server-chunked & +origin_server_pid=$! + +sleep $delay + +echo 'hello world' > EXPECTED +curl -s -x 127.0.0.1:8080 http://127.0.0.1:8000/lower > ACTUAL +diff EXPECTED ACTUAL + +echo 'HELLO WORLD' > EXPECTED +curl -s -x 127.0.0.1:8080 http://127.0.0.1:8000/upper > ACTUAL +diff EXPECTED ACTUAL + +# curl doesn't understand trailers ??? +# echo 'hello world' > EXPECTED +# curl -s -x 127.0.0.1:8080 http://127.0.0.1:8000/trailer > ACTUAL +# diff EXPECTED ACTUAL + +echo 200 > EXPECTED +! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://127.0.0.1:8000/overflow 2> /dev/null > ACTUAL +diff --strip-trailing-cr EXPECTED ACTUAL + +echo 200 > EXPECTED +! curl -f -w '%{http_code}\n' -o /dev/null -x 127.0.0.1:8080 http://127.0.0.1:8000/javascript 2> /dev/null > ACTUAL +diff --strip-trailing-cr EXPECTED ACTUAL + +echo 200 > EXPECTED +! curl -f -w '%{http_code}\n' -o /dev/null -x 127.0.0.1:8080 http://127.0.0.1:8000/multiple 2> /dev/null > ACTUAL +diff --strip-trailing-cr EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/common.sh b/tools/node_modules/expresso/deps/jscoverage/tests/common.sh new file mode 100644 index 0000000..e55b342 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/common.sh @@ -0,0 +1,7 @@ +export PATH=.:..:../js/obj:$PATH + +json_cmp() { + echo 'EXPECTED = ' | cat - $1 > EXPECTED + echo 'ACTUAL = ' | cat - $2 > ACTUAL + js -f EXPECTED -f ACTUAL -f json-cmp.js +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/destination-is-existing-directory.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/destination-is-existing-directory.expected.err new file mode 100644 index 0000000..8a59e6b --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/destination-is-existing-directory.expected.err @@ -0,0 +1,2 @@ +jscoverage: refusing to overwrite directory: bar +Try `jscoverage --help' for more information. diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/destination-is-file.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/destination-is-file.expected.err new file mode 100644 index 0000000..bb3778d --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/destination-is-file.expected.err @@ -0,0 +1,2 @@ +jscoverage: not a directory: bar +Try `jscoverage --help' for more information. diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/encoding-requires-argument.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/encoding-requires-argument.expected.err new file mode 100644 index 0000000..4b3fd0c --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/encoding-requires-argument.expected.err @@ -0,0 +1,2 @@ +jscoverage: --encoding: option requires an argument +Try `jscoverage --help' for more information. diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/encodings.c b/tools/node_modules/expresso/deps/jscoverage/tests/encodings.c new file mode 100644 index 0000000..26f8707 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/encodings.c @@ -0,0 +1,223 @@ +/* + encodings.c - test handling different character encodings + Copyright (C) 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <config.h> + +#include <assert.h> +#include <string.h> + +#include "encoding.h" +#include "stream.h" + +int main(void) { + jschar * characters; + size_t num_characters; + int result; + + /* e, e grave, e acute, e circumflex */ + uint8_t utf8[] = { + 'e', + 0xc3, + 0xa8, + 0xc3, + 0xa9, + 0xc3, + 0xaa, + }; + + result = jscoverage_bytes_to_characters("UTF-8", utf8, 7, &characters, &num_characters); + +#if HAVE_ICONV || HAVE_MULTIBYTETOWIDECHAR + assert(result == 0); + assert(num_characters == 4); + assert(characters[0] == 'e'); + assert(characters[1] == 0xe8); + assert(characters[2] == 0xe9); + assert(characters[3] == 0xea); + + free(characters); +#else + assert(result == JSCOVERAGE_ERROR_ENCODING_NOT_SUPPORTED); +#endif + + /* + BOM is 0xfeff + = 1111 1110 1111 1111 + UTF: 1110---- 10------ 10------ + = 11101111 10111011 10111111 + = EF BB BF + */ + uint8_t utf8_with_bom[] = { + 0xef, + 0xbb, + 0xbf, + 'e', + 0xc3, + 0xa8, + 0xc3, + 0xa9, + 0xc3, + 0xaa, + }; + + result = jscoverage_bytes_to_characters("UTF-8", utf8_with_bom, 10, &characters, &num_characters); + +#if HAVE_ICONV || HAVE_MULTIBYTETOWIDECHAR + assert(result == 0); + assert(num_characters == 4); + assert(characters[0] == 'e'); + assert(characters[1] == 0xe8); + assert(characters[2] == 0xe9); + assert(characters[3] == 0xea); + + free(characters); +#else + assert(result == JSCOVERAGE_ERROR_ENCODING_NOT_SUPPORTED); +#endif + + uint8_t utf16be[] = { + 0, 'e', + 0, 0xe8, + 0, 0xe9, + 0, 0xea, + }; + + result = jscoverage_bytes_to_characters("UTF-16BE", utf16be, 8, &characters, &num_characters); + +#ifdef HAVE_ICONV + assert(result == 0); + assert(num_characters == 4); + assert(characters[0] == 'e'); + assert(characters[1] == 0xe8); + assert(characters[2] == 0xe9); + assert(characters[3] == 0xea); + + free(characters); +#else + assert(result == JSCOVERAGE_ERROR_ENCODING_NOT_SUPPORTED); +#endif + + uint8_t utf16be_with_bom[] = { + 0xfe, 0xff, + 0, 'e', + 0, 0xe8, + 0, 0xe9, + 0, 0xea, + }; + + result = jscoverage_bytes_to_characters("UTF-16BE", utf16be_with_bom, 10, &characters, &num_characters); + +#ifdef HAVE_ICONV + assert(result == 0); + assert(num_characters == 4); + assert(characters[0] == 'e'); + assert(characters[1] == 0xe8); + assert(characters[2] == 0xe9); + assert(characters[3] == 0xea); + + free(characters); +#else + assert(result == JSCOVERAGE_ERROR_ENCODING_NOT_SUPPORTED); +#endif + + uint8_t utf16le[] = { + 'e', 0, + 0xe8, 0, + 0xe9, 0, + 0xea, 0, + }; + + result = jscoverage_bytes_to_characters("UTF-16LE", utf16le, 8, &characters, &num_characters); + +#ifdef HAVE_ICONV + assert(result == 0); + assert(num_characters == 4); + assert(characters[0] == 'e'); + assert(characters[1] == 0xe8); + assert(characters[2] == 0xe9); + assert(characters[3] == 0xea); + + free(characters); +#else + assert(result == JSCOVERAGE_ERROR_ENCODING_NOT_SUPPORTED); +#endif + + uint8_t utf16le_with_bom[] = { + 0xff, 0xfe, + 'e', 0, + 0xe8, 0, + 0xe9, 0, + 0xea, 0, + }; + + result = jscoverage_bytes_to_characters("UTF-16LE", utf16le_with_bom, 10, &characters, &num_characters); + +#ifdef HAVE_ICONV + assert(result == 0); + assert(num_characters == 4); + assert(characters[0] == 'e'); + assert(characters[1] == 0xe8); + assert(characters[2] == 0xe9); + assert(characters[3] == 0xea); + + free(characters); +#else + assert(result == JSCOVERAGE_ERROR_ENCODING_NOT_SUPPORTED); +#endif + + /* bogus encoding */ + uint8_t bogus[] = {'b', 'o', 'g', 'u', 's'}; + + result = jscoverage_bytes_to_characters("BOGUS", bogus, 5, &characters, &num_characters); + + assert(result == JSCOVERAGE_ERROR_ENCODING_NOT_SUPPORTED); + +#ifdef HAVE_ICONV + /* malformed US-ASCII */ + /* NOTE: Windows simply discards the high bit */ + uint8_t malformed_ascii[] = { + 'e', + 0xe8, + 0xe9, + 0xea, + }; + + result = jscoverage_bytes_to_characters("US-ASCII", malformed_ascii, 4, &characters, &num_characters); + + assert(result == JSCOVERAGE_ERROR_INVALID_BYTE_SEQUENCE); +#endif + + /* malformed UTF-8 */ + uint8_t malformed_utf8[] = { + 'e', + 0xe8, + 0xe9, + 0xea, + }; + + result = jscoverage_bytes_to_characters("UTF-8", malformed_utf8, 4, &characters, &num_characters); + +#if HAVE_ICONV || HAVE_MULTIBYTETOWIDECHAR + assert(result == JSCOVERAGE_ERROR_INVALID_BYTE_SEQUENCE); +#else + assert(result == JSCOVERAGE_ERROR_ENCODING_NOT_SUPPORTED); +#endif + + return 0; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/encodings.sh b/tools/node_modules/expresso/deps/jscoverage/tests/encodings.sh new file mode 100755 index 0000000..5db0f13 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/encodings.sh @@ -0,0 +1,19 @@ +#!/bin/sh +# encodings.sh - test handling different character encodings +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +$VALGRIND ./encodings diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/exclude-requires-argument.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/exclude-requires-argument.expected.err new file mode 100644 index 0000000..6feb597 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/exclude-requires-argument.expected.err @@ -0,0 +1,2 @@ +jscoverage: --exclude: option requires an argument +Try `jscoverage --help' for more information. diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/fatal.sh b/tools/node_modules/expresso/deps/jscoverage/tests/fatal.sh new file mode 100755 index 0000000..90b8d94 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/fatal.sh @@ -0,0 +1,110 @@ +#!/bin/sh +# fatal.sh - test various fatal errors +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +trap 'rm -fr DIR DIR2 OUT ERR' 1 2 3 15 + +export PATH=.:..:$PATH + +rm -fr DIR DIR2 + +$VALGRIND jscoverage javascript-xml DIR > OUT 2> ERR && exit 1 +test ! -s OUT +test -s ERR +diff --strip-trailing-cr javascript-xml.expected.err ERR + +rm -fr DIR + +$VALGRIND jscoverage javascript-invalid DIR > OUT 2> ERR && exit 1 +test ! -s OUT +test -s ERR +diff --strip-trailing-cr javascript-invalid.expected.err ERR + +rm -fr DIR + +$VALGRIND jscoverage javascript-setter DIR > OUT 2> ERR && exit 1 +test ! -s OUT +test -s ERR +diff --strip-trailing-cr javascript-setter.expected.err ERR + +rm -fr DIR + +$VALGRIND jscoverage 1 2 3 > OUT 2> ERR && exit 1 +test ! -s OUT +test -s ERR +diff --strip-trailing-cr too-many-arguments.expected.err ERR + +rm -fr DIR + +$VALGRIND jscoverage --no-instrument > OUT 2> ERR && exit 1 +test ! -s OUT +test -s ERR +diff --strip-trailing-cr no-instrument-requires-argument.expected.err ERR + +$VALGRIND jscoverage --exclude > OUT 2> ERR && exit 1 +test ! -s OUT +test -s ERR +diff --strip-trailing-cr exclude-requires-argument.expected.err ERR + +$VALGRIND jscoverage --encoding > OUT 2> ERR && exit 1 +test ! -s OUT +test -s ERR +diff --strip-trailing-cr encoding-requires-argument.expected.err ERR + +# first arg does not exist +rm -f foo +$VALGRIND jscoverage foo bar > OUT 2> ERR && exit 1 +test ! -s OUT +test -s ERR +# diff --strip-trailing-cr source-does-not-exist.expected.err ERR + +# first arg is file +touch foo +$VALGRIND jscoverage foo bar > OUT 2> ERR && exit 1 +test ! -s OUT +test -s ERR +# diff --strip-trailing-cr source-is-file.expected.err ERR +rm foo + +# second arg is file +rm -fr bar +touch bar +$VALGRIND jscoverage javascript bar > OUT 2> ERR && exit 1 +test ! -s OUT +test -s ERR +# diff --strip-trailing-cr destination-is-file.expected.err ERR +rm bar + +# second arg is directory, but not from previous run +rm -fr bar +mkdir bar +touch bar/foo +$VALGRIND jscoverage javascript bar > OUT 2> ERR && exit 1 +test ! -s OUT +test -s ERR +# diff --strip-trailing-cr destination-is-existing-directory.expected.err ERR +rm -fr bar + +# huge JavaScript file +mkdir -p DIR +perl -e 'for (1 .. 65536) {print "x = $_\n";}' > DIR/big.js +$VALGRIND jscoverage DIR DIR2 > OUT 2> ERR && exit 1 +echo 'jscoverage: file big.js contains more than 65,535 lines' | diff --strip-trailing-cr - ERR + +rm -fr DIR DIR2 OUT ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/gethostbyname.c b/tools/node_modules/expresso/deps/jscoverage/tests/gethostbyname.c new file mode 100644 index 0000000..ef5d7b3 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/gethostbyname.c @@ -0,0 +1,53 @@ +/* + gethostbyname.c - test host lookup + Copyright (C) 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <config.h> + +#include <assert.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +#ifdef HAVE_ARPA_INET_H +#include <arpa/inet.h> +#endif + +#include "http-server.h" + +int main(int argc, char ** argv) { +#ifdef __MINGW32__ + WSADATA data; + if (WSAStartup(MAKEWORD(1, 1), &data) != 0) { + return 1; + } +#endif + + if (argc < 2) { + exit(EXIT_FAILURE); + } + + struct in_addr a; + if (xgethostbyname(argv[1], &a) != 0) { + exit(EXIT_FAILURE); + } + char * result = inet_ntoa(a); + printf("%s\n", result); + + return 0; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/gethostbyname.sh b/tools/node_modules/expresso/deps/jscoverage/tests/gethostbyname.sh new file mode 100755 index 0000000..eae74e3 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/gethostbyname.sh @@ -0,0 +1,25 @@ +#!/bin/sh +# gethostbyname.sh - test host lookup +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +echo 127.0.0.1 > EXPECTED +./gethostbyname localhost > ACTUAL +diff --strip-trailing-cr EXPECTED ACTUAL + +! ./gethostbyname foo diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/help.sh b/tools/node_modules/expresso/deps/jscoverage/tests/help.sh new file mode 100755 index 0000000..5aaa31a --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/help.sh @@ -0,0 +1,35 @@ +#!/bin/sh +# help.sh - test `--help' option +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +trap 'rm -fr OUT ERR' 1 2 3 15 + +export PATH=.:..:$PATH + +$VALGRIND jscoverage --help > OUT 2> ERR +test -s OUT +test ! -s ERR +diff --strip-trailing-cr ../jscoverage-help.txt OUT + +$VALGRIND jscoverage -h > OUT 2> ERR +test -s OUT +test ! -s ERR +diff --strip-trailing-cr ../jscoverage-help.txt OUT + +rm -fr OUT ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/http-client-bad-body.c b/tools/node_modules/expresso/deps/jscoverage/tests/http-client-bad-body.c new file mode 100644 index 0000000..9985c62 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/http-client-bad-body.c @@ -0,0 +1,98 @@ +/* + http-client-bad-body.c - HTTP client that outputs a bad body + Copyright (C) 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <config.h> + +#include <assert.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +#ifdef HAVE_ARPA_INET_H +#include <arpa/inet.h> +#endif +#ifdef HAVE_NETDB_H +#include <netdb.h> +#endif +#ifdef HAVE_NETINET_IN_H +#include <netinet/in.h> +#endif +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> +#endif +#include <unistd.h> + +#include "http-server.h" +#include "util.h" + +int main(int argc, char ** argv) { +#ifdef __MINGW32__ + WSADATA data; + if (WSAStartup(MAKEWORD(1, 1), &data) != 0) { + return 1; + } +#endif + + int result; + + if (argc < 3) { + fprintf(stderr, "Usage: %s PORT URL\n", argv[0]); + exit(EXIT_FAILURE); + } + + uint16_t connect_port = atoi(argv[1]); + char * url = argv[2]; + char * host; + uint16_t port; + char * abs_path; + char * query; + result = URL_parse(url, &host, &port, &abs_path, &query); + assert(result == 0); + + struct sockaddr_in a; + a.sin_family = AF_INET; + a.sin_port = htons(connect_port); + a.sin_addr.s_addr = htonl(INADDR_LOOPBACK); + + SOCKET s = socket(PF_INET, SOCK_STREAM, 0); + assert(s != INVALID_SOCKET); + + result = connect(s, (struct sockaddr *) &a, sizeof(a)); + assert(result == 0); + + /* send request */ + char * message; + xasprintf(&message, "POST %s HTTP/1.1\r\nConnection: close\r\nTransfer-Encoding: chunked\r\n\r\nHello\n", url); + size_t message_length = strlen(message); + ssize_t bytes_sent = send(s, message, message_length, 0); + assert(bytes_sent == (ssize_t) message_length); + + /* read response */ + for (;;) { + uint8_t buffer[8192]; + ssize_t bytes_read = recv(s, buffer, 8192, 0); + assert(bytes_read >= 0); + if (bytes_read == 0) { + break; + } + } + + closesocket(s); + return 0; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/http-client-bad-url.c b/tools/node_modules/expresso/deps/jscoverage/tests/http-client-bad-url.c new file mode 100644 index 0000000..fdb917b --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/http-client-bad-url.c @@ -0,0 +1,77 @@ +/* + http-client-bad-url.c - HTTP client that sends bad URLs + Copyright (C) 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <config.h> + +#include <assert.h> +#include <stdio.h> +#include <string.h> + +#include "http-server.h" +#include "util.h" + +int main(int argc, char ** argv) { +#ifdef __MINGW32__ + WSADATA data; + if (WSAStartup(MAKEWORD(1, 1), &data) != 0) { + return 1; + } +#endif + + int result; + + if (argc < 3) { + fprintf(stderr, "Usage: %s PORT URL\n", argv[0]); + exit(EXIT_FAILURE); + } + + uint16_t connect_port = atoi(argv[1]); + char * url = argv[2]; + + struct sockaddr_in a; + a.sin_family = AF_INET; + a.sin_port = htons(connect_port); + a.sin_addr.s_addr = htonl(INADDR_LOOPBACK); + + SOCKET s = socket(PF_INET, SOCK_STREAM, 0); + assert(s != INVALID_SOCKET); + + result = connect(s, (struct sockaddr *) &a, sizeof(a)); + assert(result == 0); + + /* send request */ + char * message; + xasprintf(&message, "GET %s HTTP/1.1\r\nConnection: close\r\n\r\n", url); + size_t message_length = strlen(message); + ssize_t bytes_sent = send(s, message, message_length, 0); + assert(bytes_sent == (ssize_t) message_length); + + /* read response */ + for (;;) { + uint8_t buffer[8192]; + ssize_t bytes_read = recv(s, buffer, 8192, 0); + assert(bytes_read >= 0); + if (bytes_read == 0) { + break; + } + } + + closesocket(s); + return 0; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/http-client-close-after-request.c b/tools/node_modules/expresso/deps/jscoverage/tests/http-client-close-after-request.c new file mode 100644 index 0000000..e67431a --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/http-client-close-after-request.c @@ -0,0 +1,57 @@ +/* + http-client-close-after-request.c - HTTP client that closes connection after sending request + Copyright (C) 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <config.h> + +#include <assert.h> +#include <stdio.h> +#include <string.h> + +#include "http-server.h" + +int main(void) { +#ifdef __MINGW32__ + WSADATA data; + if (WSAStartup(MAKEWORD(1, 1), &data) != 0) { + return 1; + } +#endif + + int result; + + struct sockaddr_in a; + a.sin_family = AF_INET; + a.sin_port = htons(8000); + a.sin_addr.s_addr = htonl(INADDR_LOOPBACK); + + SOCKET s = socket(PF_INET, SOCK_STREAM, 0); + assert(s != INVALID_SOCKET); + + result = connect(s, (struct sockaddr *) &a, sizeof(a)); + assert(result == 0); + + /* send request */ + char * message = "GET http://127.0.0.1:8000/ HTTP/1.1\r\nConnection: close\r\nHost: 127.0.0.1:8000\r\n\r\n"; + size_t message_length = strlen(message); + ssize_t bytes_sent = send(s, message, message_length, 0); + assert(bytes_sent == (ssize_t) message_length); + + closesocket(s); + return 0; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/http-server-bad-body.c b/tools/node_modules/expresso/deps/jscoverage/tests/http-server-bad-body.c new file mode 100644 index 0000000..f8c362d --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/http-server-bad-body.c @@ -0,0 +1,97 @@ +/* + http-server-bad-body.c - HTTP server that outputs a bad body + Copyright (C) 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <config.h> + +#include <assert.h> +#include <string.h> + +#include "http-server.h" + +int main(void) { +#ifdef __MINGW32__ + WSADATA data; + if (WSAStartup(MAKEWORD(1, 1), &data) != 0) { + return 1; + } +#endif + + SOCKET s = socket(PF_INET, SOCK_STREAM, 0); + assert(s != INVALID_SOCKET); + + int optval = 1; + setsockopt(s, SOL_SOCKET, SO_REUSEADDR, (const char *) &optval, sizeof(optval)); + + struct sockaddr_in a; + a.sin_family = AF_INET; + a.sin_port = htons(8000); + a.sin_addr.s_addr = htonl(INADDR_LOOPBACK); + int result = bind(s, (struct sockaddr *) &a, sizeof(a)); + assert(result == 0); + + result = listen(s, 5); + assert(result == 0); + + for (;;) { + struct sockaddr_in client_address; + size_t size = sizeof(client_address); + int client_socket = accept(s, (struct sockaddr *) &client_address, &size); + assert(client_socket > 0); + + /* read request */ + int state = 0; + while (state != 2) { + uint8_t buffer[8192]; + ssize_t bytes_read = recv(client_socket, buffer, 8192, 0); + assert(bytes_read > 0); + for (int i = 0; i < bytes_read && state != 2; i++) { + uint8_t byte = buffer[i]; + switch (state) { + case 0: + if (byte == '\n') { + state = 1; + } + else { + state = 0; + } + break; + case 1: + if (byte == '\n') { + state = 2; + } + else if (byte == '\r') { + state = 1; + } + else { + state = 0; + } + } + } + } + + /* send response */ + char * message = "HTTP/1.1 200 OK\r\nConnection: close\r\nContent-type: text/html\r\nTransfer-Encoding: chunked\r\n\r\nHello\n"; + size_t message_length = strlen(message); + ssize_t bytes_sent = send(client_socket, message, message_length, 0); + assert(bytes_sent == (ssize_t) message_length); + + closesocket(client_socket); + } + return 0; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/http-server-bad-headers.c b/tools/node_modules/expresso/deps/jscoverage/tests/http-server-bad-headers.c new file mode 100644 index 0000000..bbef80f --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/http-server-bad-headers.c @@ -0,0 +1,97 @@ +/* + http-server-bad-headers.c - HTTP server that outputs bad headers + Copyright (C) 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <config.h> + +#include <assert.h> +#include <string.h> + +#include "http-server.h" + +int main(void) { +#ifdef __MINGW32__ + WSADATA data; + if (WSAStartup(MAKEWORD(1, 1), &data) != 0) { + return 1; + } +#endif + + SOCKET s = socket(PF_INET, SOCK_STREAM, 0); + assert(s != INVALID_SOCKET); + + int optval = 1; + setsockopt(s, SOL_SOCKET, SO_REUSEADDR, (const char *) &optval, sizeof(optval)); + + struct sockaddr_in a; + a.sin_family = AF_INET; + a.sin_port = htons(8000); + a.sin_addr.s_addr = htonl(INADDR_LOOPBACK); + int result = bind(s, (struct sockaddr *) &a, sizeof(a)); + assert(result == 0); + + result = listen(s, 5); + assert(result == 0); + + for (;;) { + struct sockaddr_in client_address; + size_t size = sizeof(client_address); + int client_socket = accept(s, (struct sockaddr *) &client_address, &size); + assert(client_socket > 0); + + /* read request */ + int state = 0; + while (state != 2) { + uint8_t buffer[8192]; + ssize_t bytes_read = recv(client_socket, buffer, 8192, 0); + assert(bytes_read > 0); + for (int i = 0; i < bytes_read && state != 2; i++) { + uint8_t byte = buffer[i]; + switch (state) { + case 0: + if (byte == '\n') { + state = 1; + } + else { + state = 0; + } + break; + case 1: + if (byte == '\n') { + state = 2; + } + else if (byte == '\r') { + state = 1; + } + else { + state = 0; + } + } + } + } + + /* send response */ + char * message = "HTTP/1.1 200 OK\r\nHere is some bogosity!\r\nConnection: close\r\nContent-type: text/html\r\n\r\nHello\n"; + size_t message_length = strlen(message); + ssize_t bytes_sent = send(client_socket, message, message_length, 0); + assert(bytes_sent == (ssize_t) message_length); + + closesocket(client_socket); + } + return 0; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/http-server-charset.c b/tools/node_modules/expresso/deps/jscoverage/tests/http-server-charset.c new file mode 100644 index 0000000..7ea7bb8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/http-server-charset.c @@ -0,0 +1,144 @@ +/* + http-server-charset.c - HTTP server that outputs different charset values + Copyright (C) 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <config.h> + +#include <assert.h> +#include <string.h> + +#include "http-server.h" +#include "stream.h" +#include "util.h" + +int main(void) { +#ifdef __MINGW32__ + WSADATA data; + if (WSAStartup(MAKEWORD(1, 1), &data) != 0) { + return 1; + } +#endif + + SOCKET s = socket(PF_INET, SOCK_STREAM, 0); + assert(s != INVALID_SOCKET); + + int optval = 1; + setsockopt(s, SOL_SOCKET, SO_REUSEADDR, (const char *) &optval, sizeof(optval)); + + struct sockaddr_in a; + a.sin_family = AF_INET; + a.sin_port = htons(8000); + a.sin_addr.s_addr = htonl(INADDR_LOOPBACK); + int result = bind(s, (struct sockaddr *) &a, sizeof(a)); + assert(result == 0); + + result = listen(s, 5); + assert(result == 0); + + for (;;) { + struct sockaddr_in client_address; + size_t size = sizeof(client_address); + int client_socket = accept(s, (struct sockaddr *) &client_address, &size); + assert(client_socket > 0); + + /* read request */ + Stream * stream = Stream_new(0); + int state = 0; + while (state != 2) { + uint8_t buffer[8192]; + ssize_t bytes_read = recv(client_socket, buffer, 8192, 0); + assert(bytes_read > 0); + Stream_write(stream, buffer, bytes_read); + for (int i = 0; i < bytes_read && state != 2; i++) { + uint8_t byte = buffer[i]; + switch (state) { + case 0: + if (byte == '\n') { + state = 1; + } + break; + case 1: + if (byte == '\n') { + state = 2; + } + else if (byte == '\r') { + state = 1; + } + else { + state = 0; + } + break; + } + } + } + + char * method; + char * url; + char * request_line = (char *) stream->data; + char * first_space = strchr(request_line, ' '); + assert(first_space != NULL); + char * second_space = strchr(first_space + 1, ' '); + assert(second_space != NULL); + method = xstrndup(request_line, first_space - request_line); + url = xstrndup(first_space + 1, second_space - (first_space + 1)); + + /* send response */ + char * message; + if (strcmp(url, "http://127.0.0.1:8000/utf-8.js") == 0 || strcmp(url, "/utf-8.js") == 0) { + message = "HTTP/1.1 200 OK\r\n" + "Connection: close\r\n" + "Content-type: text/javascript; charset=UTF-8\r\n" + "\r\n" + "var s = 'eèéê';\n" + "var r = /eèéê/;\n"; + } + else if (strcmp(url, "http://127.0.0.1:8000/iso-8859-1.js") == 0 || strcmp(url, "/iso-8859-1.js") == 0) { + message = "HTTP/1.1 200 OK\r\n" + "Connection: close\r\n" + "Content-type: text/javascript; charset=ISO-8859-1\r\n" + "\r\n" + "var s = 'eèéê';\n" + "var r = /eèéê/;\n"; + } + else if (strcmp(url, "http://127.0.0.1:8000/bogus.js") == 0 || strcmp(url, "/bogus.js") == 0) { + message = "HTTP/1.1 200 OK\r\n" + "Connection: close\r\n" + "Content-type: text/javascript; charset=BOGUS\r\n" + "\r\n" + "var s = 'eèéê';\n" + "var r = /eèéê/;\n"; + } + else if (strcmp(url, "http://127.0.0.1:8000/malformed.js") == 0 || strcmp(url, "/malformed.js") == 0) { + message = "HTTP/1.1 200 OK\r\n" + "Connection: close\r\n" + "Content-type: text/javascript; charset=UTF-8\r\n" + "\r\n" + "var s = 'eèéê';\n" + "var r = /eèéê/;\n"; + } + else { + abort(); + } + size_t message_length = strlen(message); + ssize_t bytes_sent = send(client_socket, message, message_length, 0); + assert(bytes_sent == (ssize_t) message_length); + + closesocket(client_socket); + } + return 0; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/http-server-chunked.c b/tools/node_modules/expresso/deps/jscoverage/tests/http-server-chunked.c new file mode 100644 index 0000000..909cb07 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/http-server-chunked.c @@ -0,0 +1,196 @@ +/* + http-server-chunked.c - HTTP server that outputs chunked response + Copyright (C) 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <config.h> + +#include <assert.h> +#include <string.h> + +#include "http-server.h" +#include "stream.h" +#include "util.h" + +int main(void) { +#ifdef __MINGW32__ + WSADATA data; + if (WSAStartup(MAKEWORD(1, 1), &data) != 0) { + return 1; + } +#endif + + SOCKET s = socket(PF_INET, SOCK_STREAM, 0); + assert(s != INVALID_SOCKET); + + int optval = 1; + setsockopt(s, SOL_SOCKET, SO_REUSEADDR, (const char *) &optval, sizeof(optval)); + + struct sockaddr_in a; + a.sin_family = AF_INET; + a.sin_port = htons(8000); + a.sin_addr.s_addr = htonl(INADDR_LOOPBACK); + int result = bind(s, (struct sockaddr *) &a, sizeof(a)); + assert(result == 0); + + result = listen(s, 5); + assert(result == 0); + + for (;;) { + struct sockaddr_in client_address; + size_t size = sizeof(client_address); + int client_socket = accept(s, (struct sockaddr *) &client_address, &size); + assert(client_socket > 0); + + /* read request */ + Stream * stream = Stream_new(0); + int state = 0; + while (state != 2) { + uint8_t buffer[8192]; + ssize_t bytes_read = recv(client_socket, buffer, 8192, 0); + assert(bytes_read > 0); + Stream_write(stream, buffer, bytes_read); + for (int i = 0; i < bytes_read && state != 2; i++) { + uint8_t byte = buffer[i]; + switch (state) { + case 0: + if (byte == '\n') { + state = 1; + } + else { + state = 0; + } + break; + case 1: + if (byte == '\n') { + state = 2; + } + else if (byte == '\r') { + state = 1; + } + else { + state = 0; + } + break; + } + } + } + + char * method; + char * url; + char * request_line = (char *) stream->data; + char * first_space = strchr(request_line, ' '); + assert(first_space != NULL); + char * second_space = strchr(first_space + 1, ' '); + assert(second_space != NULL); + method = xstrndup(request_line, first_space - request_line); + url = xstrndup(first_space + 1, second_space - (first_space + 1)); + + /* send response */ + char * message; + if (strcmp(url, "http://127.0.0.1:8000/lower") == 0 || strcmp(url, "/lower") == 0) { + message = "HTTP/1.1 200 OK\r\n" + "Connection: close\r\n" + "Content-type: text/html\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n" + "b\r\n" + "hello world\r\n" + "1\r\n" + "\n\r\n" + "0\r\n" + "\r\n"; + } + else if (strcmp(url, "http://127.0.0.1:8000/upper") == 0 || strcmp(url, "/upper") == 0) { + message = "HTTP/1.1 200 OK\r\n" + "Connection: close\r\n" + "Content-type: text/html\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n" + "B\r\n" + "HELLO WORLD\r\n" + "1\r\n" + "\n\r\n" + "0\r\n" + "\r\n"; + } + else if (strcmp(url, "http://127.0.0.1:8000/javascript") == 0 || strcmp(url, "/javascript") == 0) { + message = "HTTP/1.1 200 OK\r\n" + "Connection: close\r\n" + "Content-Type: text/javascript\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n" + "B\r\n" + "hello = 10;\r\n" + "1\r\n" + "\n\r\n" + "0\r\n" + "\r\n"; + } + else if (strcmp(url, "http://127.0.0.1:8000/trailer") == 0 || strcmp(url, "/trailer") == 0) { + message = "HTTP/1.1 200 OK\r\n" + "Connection: close\r\n" + "Content-type: text/html\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n" + "b\r\n" + "hello world\r\n" + "1\r\n" + "\n\r\n" + "0\r\n" + "X-Foo: bar\r\n" + "X-Bar: foo\r\n" + "\r\n"; + } + else if (strcmp(url, "http://127.0.0.1:8000/overflow") == 0) { + message = "HTTP/1.1 200 OK\r\n" + "Connection: close\r\n" + "Content-type: text/html\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n" + "100000000\r\n" + "hello world\r\n" + "1\r\n" + "\n\r\n" + "0\r\n" + "\r\n"; + } + else if (strcmp(url, "http://127.0.0.1:8000/multiple") == 0) { + message = "HTTP/1.1 200 OK\r\n" + "Connection: close\r\n" + "Content-type: text/html\r\n" + "Transfer-Encoding: foo; foo = bar, bar; foo = \"bar\"\r\n" + "Transfer-Encoding: foobar; foo = \"\\\"bar\\\"\", chunked\r\n" + "\r\n" + "b\r\n" + "hello world\r\n" + "1\r\n" + "\n\r\n" + "0\r\n" + "\r\n"; + } + else { + abort(); + } + size_t message_length = strlen(message); + ssize_t bytes_sent = send(client_socket, message, message_length, 0); + assert(bytes_sent == (ssize_t) message_length); + + closesocket(client_socket); + } + return 0; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/http-server-close-immediately.c b/tools/node_modules/expresso/deps/jscoverage/tests/http-server-close-immediately.c new file mode 100644 index 0000000..b8c7176 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/http-server-close-immediately.c @@ -0,0 +1,60 @@ +/* + http-server-close-immediately.c - HTTP server that closes connection immediately + Copyright (C) 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <config.h> + +#include <assert.h> +#include <stdio.h> +#include <string.h> + +#include "http-server.h" + +int main(void) { +#ifdef __MINGW32__ + WSADATA data; + if (WSAStartup(MAKEWORD(1, 1), &data) != 0) { + return 1; + } +#endif + + SOCKET s = socket(PF_INET, SOCK_STREAM, 0); + assert(s != INVALID_SOCKET); + + int optval = 1; + setsockopt(s, SOL_SOCKET, SO_REUSEADDR, (const char *) &optval, sizeof(optval)); + + struct sockaddr_in a; + a.sin_family = AF_INET; + a.sin_port = htons(8000); + a.sin_addr.s_addr = htonl(INADDR_LOOPBACK); + int result = bind(s, (struct sockaddr *) &a, sizeof(a)); + assert(result == 0); + + result = listen(s, 5); + assert(result == 0); + + for (;;) { + struct sockaddr_in client_address; + size_t size = sizeof(client_address); + int client_socket = accept(s, (struct sockaddr *) &client_address, &size); + assert(client_socket > 0); + closesocket(client_socket); + } + return 0; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/invalid-option.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/invalid-option.expected.err new file mode 100644 index 0000000..91538d9 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/invalid-option.expected.err @@ -0,0 +1,2 @@ +jscoverage: unrecognized option `--foo' +Try `jscoverage --help' for more information. diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/invalid-option.sh b/tools/node_modules/expresso/deps/jscoverage/tests/invalid-option.sh new file mode 100755 index 0000000..bf9607c --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/invalid-option.sh @@ -0,0 +1,29 @@ +#!/bin/sh +# invalid-option.sh - test invalid option +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +trap 'rm -fr OUT ERR' 1 2 3 15 + +export PATH=.:..:$PATH + +$VALGRIND jscoverage --foo > OUT 2> ERR && exit 1 +test ! -s OUT +diff --strip-trailing-cr invalid-option.expected.err ERR + +rm -fr OUT ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript-ignore.expected/ignore.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-ignore.expected/ignore.js new file mode 100644 index 0000000..824f204 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-ignore.expected/ignore.js @@ -0,0 +1,106 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['ignore.js']) { + _$jscoverage['ignore.js'] = []; + _$jscoverage['ignore.js'][1] = 0; + _$jscoverage['ignore.js'][3] = 0; + _$jscoverage['ignore.js'][4] = 0; + _$jscoverage['ignore.js'][6] = 0; + _$jscoverage['ignore.js'][7] = 0; + _$jscoverage['ignore.js'][10] = 0; + _$jscoverage['ignore.js'][14] = 0; + _$jscoverage['ignore.js'][16] = 0; + _$jscoverage['ignore.js'][17] = 0; + _$jscoverage['ignore.js'][22] = 0; + _$jscoverage['ignore.js'][23] = 0; + _$jscoverage['ignore.js'][27] = 0; + _$jscoverage['ignore.js'][32] = 0; + _$jscoverage['ignore.js'][34] = 0; + _$jscoverage['ignore.js'][35] = 0; + _$jscoverage['ignore.js'][37] = 0; + _$jscoverage['ignore.js'][38] = 0; + _$jscoverage['ignore.js'][42] = 0; + _$jscoverage['ignore.js'][43] = 0; + _$jscoverage['ignore.js'][44] = 0; +} +_$jscoverage['ignore.js'].conditionals = []; +_$jscoverage['ignore.js'][1]++; +function createRequest() { + _$jscoverage['ignore.js'][3]++; + if (window.XMLHttpRequest) { + _$jscoverage['ignore.js'].conditionals[6] = 11; + _$jscoverage['ignore.js'][4]++; + return new XMLHttpRequest(); + } + else { + _$jscoverage['ignore.js'].conditionals[4] = 5; + _$jscoverage['ignore.js'][6]++; + if (window.ActiveXObject) { + _$jscoverage['ignore.js'].conditionals[9] = 11; + _$jscoverage['ignore.js'][7]++; + return new ActiveXObject("Msxml2.XMLHTTP"); + } + else { + _$jscoverage['ignore.js'].conditionals[7] = 8; + _$jscoverage['ignore.js'][10]++; + throw "no XMLHttpRequest implementation available"; + } + } +} +_$jscoverage['ignore.js'][14]++; +function createRequest2() { + _$jscoverage['ignore.js'][16]++; + if (window.XMLHttpRequest) { + _$jscoverage['ignore.js'][17]++; + return new XMLHttpRequest(); + } + else { + _$jscoverage['ignore.js'].conditionals[17] = 18; + } + _$jscoverage['ignore.js'][22]++; + if (window.ActiveXObject) { + _$jscoverage['ignore.js'][23]++; + return new ActiveXObject("Msxml2.XMLHTTP"); + } + else { + _$jscoverage['ignore.js'].conditionals[23] = 24; + } + _$jscoverage['ignore.js'][27]++; + throw "no XMLHttpRequest implementation available"; +} +_$jscoverage['ignore.js'][32]++; +function log(s) { + _$jscoverage['ignore.js'][34]++; + if (window.console && window.console.log) { + _$jscoverage['ignore.js'].conditionals[37] = 39; + _$jscoverage['ignore.js'][35]++; + console.log(s); + } + else { + _$jscoverage['ignore.js'].conditionals[35] = 36; + _$jscoverage['ignore.js'][37]++; + if (window.opera && window.opera.postError) { + _$jscoverage['ignore.js'][38]++; + opera.postError(s); + } + else { + _$jscoverage['ignore.js'].conditionals[38] = 39; + } + } +} +_$jscoverage['ignore.js'][42]++; +var request = createRequest(); +_$jscoverage['ignore.js'][43]++; +var request2 = createRequest2(); +_$jscoverage['ignore.js'][44]++; +log("created requests"); +if (!( 0)) { + _$jscoverage['ignore.js'].conditionals[26] = 28; +} +if (!( ! window.XMLHttpRequest)) { + _$jscoverage['ignore.js'].conditionals[20] = 29; +} +_$jscoverage['ignore.js'].source = ["function createRequest() {","//#JSCOVERAGE_IF"," if (window.XMLHttpRequest) {"," return new XMLHttpRequest();"," }"," else if (window.ActiveXObject) {"," return new ActiveXObject('Msxml2.XMLHTTP');"," }"," else {"," throw 'no XMLHttpRequest implementation available';"," }","}","","function createRequest2() {","//#JSCOVERAGE_IF"," if (window.XMLHttpRequest) {"," return new XMLHttpRequest();"," }","","//#JSCOVERAGE_IF ! window.XMLHttpRequest","//#JSCOVERAGE_IF"," if (window.ActiveXObject) {"," return new ActiveXObject('Msxml2.XMLHTTP');"," }","","//#JSCOVERAGE_IF 0"," throw 'no XMLHttpRequest implementation available';","//#JSCOVERAGE_ENDIF","//#JSCOVERAGE_ENDIF","}","","function log(s) {","//#JSCOVERAGE_IF"," if (window.console && window.console.log) {"," console.log(s);"," }"," else if (window.opera && window.opera.postError) {"," opera.postError(s);"," }","}","","var request = createRequest();","var request2 = createRequest2();","log('created requests');"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript-ignore.sh b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-ignore.sh new file mode 100755 index 0000000..ec1edbd --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-ignore.sh @@ -0,0 +1,28 @@ +#!/bin/sh +# javascript-ignore.sh - test ignoring lines of code +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +trap 'rm -fr DIR' 1 2 3 15 + +export PATH=.:..:$PATH + +rm -fr DIR +$VALGRIND jscoverage --no-highlight javascript-ignore DIR +diff -u --strip-trailing-cr javascript-ignore.expected/ignore.js DIR/ignore.js +rm -fr DIR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript-ignore/ignore.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-ignore/ignore.js new file mode 100644 index 0000000..8579ff0 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-ignore/ignore.js @@ -0,0 +1,44 @@ +function createRequest() { +//#JSCOVERAGE_IF + if (window.XMLHttpRequest) { + return new XMLHttpRequest(); + } + else if (window.ActiveXObject) { + return new ActiveXObject('Msxml2.XMLHTTP'); + } + else { + throw 'no XMLHttpRequest implementation available'; + } +} + +function createRequest2() { +//#JSCOVERAGE_IF + if (window.XMLHttpRequest) { + return new XMLHttpRequest(); + } + +//#JSCOVERAGE_IF ! window.XMLHttpRequest +//#JSCOVERAGE_IF + if (window.ActiveXObject) { + return new ActiveXObject('Msxml2.XMLHTTP'); + } + +//#JSCOVERAGE_IF 0 + throw 'no XMLHttpRequest implementation available'; +//#JSCOVERAGE_ENDIF +//#JSCOVERAGE_ENDIF +} + +function log(s) { +//#JSCOVERAGE_IF + if (window.console && window.console.log) { + console.log(s); + } + else if (window.opera && window.opera.postError) { + opera.postError(s); + } +} + +var request = createRequest(); +var request2 = createRequest2(); +log('created requests'); diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript-invalid.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-invalid.expected.err new file mode 100644 index 0000000..bd39cb1 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-invalid.expected.err @@ -0,0 +1,2 @@ +jscoverage:javascript-invalid.js:1: SyntaxError: missing ; before statement +jscoverage: parse error in file javascript-invalid.js diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript-invalid/javascript-invalid.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-invalid/javascript-invalid.js new file mode 100644 index 0000000..74b863c --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-invalid/javascript-invalid.js @@ -0,0 +1 @@ +x y diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript-setter.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-setter.expected.err new file mode 100644 index 0000000..d353089 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-setter.expected.err @@ -0,0 +1 @@ +jscoverage:javascript-setter.js:2: expected function diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript-setter/javascript-setter.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-setter/javascript-setter.js new file mode 100644 index 0000000..715bc1e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-setter/javascript-setter.js @@ -0,0 +1,3 @@ +var obj = { + x setter: 3 +}; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript-utf-8.expected/javascript-utf-8.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-utf-8.expected/javascript-utf-8.js new file mode 100644 index 0000000..fa04a2c --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-utf-8.expected/javascript-utf-8.js @@ -0,0 +1,15 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-utf-8.js']) { + _$jscoverage['javascript-utf-8.js'] = []; + _$jscoverage['javascript-utf-8.js'][1] = 0; + _$jscoverage['javascript-utf-8.js'][2] = 0; +} +_$jscoverage['javascript-utf-8.js'][1]++; +var s = "e\u00e8\u00e9\u00ea"; +_$jscoverage['javascript-utf-8.js'][2]++; +var r = /e\u00e8\u00e9\u00ea/; +_$jscoverage['javascript-utf-8.js'].source = ["var s = 'eèéê';","var r = /eèéê/;"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript-utf-8.sh b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-utf-8.sh new file mode 100755 index 0000000..bada1bc --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-utf-8.sh @@ -0,0 +1,43 @@ +#!/bin/sh +# javascript-utf-8.sh - test a JavaScript file with UTF-8 encoding +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +trap 'rm -fr DIR' 1 2 3 15 + +export PATH=.:..:$PATH + +if jscoverage-server --version | grep -q 'iconv\|MultiByteToWideChar' +then + character_encoding_support=yes +else + character_encoding_support=no +fi + +rm -fr DIR +case "$character_encoding_support" in + yes) + $VALGRIND jscoverage --no-highlight --encoding=UTF-8 javascript-utf-8 DIR + diff -u --strip-trailing-cr javascript-utf-8.expected/javascript-utf-8.js DIR/javascript-utf-8.js + ;; + *) + ! $VALGRIND jscoverage --no-highlight --encoding=UTF-8 javascript-utf-8 DIR > OUT 2> ERR + echo "jscoverage: encoding UTF-8 not supported" | diff - ERR + ;; +esac +rm -fr DIR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript-utf-8/javascript-utf-8.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-utf-8/javascript-utf-8.js new file mode 100644 index 0000000..799cd6e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-utf-8/javascript-utf-8.js @@ -0,0 +1,2 @@ +var s = 'eèéê'; +var r = /eèéê/; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript-xml.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-xml.expected.err new file mode 100644 index 0000000..017c45e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-xml.expected.err @@ -0,0 +1 @@ +jscoverage:javascript-xml.js:3: unsupported node type (75) diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript-xml/javascript-xml.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-xml/javascript-xml.js new file mode 100644 index 0000000..a802d93 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript-xml/javascript-xml.js @@ -0,0 +1,8 @@ +// ECMA 357 11.1.4 +// an XML object representing a person with a name and age +var person = <person><name>John</name><age>25</age></person>; +// a variable containing an XML object representing two employees +var e = <employees> + <employee id="1"><name>Joe</name><age>20</age></employee> + <employee id="2"><name>Sue</name><age>30</age></employee> +</employees>; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-array-comprehension.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-array-comprehension.js new file mode 100644 index 0000000..4ecdc1f --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-array-comprehension.js @@ -0,0 +1,32 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-array-comprehension.js']) { + _$jscoverage['javascript-array-comprehension.js'] = []; + _$jscoverage['javascript-array-comprehension.js'][3] = 0; + _$jscoverage['javascript-array-comprehension.js'][4] = 0; + _$jscoverage['javascript-array-comprehension.js'][5] = 0; + _$jscoverage['javascript-array-comprehension.js'][8] = 0; + _$jscoverage['javascript-array-comprehension.js'][9] = 0; + _$jscoverage['javascript-array-comprehension.js'][12] = 0; + _$jscoverage['javascript-array-comprehension.js'][14] = 0; +} +_$jscoverage['javascript-array-comprehension.js'][3]++; +function range(begin, end) { + _$jscoverage['javascript-array-comprehension.js'][4]++; + for (let i = begin; i < end; ++i) { + _$jscoverage['javascript-array-comprehension.js'][5]++; + yield i; +} +} +_$jscoverage['javascript-array-comprehension.js'][8]++; +var ten_squares = [i * i for each (i in range(0, 10))]; +_$jscoverage['javascript-array-comprehension.js'][9]++; +var evens = [i for each (i in range(0, 21)) if (i % 2 == 0)]; +_$jscoverage['javascript-array-comprehension.js'][12]++; +var optimized = [1 for each (i in x) if (0)]; +_$jscoverage['javascript-array-comprehension.js'][14]++; +[i for each (a in x) for each (b in y)]; +_$jscoverage['javascript-array-comprehension.js'].source = ["<span class=\"c\">// https://developer.mozilla.org/en/New_in_JavaScript_1.7</span>","","<span class=\"k\">function</span> range<span class=\"k\">(</span>begin<span class=\"k\">,</span> end<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">for</span> <span class=\"k\">(</span><span class=\"k\">let</span> i <span class=\"k\">=</span> begin<span class=\"k\">;</span> i <span class=\"k\"><</span> end<span class=\"k\">;</span> <span class=\"k\">++</span>i<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">yield</span> i<span class=\"k\">;</span>"," <span class=\"k\">}</span>","<span class=\"k\">}</span>","<span class=\"k\">var</span> ten_squares <span class=\"k\">=</span> <span class=\"k\">[</span>i <span class=\"k\">*</span> i <span class=\"k\">for</span> each <span class=\"k\">(</span>i <span class=\"k\">in</span> range<span class=\"k\">(</span><span class=\"s\">0</span><span class=\"k\">,</span> <span class=\"s\">10</span><span class=\"k\">))];</span>","<span class=\"k\">var</span> evens <span class=\"k\">=</span> <span class=\"k\">[</span>i <span class=\"k\">for</span> each <span class=\"k\">(</span>i <span class=\"k\">in</span> range<span class=\"k\">(</span><span class=\"s\">0</span><span class=\"k\">,</span> <span class=\"s\">21</span><span class=\"k\">))</span> <span class=\"k\">if</span> <span class=\"k\">(</span>i <span class=\"k\">%</span> <span class=\"s\">2</span> <span class=\"k\">==</span> <span class=\"s\">0</span><span class=\"k\">)];</span>","","<span class=\"c\">// test optimization</span>","<span class=\"k\">var</span> optimized <span class=\"k\">=</span> <span class=\"k\">[</span>i <span class=\"k\">for</span> each <span class=\"k\">(</span>i <span class=\"k\">in</span> x<span class=\"k\">)</span> <span class=\"k\">if</span> <span class=\"k\">(</span><span class=\"s\">0</span><span class=\"k\">)];</span>","","<span class=\"k\">[</span>i <span class=\"k\">for</span> each <span class=\"k\">(</span>a <span class=\"k\">in</span> x<span class=\"k\">)</span> <span class=\"k\">for</span> each <span class=\"k\">(</span>b <span class=\"k\">in</span> y<span class=\"k\">)]</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-assign.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-assign.js new file mode 100644 index 0000000..fc3a7ec --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-assign.js @@ -0,0 +1,51 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-assign.js']) { + _$jscoverage['javascript-assign.js'] = []; + _$jscoverage['javascript-assign.js'][1] = 0; + _$jscoverage['javascript-assign.js'][2] = 0; + _$jscoverage['javascript-assign.js'][3] = 0; + _$jscoverage['javascript-assign.js'][4] = 0; + _$jscoverage['javascript-assign.js'][5] = 0; + _$jscoverage['javascript-assign.js'][6] = 0; + _$jscoverage['javascript-assign.js'][7] = 0; + _$jscoverage['javascript-assign.js'][8] = 0; + _$jscoverage['javascript-assign.js'][9] = 0; + _$jscoverage['javascript-assign.js'][10] = 0; + _$jscoverage['javascript-assign.js'][11] = 0; + _$jscoverage['javascript-assign.js'][12] = 0; + _$jscoverage['javascript-assign.js'][13] = 0; + _$jscoverage['javascript-assign.js'][14] = 0; +} +_$jscoverage['javascript-assign.js'][1]++; +var x = 1; +_$jscoverage['javascript-assign.js'][2]++; +var y = 1; +_$jscoverage['javascript-assign.js'][3]++; +x = y; +_$jscoverage['javascript-assign.js'][4]++; +x += y; +_$jscoverage['javascript-assign.js'][5]++; +x -= y; +_$jscoverage['javascript-assign.js'][6]++; +x *= y; +_$jscoverage['javascript-assign.js'][7]++; +x %= y; +_$jscoverage['javascript-assign.js'][8]++; +x <<= y; +_$jscoverage['javascript-assign.js'][9]++; +x >>= y; +_$jscoverage['javascript-assign.js'][10]++; +x >>>= y; +_$jscoverage['javascript-assign.js'][11]++; +x &= y; +_$jscoverage['javascript-assign.js'][12]++; +x |= y; +_$jscoverage['javascript-assign.js'][13]++; +x ^= y; +_$jscoverage['javascript-assign.js'][14]++; +x /= y; +_$jscoverage['javascript-assign.js'].source = ["<span class=\"k\">var</span> x <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">;</span>","<span class=\"k\">var</span> y <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">;</span>","x <span class=\"k\">=</span> y<span class=\"k\">;</span>","x <span class=\"k\">+=</span> y<span class=\"k\">;</span>","x <span class=\"k\">-=</span> y<span class=\"k\">;</span>","x <span class=\"k\">*=</span> y<span class=\"k\">;</span>","x <span class=\"k\">%=</span> y<span class=\"k\">;</span>","x <span class=\"k\"><<=</span> y<span class=\"k\">;</span>","x <span class=\"k\">>>=</span> y<span class=\"k\">;</span>","x <span class=\"k\">>>>=</span> y<span class=\"k\">;</span>","x <span class=\"k\">&=</span> y<span class=\"k\">;</span>","x <span class=\"k\">|=</span> y<span class=\"k\">;</span>","x <span class=\"k\">^=</span> y<span class=\"k\">;</span>","x <span class=\"k\">/=</span> y<span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-colon.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-colon.js new file mode 100644 index 0000000..c99da2b --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-colon.js @@ -0,0 +1,24 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-colon.js']) { + _$jscoverage['javascript-colon.js'] = []; + _$jscoverage['javascript-colon.js'][1] = 0; + _$jscoverage['javascript-colon.js'][4] = 0; + _$jscoverage['javascript-colon.js'][5] = 0; + _$jscoverage['javascript-colon.js'][6] = 0; +} +_$jscoverage['javascript-colon.js'][1]++; +x: +y = 0; +_$jscoverage['javascript-colon.js'][4]++; +y: +{ + _$jscoverage['javascript-colon.js'][5]++; + let y = 1; + _$jscoverage['javascript-colon.js'][6]++; + print(y); +} +_$jscoverage['javascript-colon.js'].source = ["x<span class=\"k\">:</span>"," y <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>","","y<span class=\"k\">:</span> <span class=\"k\">{</span>"," <span class=\"k\">let</span> y <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">;</span>"," print<span class=\"k\">(</span>y<span class=\"k\">);</span>","<span class=\"k\">}</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-comma.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-comma.js new file mode 100644 index 0000000..5912427 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-comma.js @@ -0,0 +1,12 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-comma.js']) { + _$jscoverage['javascript-comma.js'] = []; + _$jscoverage['javascript-comma.js'][1] = 0; +} +_$jscoverage['javascript-comma.js'][1]++; +x = y, y = x; +_$jscoverage['javascript-comma.js'].source = ["x <span class=\"k\">=</span> y<span class=\"k\">,</span> y <span class=\"k\">=</span> x<span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-cr.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-cr.js new file mode 100644 index 0000000..38d52fb --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-cr.js @@ -0,0 +1,12 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-cr.js']) { + _$jscoverage['javascript-cr.js'] = []; + _$jscoverage['javascript-cr.js'][4] = 0; +} +_$jscoverage['javascript-cr.js'][4]++; +var x = 1; +_$jscoverage['javascript-cr.js'].source = ["<span class=\"c\">/*</span>","<span class=\"c\">This file has CR line endings.</span>","<span class=\"c\">*/</span>","<span class=\"k\">var</span> x <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-crlf.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-crlf.js new file mode 100644 index 0000000..82a2d12 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-crlf.js @@ -0,0 +1,12 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-crlf.js']) { + _$jscoverage['javascript-crlf.js'] = []; + _$jscoverage['javascript-crlf.js'][4] = 0; +} +_$jscoverage['javascript-crlf.js'][4]++; +var x = 1; +_$jscoverage['javascript-crlf.js'].source = ["<span class=\"c\">/*</span>","<span class=\"c\">This file has CRLF line endings.</span>","<span class=\"c\">*/</span>","<span class=\"k\">var</span> x <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-debugger.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-debugger.js new file mode 100644 index 0000000..a78516e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-debugger.js @@ -0,0 +1,21 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-debugger.js']) { + _$jscoverage['javascript-debugger.js'] = []; + _$jscoverage['javascript-debugger.js'][1] = 0; + _$jscoverage['javascript-debugger.js'][2] = 0; + _$jscoverage['javascript-debugger.js'][5] = 0; +} +_$jscoverage['javascript-debugger.js'][1]++; +try { + _$jscoverage['javascript-debugger.js'][2]++; + f(); +} +catch (e) { + _$jscoverage['javascript-debugger.js'][5]++; + debugger; +} +_$jscoverage['javascript-debugger.js'].source = ["<span class=\"k\">try</span> <span class=\"k\">{</span>"," f<span class=\"k\">();</span>","<span class=\"k\">}</span>","<span class=\"k\">catch</span> <span class=\"k\">(</span>e<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">debugger</span><span class=\"k\">;</span>","<span class=\"k\">}</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-dec.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-dec.js new file mode 100644 index 0000000..4ba2323 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-dec.js @@ -0,0 +1,15 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-dec.js']) { + _$jscoverage['javascript-dec.js'] = []; + _$jscoverage['javascript-dec.js'][1] = 0; + _$jscoverage['javascript-dec.js'][2] = 0; +} +_$jscoverage['javascript-dec.js'][1]++; +x--; +_$jscoverage['javascript-dec.js'][2]++; +--x; +_$jscoverage['javascript-dec.js'].source = ["x<span class=\"k\">--;</span>","<span class=\"k\">--</span>x<span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-delete.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-delete.js new file mode 100644 index 0000000..bc96a8f --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-delete.js @@ -0,0 +1,12 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-delete.js']) { + _$jscoverage['javascript-delete.js'] = []; + _$jscoverage['javascript-delete.js'][1] = 0; +} +_$jscoverage['javascript-delete.js'][1]++; +delete x; +_$jscoverage['javascript-delete.js'].source = ["<span class=\"k\">delete</span> x<span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-destructuring.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-destructuring.js new file mode 100644 index 0000000..ac3d0eb --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-destructuring.js @@ -0,0 +1,96 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-destructuring.js']) { + _$jscoverage['javascript-destructuring.js'] = []; + _$jscoverage['javascript-destructuring.js'][3] = 0; + _$jscoverage['javascript-destructuring.js'][5] = 0; + _$jscoverage['javascript-destructuring.js'][6] = 0; + _$jscoverage['javascript-destructuring.js'][8] = 0; + _$jscoverage['javascript-destructuring.js'][10] = 0; + _$jscoverage['javascript-destructuring.js'][11] = 0; + _$jscoverage['javascript-destructuring.js'][12] = 0; + _$jscoverage['javascript-destructuring.js'][15] = 0; + _$jscoverage['javascript-destructuring.js'][16] = 0; + _$jscoverage['javascript-destructuring.js'][17] = 0; + _$jscoverage['javascript-destructuring.js'][20] = 0; + _$jscoverage['javascript-destructuring.js'][21] = 0; + _$jscoverage['javascript-destructuring.js'][23] = 0; + _$jscoverage['javascript-destructuring.js'][24] = 0; + _$jscoverage['javascript-destructuring.js'][25] = 0; + _$jscoverage['javascript-destructuring.js'][26] = 0; + _$jscoverage['javascript-destructuring.js'][27] = 0; + _$jscoverage['javascript-destructuring.js'][30] = 0; + _$jscoverage['javascript-destructuring.js'][31] = 0; + _$jscoverage['javascript-destructuring.js'][32] = 0; + _$jscoverage['javascript-destructuring.js'][35] = 0; + _$jscoverage['javascript-destructuring.js'][37] = 0; + _$jscoverage['javascript-destructuring.js'][38] = 0; + _$jscoverage['javascript-destructuring.js'][39] = 0; + _$jscoverage['javascript-destructuring.js'][40] = 0; + _$jscoverage['javascript-destructuring.js'][41] = 0; +} +_$jscoverage['javascript-destructuring.js'][3]++; +[a, b] = [b, a]; +_$jscoverage['javascript-destructuring.js'][5]++; +function f() { + _$jscoverage['javascript-destructuring.js'][6]++; + return [1, 2]; +} +_$jscoverage['javascript-destructuring.js'][8]++; +[a, b] = f(); +_$jscoverage['javascript-destructuring.js'][10]++; +for (let [name, value] in Iterator(obj)) { + _$jscoverage['javascript-destructuring.js'][11]++; + print(name); + _$jscoverage['javascript-destructuring.js'][12]++; + print(value); +} +_$jscoverage['javascript-destructuring.js'][15]++; +for each (let {name: n, family: {father: f}} in people) { + _$jscoverage['javascript-destructuring.js'][16]++; + print(n); + _$jscoverage['javascript-destructuring.js'][17]++; + print(f); +} +_$jscoverage['javascript-destructuring.js'][20]++; +var [a, , b] = f(); +_$jscoverage['javascript-destructuring.js'][21]++; +[, , ,] = f(); +_$jscoverage['javascript-destructuring.js'][23]++; +function g() { + _$jscoverage['javascript-destructuring.js'][24]++; + var parsedURL = /^(\w+)\:\/\/([^\/]+)\/(.*)$/.exec(url); + _$jscoverage['javascript-destructuring.js'][25]++; + if (! parsedURL) { + _$jscoverage['javascript-destructuring.js'][26]++; + return null; + } + _$jscoverage['javascript-destructuring.js'][27]++; + var [, protocol, fullhost, fullpath] = parsedURL; +} +_$jscoverage['javascript-destructuring.js'][30]++; +function h(a, [b, c], {foo: d, "bar": e}) { + _$jscoverage['javascript-destructuring.js'][31]++; + f(); + _$jscoverage['javascript-destructuring.js'][32]++; + g(); +} +_$jscoverage['javascript-destructuring.js'][35]++; +x = (function ([a, b]) { + return a + b; +}); +_$jscoverage['javascript-destructuring.js'][37]++; +({x: x0, y: y0}) = point; +_$jscoverage['javascript-destructuring.js'][38]++; +var {x: x0, y: y0} = point; +_$jscoverage['javascript-destructuring.js'][39]++; +let ({x: x0, y: y0} = point) { + _$jscoverage['javascript-destructuring.js'][40]++; + print(x0); + _$jscoverage['javascript-destructuring.js'][41]++; + print(y0); +} +_$jscoverage['javascript-destructuring.js'].source = ["<span class=\"c\">// https://developer.mozilla.org/en/New_in_JavaScript_1.7</span>","","<span class=\"k\">[</span>a<span class=\"k\">,</span> b<span class=\"k\">]</span> <span class=\"k\">=</span> <span class=\"k\">[</span>b<span class=\"k\">,</span> a<span class=\"k\">];</span>","","<span class=\"k\">function</span> f<span class=\"k\">()</span> <span class=\"k\">{</span>"," <span class=\"k\">return</span> <span class=\"k\">[</span><span class=\"s\">1</span><span class=\"k\">,</span> <span class=\"s\">2</span><span class=\"k\">];</span>","<span class=\"k\">}</span>","<span class=\"k\">[</span>a<span class=\"k\">,</span> b<span class=\"k\">]</span> <span class=\"k\">=</span> f<span class=\"k\">();</span>","","<span class=\"k\">for</span> <span class=\"k\">(</span><span class=\"k\">let</span> <span class=\"k\">[</span>name<span class=\"k\">,</span> value<span class=\"k\">]</span> <span class=\"k\">in</span> Iterator<span class=\"k\">(</span>obj<span class=\"k\">))</span> <span class=\"k\">{</span>"," print<span class=\"k\">(</span>name<span class=\"k\">);</span>"," print<span class=\"k\">(</span>value<span class=\"k\">);</span>","<span class=\"k\">}</span>","","<span class=\"k\">for</span> each <span class=\"k\">(</span><span class=\"k\">let</span> <span class=\"k\">{</span>name<span class=\"k\">:</span> n<span class=\"k\">,</span> family<span class=\"k\">:</span> <span class=\"k\">{</span> father<span class=\"k\">:</span> f <span class=\"k\">}</span> <span class=\"k\">}</span> <span class=\"k\">in</span> people<span class=\"k\">)</span> <span class=\"k\">{</span>"," print<span class=\"k\">(</span>n<span class=\"k\">);</span>"," print<span class=\"k\">(</span>f<span class=\"k\">);</span>","<span class=\"k\">}</span>","","<span class=\"k\">var</span> <span class=\"k\">[</span>a<span class=\"k\">,</span> <span class=\"k\">,</span> b<span class=\"k\">]</span> <span class=\"k\">=</span> f<span class=\"k\">();</span>","<span class=\"k\">[,,,]</span> <span class=\"k\">=</span> f<span class=\"k\">();</span>","","<span class=\"k\">function</span> g<span class=\"k\">()</span> <span class=\"k\">{</span>"," <span class=\"k\">var</span> parsedURL <span class=\"k\">=</span> <span class=\"s\">/^(\\w+)\\:\\/\\/([^\\/]+)\\/(.*)$/</span><span class=\"k\">.</span>exec<span class=\"k\">(</span>url<span class=\"k\">);</span>"," <span class=\"k\">if</span> <span class=\"k\">(!</span>parsedURL<span class=\"k\">)</span>"," <span class=\"k\">return</span> <span class=\"k\">null</span><span class=\"k\">;</span>"," <span class=\"k\">var</span> <span class=\"k\">[,</span> protocol<span class=\"k\">,</span> fullhost<span class=\"k\">,</span> fullpath<span class=\"k\">]</span> <span class=\"k\">=</span> parsedURL<span class=\"k\">;</span>","<span class=\"k\">}</span>","","<span class=\"k\">function</span> h<span class=\"k\">(</span>a<span class=\"k\">,</span> <span class=\"k\">[</span>b<span class=\"k\">,</span> c<span class=\"k\">],</span> <span class=\"k\">{</span>foo<span class=\"k\">:</span> d<span class=\"k\">,</span> <span class=\"s\">'bar'</span><span class=\"k\">:</span> e<span class=\"k\">}</span><span class=\"k\">)</span> <span class=\"k\">{</span>"," f<span class=\"k\">();</span>"," g<span class=\"k\">();</span>","<span class=\"k\">}</span>","","x <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">([</span>a<span class=\"k\">,</span> b<span class=\"k\">])</span> a <span class=\"k\">+</span> b<span class=\"k\">;</span>","","<span class=\"k\">(</span><span class=\"k\">{</span>x<span class=\"k\">:</span> x0<span class=\"k\">,</span> y<span class=\"k\">:</span> y0<span class=\"k\">}</span><span class=\"k\">)</span> <span class=\"k\">=</span> point<span class=\"k\">;</span>","<span class=\"k\">var</span> <span class=\"k\">{</span>x<span class=\"k\">:</span> x0<span class=\"k\">,</span> y<span class=\"k\">:</span> y0<span class=\"k\">}</span> <span class=\"k\">=</span> point<span class=\"k\">;</span>","<span class=\"k\">let</span> <span class=\"k\">(</span><span class=\"k\">{</span>x<span class=\"k\">:</span> x0<span class=\"k\">,</span> y<span class=\"k\">:</span> y0<span class=\"k\">}</span> <span class=\"k\">=</span> point<span class=\"k\">)</span> <span class=\"k\">{</span>"," print<span class=\"k\">(</span>x0<span class=\"k\">);</span>"," print<span class=\"k\">(</span>y0<span class=\"k\">);</span>","<span class=\"k\">}</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-do.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-do.js new file mode 100644 index 0000000..23d4557 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-do.js @@ -0,0 +1,28 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-do.js']) { + _$jscoverage['javascript-do.js'] = []; + _$jscoverage['javascript-do.js'][1] = 0; + _$jscoverage['javascript-do.js'][3] = 0; + _$jscoverage['javascript-do.js'][4] = 0; + _$jscoverage['javascript-do.js'][8] = 0; + _$jscoverage['javascript-do.js'][9] = 0; +} +_$jscoverage['javascript-do.js'][1]++; +var x; +_$jscoverage['javascript-do.js'][3]++; +do { + _$jscoverage['javascript-do.js'][4]++; + x = false; +} +while (x); +_$jscoverage['javascript-do.js'][8]++; +do { + _$jscoverage['javascript-do.js'][9]++; + x = false; +} +while (x); +_$jscoverage['javascript-do.js'].source = ["<span class=\"k\">var</span> x<span class=\"k\">;</span>","","<span class=\"k\">do</span> <span class=\"k\">{</span>"," x <span class=\"k\">=</span> <span class=\"k\">false</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","<span class=\"k\">while</span> <span class=\"k\">(</span>x<span class=\"k\">);</span>","","<span class=\"k\">do</span>"," x <span class=\"k\">=</span> <span class=\"k\">false</span><span class=\"k\">;</span>","<span class=\"k\">while</span> <span class=\"k\">(</span>x<span class=\"k\">);</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-dot.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-dot.js new file mode 100644 index 0000000..ca91faa --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-dot.js @@ -0,0 +1,30 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-dot.js']) { + _$jscoverage['javascript-dot.js'] = []; + _$jscoverage['javascript-dot.js'][1] = 0; + _$jscoverage['javascript-dot.js'][2] = 0; + _$jscoverage['javascript-dot.js'][3] = 0; + _$jscoverage['javascript-dot.js'][4] = 0; + _$jscoverage['javascript-dot.js'][5] = 0; + _$jscoverage['javascript-dot.js'][7] = 0; + _$jscoverage['javascript-dot.js'][8] = 0; +} +_$jscoverage['javascript-dot.js'][1]++; +x.y = y.x; +_$jscoverage['javascript-dot.js'][2]++; +x.y = y.x; +_$jscoverage['javascript-dot.js'][3]++; +x[y] = y[x]; +_$jscoverage['javascript-dot.js'][4]++; +x["2y"] = y["var"]; +_$jscoverage['javascript-dot.js'][5]++; +x[""] = y[""]; +_$jscoverage['javascript-dot.js'][7]++; +print((123).toString()); +_$jscoverage['javascript-dot.js'][8]++; +({}).toString(); +_$jscoverage['javascript-dot.js'].source = ["x<span class=\"k\">.</span>y <span class=\"k\">=</span> y<span class=\"k\">.</span>x<span class=\"k\">;</span>","x<span class=\"k\">[</span><span class=\"s\">\"y\"</span><span class=\"k\">]</span> <span class=\"k\">=</span> y<span class=\"k\">[</span><span class=\"s\">\"x\"</span><span class=\"k\">];</span>","x<span class=\"k\">[</span>y<span class=\"k\">]</span> <span class=\"k\">=</span> y<span class=\"k\">[</span>x<span class=\"k\">];</span>","x<span class=\"k\">[</span><span class=\"s\">'2y'</span><span class=\"k\">]</span> <span class=\"k\">=</span> y<span class=\"k\">[</span><span class=\"s\">'var'</span><span class=\"k\">];</span>","x<span class=\"k\">[</span><span class=\"s\">''</span><span class=\"k\">]</span> <span class=\"k\">=</span> y<span class=\"k\">[</span><span class=\"s\">\"\"</span><span class=\"k\">];</span>","","print<span class=\"k\">(</span><span class=\"s\">123.0</span><span class=\"k\">.</span>toString<span class=\"k\">());</span>","<span class=\"k\">(</span><span class=\"k\">{}</span><span class=\"k\">.</span>toString<span class=\"k\">());</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-empty.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-empty.js new file mode 100644 index 0000000..646be4b --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-empty.js @@ -0,0 +1,9 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-empty.js']) { + _$jscoverage['javascript-empty.js'] = []; +} +_$jscoverage['javascript-empty.js'].source = []; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-for.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-for.js new file mode 100644 index 0000000..07b9fc2 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-for.js @@ -0,0 +1,51 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-for.js']) { + _$jscoverage['javascript-for.js'] = []; + _$jscoverage['javascript-for.js'][1] = 0; + _$jscoverage['javascript-for.js'][2] = 0; + _$jscoverage['javascript-for.js'][5] = 0; + _$jscoverage['javascript-for.js'][6] = 0; + _$jscoverage['javascript-for.js'][9] = 0; + _$jscoverage['javascript-for.js'][10] = 0; + _$jscoverage['javascript-for.js'][13] = 0; + _$jscoverage['javascript-for.js'][14] = 0; + _$jscoverage['javascript-for.js'][17] = 0; + _$jscoverage['javascript-for.js'][18] = 0; + _$jscoverage['javascript-for.js'][20] = 0; + _$jscoverage['javascript-for.js'][21] = 0; +} +_$jscoverage['javascript-for.js'][1]++; +for (i in x) { + _$jscoverage['javascript-for.js'][2]++; + x(); +} +_$jscoverage['javascript-for.js'][5]++; +for (var i in x) { + _$jscoverage['javascript-for.js'][6]++; + x(); +} +_$jscoverage['javascript-for.js'][9]++; +for (i = 0; i < x; i++) { + _$jscoverage['javascript-for.js'][10]++; + x(); +} +_$jscoverage['javascript-for.js'][13]++; +for (var j = 0; j < x; j++) { + _$jscoverage['javascript-for.js'][14]++; + x(); +} +_$jscoverage['javascript-for.js'][17]++; +for (i in x) { + _$jscoverage['javascript-for.js'][18]++; + x(); +} +_$jscoverage['javascript-for.js'][20]++; +for (i.value in x) { + _$jscoverage['javascript-for.js'][21]++; + x(); +} +_$jscoverage['javascript-for.js'].source = ["<span class=\"k\">for</span> <span class=\"k\">(</span>i <span class=\"k\">in</span> x<span class=\"k\">)</span> <span class=\"k\">{</span>"," x<span class=\"k\">();</span>","<span class=\"k\">}</span>","","<span class=\"k\">for</span> <span class=\"k\">(</span><span class=\"k\">var</span> i <span class=\"k\">in</span> x<span class=\"k\">)</span> <span class=\"k\">{</span>"," x<span class=\"k\">();</span>","<span class=\"k\">}</span>","","<span class=\"k\">for</span> <span class=\"k\">(</span>i <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span> i <span class=\"k\"><</span> x<span class=\"k\">;</span> i<span class=\"k\">++)</span> <span class=\"k\">{</span>"," x<span class=\"k\">();</span>","<span class=\"k\">}</span>","","<span class=\"k\">for</span> <span class=\"k\">(</span><span class=\"k\">var</span> j <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span> j <span class=\"k\"><</span> x<span class=\"k\">;</span> j<span class=\"k\">++)</span> <span class=\"k\">{</span>"," x<span class=\"k\">();</span>","<span class=\"k\">}</span>","","<span class=\"k\">for</span> <span class=\"k\">(</span>i <span class=\"k\">in</span> x<span class=\"k\">)</span>"," x<span class=\"k\">();</span>","","<span class=\"k\">for</span> <span class=\"k\">(</span>i<span class=\"k\">.</span>value <span class=\"k\">in</span> x<span class=\"k\">)</span> <span class=\"k\">{</span>"," x<span class=\"k\">();</span>","<span class=\"k\">}</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-foreach.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-foreach.js new file mode 100644 index 0000000..2c63a81 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-foreach.js @@ -0,0 +1,16 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-foreach.js']) { + _$jscoverage['javascript-foreach.js'] = []; + _$jscoverage['javascript-foreach.js'][6] = 0; + _$jscoverage['javascript-foreach.js'][7] = 0; +} +_$jscoverage['javascript-foreach.js'][6]++; +for each (var item in obj) { + _$jscoverage['javascript-foreach.js'][7]++; + sum += item; +} +_$jscoverage['javascript-foreach.js'].source = ["<span class=\"c\">/*</span>","<span class=\"c\">https://developer.mozilla.org/en/Core_JavaScript_1.5_Guide/Object_Manipulation_Statements</span>","<span class=\"c\">https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Statements/for_each...in</span>","<span class=\"c\">*/</span>","","<span class=\"k\">for</span> each <span class=\"k\">(</span><span class=\"k\">var</span> item <span class=\"k\">in</span> obj<span class=\"k\">)</span> <span class=\"k\">{</span>"," sum <span class=\"k\">+=</span> item<span class=\"k\">;</span>","<span class=\"k\">}</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-function.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-function.js new file mode 100644 index 0000000..5adada1 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-function.js @@ -0,0 +1,79 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-function.js']) { + _$jscoverage['javascript-function.js'] = []; + _$jscoverage['javascript-function.js'][1] = 0; + _$jscoverage['javascript-function.js'][3] = 0; + _$jscoverage['javascript-function.js'][4] = 0; + _$jscoverage['javascript-function.js'][7] = 0; + _$jscoverage['javascript-function.js'][8] = 0; + _$jscoverage['javascript-function.js'][9] = 0; + _$jscoverage['javascript-function.js'][12] = 0; + _$jscoverage['javascript-function.js'][13] = 0; + _$jscoverage['javascript-function.js'][16] = 0; + _$jscoverage['javascript-function.js'][17] = 0; + _$jscoverage['javascript-function.js'][20] = 0; + _$jscoverage['javascript-function.js'][21] = 0; + _$jscoverage['javascript-function.js'][24] = 0; + _$jscoverage['javascript-function.js'][25] = 0; + _$jscoverage['javascript-function.js'][28] = 0; + _$jscoverage['javascript-function.js'][29] = 0; + _$jscoverage['javascript-function.js'][32] = 0; + _$jscoverage['javascript-function.js'][33] = 0; + _$jscoverage['javascript-function.js'][36] = 0; + _$jscoverage['javascript-function.js'][37] = 0; +} +_$jscoverage['javascript-function.js'][1]++; +function x() { +} +_$jscoverage['javascript-function.js'][3]++; +function x() { + _$jscoverage['javascript-function.js'][4]++; + ; +} +_$jscoverage['javascript-function.js'][7]++; +function x() { + _$jscoverage['javascript-function.js'][8]++; + x(); + _$jscoverage['javascript-function.js'][9]++; + return "x"; +} +_$jscoverage['javascript-function.js'][12]++; +function x(a) { + _$jscoverage['javascript-function.js'][13]++; + x(); +} +_$jscoverage['javascript-function.js'][16]++; +function x(a, b) { + _$jscoverage['javascript-function.js'][17]++; + x(); +} +_$jscoverage['javascript-function.js'][20]++; +x = (function () { + _$jscoverage['javascript-function.js'][21]++; + x(); +}); +_$jscoverage['javascript-function.js'][24]++; +(function () { + _$jscoverage['javascript-function.js'][25]++; + print("x"); +})(); +_$jscoverage['javascript-function.js'][28]++; +(function (a) { + _$jscoverage['javascript-function.js'][29]++; + print("x"); +})(1); +_$jscoverage['javascript-function.js'][32]++; +(function (a, b) { + _$jscoverage['javascript-function.js'][33]++; + print("x"); +})(1, 2); +_$jscoverage['javascript-function.js'][36]++; +(function () { + _$jscoverage['javascript-function.js'][37]++; + print("x"); +}).call(window); +_$jscoverage['javascript-function.js'].source = ["<span class=\"k\">function</span> x<span class=\"k\">()</span> <span class=\"k\">{}</span>","","<span class=\"k\">function</span> x<span class=\"k\">()</span> <span class=\"k\">{</span>"," <span class=\"k\">;</span>","<span class=\"k\">}</span>","","<span class=\"k\">function</span> x<span class=\"k\">()</span> <span class=\"k\">{</span>"," x<span class=\"k\">();</span>"," <span class=\"k\">return</span> <span class=\"s\">'x'</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","","<span class=\"k\">function</span> x<span class=\"k\">(</span>a<span class=\"k\">)</span> <span class=\"k\">{</span>"," x<span class=\"k\">();</span>","<span class=\"k\">}</span>","","<span class=\"k\">function</span> x<span class=\"k\">(</span>a<span class=\"k\">,</span> b<span class=\"k\">)</span> <span class=\"k\">{</span>"," x<span class=\"k\">();</span>","<span class=\"k\">}</span>","","x <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">()</span> <span class=\"k\">{</span>"," x<span class=\"k\">();</span>","<span class=\"k\">}</span><span class=\"k\">;</span>","","<span class=\"k\">(</span><span class=\"k\">function</span> <span class=\"k\">()</span> <span class=\"k\">{</span>"," print<span class=\"k\">(</span><span class=\"s\">'x'</span><span class=\"k\">);</span>","<span class=\"k\">}</span><span class=\"k\">)();</span>","","<span class=\"k\">(</span><span class=\"k\">function</span> <span class=\"k\">(</span>a<span class=\"k\">)</span> <span class=\"k\">{</span>"," print<span class=\"k\">(</span><span class=\"s\">'x'</span><span class=\"k\">);</span>","<span class=\"k\">}</span><span class=\"k\">)(</span><span class=\"s\">1</span><span class=\"k\">);</span>","","<span class=\"k\">(</span><span class=\"k\">function</span> <span class=\"k\">(</span>a<span class=\"k\">,</span> b<span class=\"k\">)</span> <span class=\"k\">{</span>"," print<span class=\"k\">(</span><span class=\"s\">'x'</span><span class=\"k\">);</span>","<span class=\"k\">}</span><span class=\"k\">)(</span><span class=\"s\">1</span><span class=\"k\">,</span> <span class=\"s\">2</span><span class=\"k\">);</span>","","<span class=\"k\">(</span><span class=\"k\">function</span> <span class=\"k\">()</span> <span class=\"k\">{</span>"," print<span class=\"k\">(</span><span class=\"s\">'x'</span><span class=\"k\">);</span>","<span class=\"k\">}</span><span class=\"k\">).</span>call<span class=\"k\">(</span>window<span class=\"k\">);</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-generator-expression.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-generator-expression.js new file mode 100644 index 0000000..6ef1f11 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-generator-expression.js @@ -0,0 +1,45 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-generator-expression.js']) { + _$jscoverage['javascript-generator-expression.js'] = []; + _$jscoverage['javascript-generator-expression.js'][3] = 0; + _$jscoverage['javascript-generator-expression.js'][4] = 0; + _$jscoverage['javascript-generator-expression.js'][5] = 0; + _$jscoverage['javascript-generator-expression.js'][6] = 0; + _$jscoverage['javascript-generator-expression.js'][9] = 0; + _$jscoverage['javascript-generator-expression.js'][12] = 0; + _$jscoverage['javascript-generator-expression.js'][13] = 0; + _$jscoverage['javascript-generator-expression.js'][14] = 0; + _$jscoverage['javascript-generator-expression.js'][16] = 0; + _$jscoverage['javascript-generator-expression.js'][18] = 0; +} +_$jscoverage['javascript-generator-expression.js'][3]++; +var it = (i + 3 for (i in someObj)); +_$jscoverage['javascript-generator-expression.js'][4]++; +try { + _$jscoverage['javascript-generator-expression.js'][5]++; + while (true) { + _$jscoverage['javascript-generator-expression.js'][6]++; + document.write(it.next() + "<br>\n"); +} +} +catch (err if err instanceof StopIteration) { + _$jscoverage['javascript-generator-expression.js'][9]++; + document.write("End of record.<br>\n"); +} +_$jscoverage['javascript-generator-expression.js'][12]++; +function handleResults(results) { + _$jscoverage['javascript-generator-expression.js'][13]++; + for (let i in results) { + _$jscoverage['javascript-generator-expression.js'][14]++; + ; +} +} +_$jscoverage['javascript-generator-expression.js'][16]++; +handleResults((i for (i in obj) if (i > 3))); +_$jscoverage['javascript-generator-expression.js'][18]++; +it = (1 for (a in x) for (b in y)); +_$jscoverage['javascript-generator-expression.js'].source = ["<span class=\"c\">// https://developer.mozilla.org/en/New_in_JavaScript_1.8</span>","","<span class=\"k\">let</span> it <span class=\"k\">=</span> <span class=\"k\">(</span>i <span class=\"k\">+</span> <span class=\"s\">3</span> <span class=\"k\">for</span> <span class=\"k\">(</span>i <span class=\"k\">in</span> someObj<span class=\"k\">));</span>","<span class=\"k\">try</span> <span class=\"k\">{</span>"," <span class=\"k\">while</span> <span class=\"k\">(</span><span class=\"k\">true</span><span class=\"k\">)</span> <span class=\"k\">{</span>"," document<span class=\"k\">.</span>write<span class=\"k\">(</span>it<span class=\"k\">.</span>next<span class=\"k\">()</span> <span class=\"k\">+</span> <span class=\"s\">\"<br></span><span class=\"t\">\\n</span><span class=\"s\">\"</span><span class=\"k\">);</span>"," <span class=\"k\">}</span>","<span class=\"k\">}</span> <span class=\"k\">catch</span> <span class=\"k\">(</span>err <span class=\"k\">if</span> err <span class=\"k\">instanceof</span> StopIteration<span class=\"k\">)</span> <span class=\"k\">{</span>"," document<span class=\"k\">.</span>write<span class=\"k\">(</span><span class=\"s\">\"End of record.<br></span><span class=\"t\">\\n</span><span class=\"s\">\"</span><span class=\"k\">);</span>","<span class=\"k\">}</span>","","<span class=\"k\">function</span> handleResults<span class=\"k\">(</span> results <span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">for</span> <span class=\"k\">(</span> <span class=\"k\">let</span> i <span class=\"k\">in</span> results <span class=\"k\">)</span>"," <span class=\"k\">;</span>","<span class=\"k\">}</span>","handleResults<span class=\"k\">(</span> i <span class=\"k\">for</span> <span class=\"k\">(</span> i <span class=\"k\">in</span> obj <span class=\"k\">)</span> <span class=\"k\">if</span> <span class=\"k\">(</span> i <span class=\"k\">></span> <span class=\"s\">3</span> <span class=\"k\">)</span> <span class=\"k\">);</span>","","it <span class=\"k\">=</span> <span class=\"k\">(</span><span class=\"s\">1</span> <span class=\"k\">for</span><span class=\"k\">(</span>a <span class=\"k\">in</span> x<span class=\"k\">)</span> <span class=\"k\">for</span><span class=\"k\">(</span>b <span class=\"k\">in</span> y<span class=\"k\">));</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-generator.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-generator.js new file mode 100644 index 0000000..fa9cece --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-generator.js @@ -0,0 +1,32 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-generator.js']) { + _$jscoverage['javascript-generator.js'] = []; + _$jscoverage['javascript-generator.js'][3] = 0; + _$jscoverage['javascript-generator.js'][4] = 0; + _$jscoverage['javascript-generator.js'][5] = 0; + _$jscoverage['javascript-generator.js'][6] = 0; + _$jscoverage['javascript-generator.js'][7] = 0; + _$jscoverage['javascript-generator.js'][8] = 0; + _$jscoverage['javascript-generator.js'][9] = 0; +} +_$jscoverage['javascript-generator.js'][3]++; +function fib() { + _$jscoverage['javascript-generator.js'][4]++; + var i = 0, j = 1; + _$jscoverage['javascript-generator.js'][5]++; + while (true) { + _$jscoverage['javascript-generator.js'][6]++; + yield i; + _$jscoverage['javascript-generator.js'][7]++; + var t = i; + _$jscoverage['javascript-generator.js'][8]++; + i = j; + _$jscoverage['javascript-generator.js'][9]++; + j += t; +} +} +_$jscoverage['javascript-generator.js'].source = ["<span class=\"c\">// https://developer.mozilla.org/en/New_in_JavaScript_1.7</span>","","<span class=\"k\">function</span> fib<span class=\"k\">()</span> <span class=\"k\">{</span>"," <span class=\"k\">var</span> i <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">,</span> j <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">;</span>"," <span class=\"k\">while</span> <span class=\"k\">(</span><span class=\"k\">true</span><span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">yield</span> i<span class=\"k\">;</span>"," <span class=\"k\">var</span> t <span class=\"k\">=</span> i<span class=\"k\">;</span>"," i <span class=\"k\">=</span> j<span class=\"k\">;</span>"," j <span class=\"k\">+=</span> t<span class=\"k\">;</span>"," <span class=\"k\">}</span>","<span class=\"k\">}</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-getter-setter.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-getter-setter.js new file mode 100644 index 0000000..cffc83f --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-getter-setter.js @@ -0,0 +1,31 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-getter-setter.js']) { + _$jscoverage['javascript-getter-setter.js'] = []; + _$jscoverage['javascript-getter-setter.js'][1] = 0; + _$jscoverage['javascript-getter-setter.js'][4] = 0; + _$jscoverage['javascript-getter-setter.js'][7] = 0; + _$jscoverage['javascript-getter-setter.js'][11] = 0; + _$jscoverage['javascript-getter-setter.js'][14] = 0; + _$jscoverage['javascript-getter-setter.js'][17] = 0; +} +_$jscoverage['javascript-getter-setter.js'][1]++; +var o = {_x: 123, get x () { + _$jscoverage['javascript-getter-setter.js'][4]++; + return this._x; +}, set x (value) { + _$jscoverage['javascript-getter-setter.js'][7]++; + this._x = value; +}}; +_$jscoverage['javascript-getter-setter.js'][11]++; +o = {_x: 123, get x get_x() { + _$jscoverage['javascript-getter-setter.js'][14]++; + return this._x; +}, set x set_x(value) { + _$jscoverage['javascript-getter-setter.js'][17]++; + this._x = value; +}}; +_$jscoverage['javascript-getter-setter.js'].source = ["<span class=\"k\">var</span> o <span class=\"k\">=</span> <span class=\"k\">{</span>"," _x<span class=\"k\">:</span> <span class=\"s\">123</span><span class=\"k\">,</span>"," get x<span class=\"k\">()</span> <span class=\"k\">{</span>"," <span class=\"k\">return</span> <span class=\"k\">this</span><span class=\"k\">.</span>_x<span class=\"k\">;</span>"," <span class=\"k\">}</span><span class=\"k\">,</span>"," set x<span class=\"k\">(</span>value<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">this</span><span class=\"k\">.</span>_x <span class=\"k\">=</span> value<span class=\"k\">;</span>"," <span class=\"k\">}</span>","<span class=\"k\">}</span><span class=\"k\">;</span>","","o <span class=\"k\">=</span> <span class=\"k\">{</span>"," _x<span class=\"k\">:</span> <span class=\"s\">123</span><span class=\"k\">,</span>"," get x get_x<span class=\"k\">()</span> <span class=\"k\">{</span>"," <span class=\"k\">return</span> <span class=\"k\">this</span><span class=\"k\">.</span>_x<span class=\"k\">;</span>"," <span class=\"k\">}</span><span class=\"k\">,</span>"," set x set_x<span class=\"k\">(</span>value<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">this</span><span class=\"k\">.</span>_x <span class=\"k\">=</span> value<span class=\"k\">;</span>"," <span class=\"k\">}</span>","<span class=\"k\">}</span><span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-hook.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-hook.js new file mode 100644 index 0000000..08f33d0 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-hook.js @@ -0,0 +1,15 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-hook.js']) { + _$jscoverage['javascript-hook.js'] = []; + _$jscoverage['javascript-hook.js'][1] = 0; + _$jscoverage['javascript-hook.js'][2] = 0; +} +_$jscoverage['javascript-hook.js'][1]++; +var x = 1; +_$jscoverage['javascript-hook.js'][2]++; +var y = x === 1? "x": "y"; +_$jscoverage['javascript-hook.js'].source = ["<span class=\"k\">var</span> x <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">;</span>","<span class=\"k\">var</span> y <span class=\"k\">=</span> x <span class=\"k\">===</span> <span class=\"s\">1</span><span class=\"k\">?</span> <span class=\"s\">\"x\"</span><span class=\"k\">:</span> <span class=\"s\">\"y\"</span><span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-if.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-if.js new file mode 100644 index 0000000..8559e59 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-if.js @@ -0,0 +1,71 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-if.js']) { + _$jscoverage['javascript-if.js'] = []; + _$jscoverage['javascript-if.js'][1] = 0; + _$jscoverage['javascript-if.js'][3] = 0; + _$jscoverage['javascript-if.js'][4] = 0; + _$jscoverage['javascript-if.js'][6] = 0; + _$jscoverage['javascript-if.js'][7] = 0; + _$jscoverage['javascript-if.js'][10] = 0; + _$jscoverage['javascript-if.js'][11] = 0; + _$jscoverage['javascript-if.js'][13] = 0; + _$jscoverage['javascript-if.js'][15] = 0; + _$jscoverage['javascript-if.js'][16] = 0; + _$jscoverage['javascript-if.js'][19] = 0; + _$jscoverage['javascript-if.js'][22] = 0; + _$jscoverage['javascript-if.js'][23] = 0; + _$jscoverage['javascript-if.js'][25] = 0; + _$jscoverage['javascript-if.js'][26] = 0; + _$jscoverage['javascript-if.js'][29] = 0; +} +_$jscoverage['javascript-if.js'][1]++; +var x = 0; +_$jscoverage['javascript-if.js'][3]++; +if (x) { + _$jscoverage['javascript-if.js'][4]++; + x = 0; +} +_$jscoverage['javascript-if.js'][6]++; +if (x) { + _$jscoverage['javascript-if.js'][7]++; + x = 0; +} +_$jscoverage['javascript-if.js'][10]++; +if (x) { + _$jscoverage['javascript-if.js'][11]++; + x = 0; +} +else { + _$jscoverage['javascript-if.js'][13]++; + x = 0; +} +_$jscoverage['javascript-if.js'][15]++; +if (x) { + _$jscoverage['javascript-if.js'][16]++; + x = 0; +} +else { + _$jscoverage['javascript-if.js'][19]++; + x = 0; +} +_$jscoverage['javascript-if.js'][22]++; +if (x) { + _$jscoverage['javascript-if.js'][23]++; + x = 0; +} +else { + _$jscoverage['javascript-if.js'][25]++; + if (x) { + _$jscoverage['javascript-if.js'][26]++; + x = 0; + } + else { + _$jscoverage['javascript-if.js'][29]++; + x = 0; + } +} +_$jscoverage['javascript-if.js'].source = ["<span class=\"k\">var</span> x <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>","","<span class=\"k\">if</span> <span class=\"k\">(</span>x<span class=\"k\">)</span>"," x <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>","","<span class=\"k\">if</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>"," x <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","","<span class=\"k\">if</span> <span class=\"k\">(</span>x<span class=\"k\">)</span>"," x <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>","<span class=\"k\">else</span>"," x <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>","","<span class=\"k\">if</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>"," x <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","<span class=\"k\">else</span> <span class=\"k\">{</span>"," x <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","","<span class=\"k\">if</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>"," x <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","<span class=\"k\">else</span> <span class=\"k\">if</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>"," x <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","<span class=\"k\">else</span> <span class=\"k\">{</span>"," x <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>","<span class=\"k\">}</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-in.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-in.js new file mode 100644 index 0000000..5f6b35a --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-in.js @@ -0,0 +1,19 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-in.js']) { + _$jscoverage['javascript-in.js'] = []; + _$jscoverage['javascript-in.js'][1] = 0; + _$jscoverage['javascript-in.js'][2] = 0; + _$jscoverage['javascript-in.js'][3] = 0; +} +_$jscoverage['javascript-in.js'][1]++; +var x = {}; +_$jscoverage['javascript-in.js'][2]++; +if ("a" in x) { + _$jscoverage['javascript-in.js'][3]++; + x = null; +} +_$jscoverage['javascript-in.js'].source = ["<span class=\"k\">var</span> x <span class=\"k\">=</span> <span class=\"k\">{}</span><span class=\"k\">;</span>","<span class=\"k\">if</span> <span class=\"k\">(</span><span class=\"s\">'a'</span> <span class=\"k\">in</span> x<span class=\"k\">)</span> <span class=\"k\">{</span>"," x <span class=\"k\">=</span> <span class=\"k\">null</span><span class=\"k\">;</span>","<span class=\"k\">}</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-inc.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-inc.js new file mode 100644 index 0000000..7c1730f --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-inc.js @@ -0,0 +1,15 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-inc.js']) { + _$jscoverage['javascript-inc.js'] = []; + _$jscoverage['javascript-inc.js'][1] = 0; + _$jscoverage['javascript-inc.js'][2] = 0; +} +_$jscoverage['javascript-inc.js'][1]++; +x++; +_$jscoverage['javascript-inc.js'][2]++; +++x; +_$jscoverage['javascript-inc.js'].source = ["x<span class=\"k\">++;</span>","<span class=\"k\">++</span>x<span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-iso-8859-1.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-iso-8859-1.js new file mode 100644 index 0000000..e4650a9 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-iso-8859-1.js @@ -0,0 +1,15 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-iso-8859-1.js']) { + _$jscoverage['javascript-iso-8859-1.js'] = []; + _$jscoverage['javascript-iso-8859-1.js'][1] = 0; + _$jscoverage['javascript-iso-8859-1.js'][2] = 0; +} +_$jscoverage['javascript-iso-8859-1.js'][1]++; +var s = "e\u00e8\u00e9\u00ea"; +_$jscoverage['javascript-iso-8859-1.js'][2]++; +var r = /e\u00e8\u00e9\u00ea/; +_$jscoverage['javascript-iso-8859-1.js'].source = ["<span class=\"k\">var</span> s <span class=\"k\">=</span> <span class=\"s\">'eèéê'</span><span class=\"k\">;</span>","<span class=\"k\">var</span> r <span class=\"k\">=</span> <span class=\"s\">/eèéê/</span><span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-lambda.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-lambda.js new file mode 100644 index 0000000..9681cd9 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-lambda.js @@ -0,0 +1,14 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-lambda.js']) { + _$jscoverage['javascript-lambda.js'] = []; + _$jscoverage['javascript-lambda.js'][3] = 0; +} +_$jscoverage['javascript-lambda.js'][3]++; +var square = (function (x) { + return x * x; +}); +_$jscoverage['javascript-lambda.js'].source = ["<span class=\"c\">// https://developer.mozilla.org/en/New_in_JavaScript_1.8</span>","","<span class=\"k\">var</span> square <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">(</span>x<span class=\"k\">)</span> x <span class=\"k\">*</span> x<span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-let.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-let.js new file mode 100644 index 0000000..b726ff7 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-let.js @@ -0,0 +1,148 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-let.js']) { + _$jscoverage['javascript-let.js'] = []; + _$jscoverage['javascript-let.js'][5] = 0; + _$jscoverage['javascript-let.js'][6] = 0; + _$jscoverage['javascript-let.js'][11] = 0; + _$jscoverage['javascript-let.js'][15] = 0; + _$jscoverage['javascript-let.js'][16] = 0; + _$jscoverage['javascript-let.js'][17] = 0; + _$jscoverage['javascript-let.js'][20] = 0; + _$jscoverage['javascript-let.js'][22] = 0; + _$jscoverage['javascript-let.js'][23] = 0; + _$jscoverage['javascript-let.js'][24] = 0; + _$jscoverage['javascript-let.js'][26] = 0; + _$jscoverage['javascript-let.js'][27] = 0; + _$jscoverage['javascript-let.js'][28] = 0; + _$jscoverage['javascript-let.js'][30] = 0; + _$jscoverage['javascript-let.js'][33] = 0; + _$jscoverage['javascript-let.js'][34] = 0; + _$jscoverage['javascript-let.js'][35] = 0; + _$jscoverage['javascript-let.js'][36] = 0; + _$jscoverage['javascript-let.js'][37] = 0; + _$jscoverage['javascript-let.js'][39] = 0; + _$jscoverage['javascript-let.js'][42] = 0; + _$jscoverage['javascript-let.js'][43] = 0; + _$jscoverage['javascript-let.js'][45] = 0; + _$jscoverage['javascript-let.js'][46] = 0; + _$jscoverage['javascript-let.js'][48] = 0; + _$jscoverage['javascript-let.js'][51] = 0; + _$jscoverage['javascript-let.js'][52] = 0; + _$jscoverage['javascript-let.js'][55] = 0; + _$jscoverage['javascript-let.js'][56] = 0; + _$jscoverage['javascript-let.js'][60] = 0; + _$jscoverage['javascript-let.js'][64] = 0; + _$jscoverage['javascript-let.js'][65] = 0; + _$jscoverage['javascript-let.js'][69] = 0; + _$jscoverage['javascript-let.js'][70] = 0; + _$jscoverage['javascript-let.js'][71] = 0; + _$jscoverage['javascript-let.js'][74] = 0; + _$jscoverage['javascript-let.js'][75] = 0; + _$jscoverage['javascript-let.js'][76] = 0; + _$jscoverage['javascript-let.js'][78] = 0; + _$jscoverage['javascript-let.js'][79] = 0; +} +_$jscoverage['javascript-let.js'][5]++; +let (x = x + 10, y = 12) { + _$jscoverage['javascript-let.js'][6]++; + print(x + y + "\n"); +} +_$jscoverage['javascript-let.js'][11]++; +print(let(x = x + 10, y = 12) x + y + "<br>\n"); +_$jscoverage['javascript-let.js'][15]++; +if (x > y) { + { + _$jscoverage['javascript-let.js'][16]++; + let gamma = 12.7 + y; + _$jscoverage['javascript-let.js'][17]++; + i = gamma * x; + } +} +_$jscoverage['javascript-let.js'][20]++; +var list = document.getElementById("list"); +_$jscoverage['javascript-let.js'][22]++; +for (var i = 1; i <= 5; i++) { + { + _$jscoverage['javascript-let.js'][23]++; + var item = document.createElement("LI"); + _$jscoverage['javascript-let.js'][24]++; + item.appendChild(document.createTextNode("Item " + i)); + _$jscoverage['javascript-let.js'][26]++; + let j = i; + _$jscoverage['javascript-let.js'][27]++; + item.onclick = (function (ev) { + _$jscoverage['javascript-let.js'][28]++; + alert("Item " + j + " is clicked."); +}); + _$jscoverage['javascript-let.js'][30]++; + list.appendChild(item); + } +} +_$jscoverage['javascript-let.js'][33]++; +function varTest() { + _$jscoverage['javascript-let.js'][34]++; + var x = 31; + _$jscoverage['javascript-let.js'][35]++; + if (true) { + _$jscoverage['javascript-let.js'][36]++; + var x = 71; + _$jscoverage['javascript-let.js'][37]++; + alert(x); + } + _$jscoverage['javascript-let.js'][39]++; + alert(x); +} +_$jscoverage['javascript-let.js'][42]++; +function letTest() { + _$jscoverage['javascript-let.js'][43]++; + var x = 31; + { + _$jscoverage['javascript-let.js'][45]++; + let x = 71; + _$jscoverage['javascript-let.js'][46]++; + alert(x); + } + _$jscoverage['javascript-let.js'][48]++; + alert(x); +} +_$jscoverage['javascript-let.js'][51]++; +function letTests() { + _$jscoverage['javascript-let.js'][52]++; + var x = 10; + _$jscoverage['javascript-let.js'][55]++; + let (x = x + 20) { + _$jscoverage['javascript-let.js'][56]++; + alert(x); + } + _$jscoverage['javascript-let.js'][60]++; + alert(let(x = x + 20) x); + { + _$jscoverage['javascript-let.js'][64]++; + let x = x + 20; + _$jscoverage['javascript-let.js'][65]++; + alert(x); + } +} +_$jscoverage['javascript-let.js'][69]++; +var x = "global"; +_$jscoverage['javascript-let.js'][70]++; +var x = 42; +_$jscoverage['javascript-let.js'][71]++; +document.write(this.x + "<br>\n"); +_$jscoverage['javascript-let.js'][74]++; +var i = 0; +_$jscoverage['javascript-let.js'][75]++; +for (let i = i; i < 10; i++) { + _$jscoverage['javascript-let.js'][76]++; + document.write(i + "<br>\n"); +} +_$jscoverage['javascript-let.js'][78]++; +for (let [name, value] in obj) { + _$jscoverage['javascript-let.js'][79]++; + document.write("Name: " + name + ", Value: " + value + "<br>\n"); +} +_$jscoverage['javascript-let.js'].source = ["<span class=\"c\">// https://developer.mozilla.org/en/New_in_JavaScript_1.7</span>","","<span class=\"c\">// let statement</span>","","<span class=\"k\">let</span> <span class=\"k\">(</span>x <span class=\"k\">=</span> x<span class=\"k\">+</span><span class=\"s\">10</span><span class=\"k\">,</span> y <span class=\"k\">=</span> <span class=\"s\">12</span><span class=\"k\">)</span> <span class=\"k\">{</span>"," print<span class=\"k\">(</span>x<span class=\"k\">+</span>y <span class=\"k\">+</span> <span class=\"s\">\"</span><span class=\"t\">\\n</span><span class=\"s\">\"</span><span class=\"k\">);</span>","<span class=\"k\">}</span>","","<span class=\"c\">// let expressions</span>","","print<span class=\"k\">(</span> <span class=\"k\">let</span><span class=\"k\">(</span>x <span class=\"k\">=</span> x <span class=\"k\">+</span> <span class=\"s\">10</span><span class=\"k\">,</span> y <span class=\"k\">=</span> <span class=\"s\">12</span><span class=\"k\">)</span> x<span class=\"k\">+</span>y <span class=\"k\">+</span> <span class=\"s\">\"<br></span><span class=\"t\">\\n</span><span class=\"s\">\"</span><span class=\"k\">);</span>","","<span class=\"c\">// let definitions</span>","","<span class=\"k\">if</span> <span class=\"k\">(</span>x <span class=\"k\">></span> y<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">let</span> gamma <span class=\"k\">=</span> <span class=\"s\">12.7</span> <span class=\"k\">+</span> y<span class=\"k\">;</span>"," i <span class=\"k\">=</span> gamma <span class=\"k\">*</span> x<span class=\"k\">;</span>","<span class=\"k\">}</span>","","<span class=\"k\">var</span> list <span class=\"k\">=</span> document<span class=\"k\">.</span>getElementById<span class=\"k\">(</span><span class=\"s\">\"list\"</span><span class=\"k\">);</span>","","<span class=\"k\">for</span> <span class=\"k\">(</span><span class=\"k\">var</span> i <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">;</span> i <span class=\"k\"><=</span> <span class=\"s\">5</span><span class=\"k\">;</span> i<span class=\"k\">++)</span> <span class=\"k\">{</span>"," <span class=\"k\">var</span> item <span class=\"k\">=</span> document<span class=\"k\">.</span>createElement<span class=\"k\">(</span><span class=\"s\">\"LI\"</span><span class=\"k\">);</span>"," item<span class=\"k\">.</span>appendChild<span class=\"k\">(</span>document<span class=\"k\">.</span>createTextNode<span class=\"k\">(</span><span class=\"s\">\"Item \"</span> <span class=\"k\">+</span> i<span class=\"k\">));</span>",""," <span class=\"k\">let</span> j <span class=\"k\">=</span> i<span class=\"k\">;</span>"," item<span class=\"k\">.</span>onclick <span class=\"k\">=</span> <span class=\"k\">function</span> <span class=\"k\">(</span>ev<span class=\"k\">)</span> <span class=\"k\">{</span>"," alert<span class=\"k\">(</span><span class=\"s\">\"Item \"</span> <span class=\"k\">+</span> j <span class=\"k\">+</span> <span class=\"s\">\" is clicked.\"</span><span class=\"k\">);</span>"," <span class=\"k\">}</span><span class=\"k\">;</span>"," list<span class=\"k\">.</span>appendChild<span class=\"k\">(</span>item<span class=\"k\">);</span>","<span class=\"k\">}</span>","","<span class=\"k\">function</span> varTest<span class=\"k\">()</span> <span class=\"k\">{</span>"," <span class=\"k\">var</span> x <span class=\"k\">=</span> <span class=\"s\">31</span><span class=\"k\">;</span>"," <span class=\"k\">if</span> <span class=\"k\">(</span><span class=\"k\">true</span><span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">var</span> x <span class=\"k\">=</span> <span class=\"s\">71</span><span class=\"k\">;</span> <span class=\"c\">// same variable!</span>"," alert<span class=\"k\">(</span>x<span class=\"k\">);</span> <span class=\"c\">// 71</span>"," <span class=\"k\">}</span>"," alert<span class=\"k\">(</span>x<span class=\"k\">);</span> <span class=\"c\">// 71</span>","<span class=\"k\">}</span>","","<span class=\"k\">function</span> letTest<span class=\"k\">()</span> <span class=\"k\">{</span>"," <span class=\"k\">let</span> x <span class=\"k\">=</span> <span class=\"s\">31</span><span class=\"k\">;</span>"," <span class=\"k\">if</span> <span class=\"k\">(</span><span class=\"k\">true</span><span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">let</span> x <span class=\"k\">=</span> <span class=\"s\">71</span><span class=\"k\">;</span> <span class=\"c\">// different variable</span>"," alert<span class=\"k\">(</span>x<span class=\"k\">);</span> <span class=\"c\">// 71</span>"," <span class=\"k\">}</span>"," alert<span class=\"k\">(</span>x<span class=\"k\">);</span> <span class=\"c\">// 31</span>","<span class=\"k\">}</span>","","<span class=\"k\">function</span> letTests<span class=\"k\">()</span> <span class=\"k\">{</span>"," <span class=\"k\">let</span> x <span class=\"k\">=</span> <span class=\"s\">10</span><span class=\"k\">;</span>",""," <span class=\"c\">// let-statement</span>"," <span class=\"k\">let</span> <span class=\"k\">(</span>x <span class=\"k\">=</span> x <span class=\"k\">+</span> <span class=\"s\">20</span><span class=\"k\">)</span> <span class=\"k\">{</span>"," alert<span class=\"k\">(</span>x<span class=\"k\">);</span> <span class=\"c\">// 30</span>"," <span class=\"k\">}</span>",""," <span class=\"c\">// let-expression</span>"," alert<span class=\"k\">(</span><span class=\"k\">let</span> <span class=\"k\">(</span>x <span class=\"k\">=</span> x <span class=\"k\">+</span> <span class=\"s\">20</span><span class=\"k\">)</span> x<span class=\"k\">);</span> <span class=\"c\">// 30</span>",""," <span class=\"c\">// let-definition</span>"," <span class=\"k\">{</span>"," <span class=\"k\">let</span> x <span class=\"k\">=</span> x <span class=\"k\">+</span> <span class=\"s\">20</span><span class=\"k\">;</span> <span class=\"c\">// x here evaluates to undefined</span>"," alert<span class=\"k\">(</span>x<span class=\"k\">);</span> <span class=\"c\">// undefined + 20 ==> NaN</span>"," <span class=\"k\">}</span>","<span class=\"k\">}</span>","","<span class=\"k\">var</span> x <span class=\"k\">=</span> <span class=\"s\">'global'</span><span class=\"k\">;</span>","<span class=\"k\">let</span> x <span class=\"k\">=</span> <span class=\"s\">42</span><span class=\"k\">;</span>","document<span class=\"k\">.</span>write<span class=\"k\">(</span><span class=\"k\">this</span><span class=\"k\">.</span>x <span class=\"k\">+</span> <span class=\"s\">\"<br></span><span class=\"t\">\\n</span><span class=\"s\">\"</span><span class=\"k\">);</span>","","<span class=\"c\">// let-scoped variables in for loops</span>","<span class=\"k\">var</span> i<span class=\"k\">=</span><span class=\"s\">0</span><span class=\"k\">;</span>","<span class=\"k\">for</span> <span class=\"k\">(</span> <span class=\"k\">let</span> i<span class=\"k\">=</span>i <span class=\"k\">;</span> i <span class=\"k\"><</span> <span class=\"s\">10</span> <span class=\"k\">;</span> i<span class=\"k\">++</span> <span class=\"k\">)</span>"," document<span class=\"k\">.</span>write<span class=\"k\">(</span>i <span class=\"k\">+</span> <span class=\"s\">\"<br></span><span class=\"t\">\\n</span><span class=\"s\">\"</span><span class=\"k\">);</span>","","<span class=\"k\">for</span> <span class=\"k\">(</span> <span class=\"k\">let</span> <span class=\"k\">[</span>name<span class=\"k\">,</span>value<span class=\"k\">]</span> <span class=\"k\">in</span> obj <span class=\"k\">)</span>"," document<span class=\"k\">.</span>write<span class=\"k\">(</span><span class=\"s\">\"Name: \"</span> <span class=\"k\">+</span> name <span class=\"k\">+</span> <span class=\"s\">\", Value: \"</span> <span class=\"k\">+</span> value <span class=\"k\">+</span> <span class=\"s\">\"<br></span><span class=\"t\">\\n</span><span class=\"s\">\"</span><span class=\"k\">);</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-lf.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-lf.js new file mode 100644 index 0000000..c698ede --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-lf.js @@ -0,0 +1,12 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-lf.js']) { + _$jscoverage['javascript-lf.js'] = []; + _$jscoverage['javascript-lf.js'][4] = 0; +} +_$jscoverage['javascript-lf.js'][4]++; +var x = 1; +_$jscoverage['javascript-lf.js'].source = ["<span class=\"c\">/*</span>","<span class=\"c\">This file has LF line endings.</span>","<span class=\"c\">*/</span>","<span class=\"k\">var</span> x <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-new.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-new.js new file mode 100644 index 0000000..417227a --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-new.js @@ -0,0 +1,22 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-new.js']) { + _$jscoverage['javascript-new.js'] = []; + _$jscoverage['javascript-new.js'][1] = 0; + _$jscoverage['javascript-new.js'][2] = 0; + _$jscoverage['javascript-new.js'][3] = 0; + _$jscoverage['javascript-new.js'][4] = 0; +} +_$jscoverage['javascript-new.js'][1]++; +function X() { +} +_$jscoverage['javascript-new.js'][2]++; +x = new X(); +_$jscoverage['javascript-new.js'][3]++; +x = new X(1); +_$jscoverage['javascript-new.js'][4]++; +x = new X(1, 2); +_$jscoverage['javascript-new.js'].source = ["<span class=\"k\">function</span> X<span class=\"k\">()</span> <span class=\"k\">{}</span>","x <span class=\"k\">=</span> <span class=\"k\">new</span> X<span class=\"k\">();</span>","x <span class=\"k\">=</span> <span class=\"k\">new</span> X<span class=\"k\">(</span><span class=\"s\">1</span><span class=\"k\">);</span>","x <span class=\"k\">=</span> <span class=\"k\">new</span> X<span class=\"k\">(</span><span class=\"s\">1</span><span class=\"k\">,</span> <span class=\"s\">2</span><span class=\"k\">);</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-number.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-number.js new file mode 100644 index 0000000..45a9b77 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-number.js @@ -0,0 +1,57 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-number.js']) { + _$jscoverage['javascript-number.js'] = []; + _$jscoverage['javascript-number.js'][1] = 0; + _$jscoverage['javascript-number.js'][2] = 0; + _$jscoverage['javascript-number.js'][3] = 0; + _$jscoverage['javascript-number.js'][5] = 0; + _$jscoverage['javascript-number.js'][6] = 0; + _$jscoverage['javascript-number.js'][8] = 0; + _$jscoverage['javascript-number.js'][9] = 0; + _$jscoverage['javascript-number.js'][11] = 0; + _$jscoverage['javascript-number.js'][12] = 0; + _$jscoverage['javascript-number.js'][13] = 0; + _$jscoverage['javascript-number.js'][14] = 0; + _$jscoverage['javascript-number.js'][15] = 0; + _$jscoverage['javascript-number.js'][16] = 0; + _$jscoverage['javascript-number.js'][17] = 0; + _$jscoverage['javascript-number.js'][18] = 0; + _$jscoverage['javascript-number.js'][19] = 0; +} +_$jscoverage['javascript-number.js'][1]++; +x = 1; +_$jscoverage['javascript-number.js'][2]++; +y = 2; +_$jscoverage['javascript-number.js'][3]++; +z = 10.5; +_$jscoverage['javascript-number.js'][5]++; +a = Number.POSITIVE_INFINITY; +_$jscoverage['javascript-number.js'][6]++; +a = Number.NEGATIVE_INFINITY; +_$jscoverage['javascript-number.js'][8]++; +a = 0; +_$jscoverage['javascript-number.js'][9]++; +a = -0; +_$jscoverage['javascript-number.js'][11]++; +a = Number.NaN; +_$jscoverage['javascript-number.js'][12]++; +a = Number.NaN; +_$jscoverage['javascript-number.js'][13]++; +a = 0 / (-0); +_$jscoverage['javascript-number.js'][14]++; +a = Number.NaN; +_$jscoverage['javascript-number.js'][15]++; +a = (-0) / 0; +_$jscoverage['javascript-number.js'][16]++; +a = Number.NaN; +_$jscoverage['javascript-number.js'][17]++; +a = -0 / (-0); +_$jscoverage['javascript-number.js'][18]++; +a = (-0) / -0; +_$jscoverage['javascript-number.js'][19]++; +a = (-0) / (-0); +_$jscoverage['javascript-number.js'].source = ["x <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">;</span>","y <span class=\"k\">=</span> <span class=\"s\">2</span><span class=\"k\">;</span>","z <span class=\"k\">=</span> <span class=\"s\">10.5</span><span class=\"k\">;</span>","","a <span class=\"k\">=</span> <span class=\"s\">1</span> <span class=\"k\">/</span> <span class=\"s\">0</span><span class=\"k\">;</span>","a <span class=\"k\">=</span> <span class=\"k\">-</span><span class=\"s\">1</span> <span class=\"k\">/</span> <span class=\"s\">0</span><span class=\"k\">;</span>","","a <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>","a <span class=\"k\">=</span> <span class=\"k\">-</span><span class=\"s\">0</span><span class=\"k\">;</span>","","a <span class=\"k\">=</span> <span class=\"s\">0</span> <span class=\"k\">/</span> <span class=\"s\">0</span><span class=\"k\">;</span>","a <span class=\"k\">=</span> <span class=\"s\">0</span> <span class=\"k\">/</span> <span class=\"k\">-</span><span class=\"s\">0</span><span class=\"k\">;</span>","a <span class=\"k\">=</span> <span class=\"s\">0</span> <span class=\"k\">/</span> <span class=\"k\">(-</span><span class=\"s\">0</span><span class=\"k\">);</span>","a <span class=\"k\">=</span> <span class=\"k\">-</span><span class=\"s\">0</span> <span class=\"k\">/</span> <span class=\"s\">0</span><span class=\"k\">;</span>","a <span class=\"k\">=</span> <span class=\"k\">(-</span><span class=\"s\">0</span><span class=\"k\">)</span> <span class=\"k\">/</span> <span class=\"s\">0</span><span class=\"k\">;</span>","a <span class=\"k\">=</span> <span class=\"k\">-</span><span class=\"s\">0</span> <span class=\"k\">/</span> <span class=\"k\">-</span><span class=\"s\">0</span><span class=\"k\">;</span>","a <span class=\"k\">=</span> <span class=\"k\">-</span><span class=\"s\">0</span> <span class=\"k\">/</span> <span class=\"k\">(-</span><span class=\"s\">0</span><span class=\"k\">);</span>","a <span class=\"k\">=</span> <span class=\"k\">(-</span><span class=\"s\">0</span><span class=\"k\">)</span> <span class=\"k\">/</span> <span class=\"k\">-</span><span class=\"s\">0</span><span class=\"k\">;</span>","a <span class=\"k\">=</span> <span class=\"k\">(-</span><span class=\"s\">0</span><span class=\"k\">)</span> <span class=\"k\">/</span> <span class=\"k\">(-</span><span class=\"s\">0</span><span class=\"k\">);</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-object.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-object.js new file mode 100644 index 0000000..b3cf03f --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-object.js @@ -0,0 +1,15 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-object.js']) { + _$jscoverage['javascript-object.js'] = []; + _$jscoverage['javascript-object.js'][1] = 0; + _$jscoverage['javascript-object.js'][2] = 0; +} +_$jscoverage['javascript-object.js'][1]++; +x = /x\(\)\\\//i; +_$jscoverage['javascript-object.js'][2]++; +y = /\u0001\u002f/gm; +_$jscoverage['javascript-object.js'].source = ["x <span class=\"k\">=</span> <span class=\"s\">/x\\(\\)\\\\\\//i</span><span class=\"k\">;</span>","y <span class=\"k\">=</span> <span class=\"s\">/\\u0001\\u002f/gm</span><span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-op.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-op.js new file mode 100644 index 0000000..b6966aa --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-op.js @@ -0,0 +1,108 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-op.js']) { + _$jscoverage['javascript-op.js'] = []; + _$jscoverage['javascript-op.js'][1] = 0; + _$jscoverage['javascript-op.js'][4] = 0; + _$jscoverage['javascript-op.js'][5] = 0; + _$jscoverage['javascript-op.js'][8] = 0; + _$jscoverage['javascript-op.js'][9] = 0; + _$jscoverage['javascript-op.js'][11] = 0; + _$jscoverage['javascript-op.js'][13] = 0; + _$jscoverage['javascript-op.js'][16] = 0; + _$jscoverage['javascript-op.js'][17] = 0; + _$jscoverage['javascript-op.js'][20] = 0; + _$jscoverage['javascript-op.js'][21] = 0; + _$jscoverage['javascript-op.js'][24] = 0; + _$jscoverage['javascript-op.js'][25] = 0; + _$jscoverage['javascript-op.js'][28] = 0; + _$jscoverage['javascript-op.js'][29] = 0; + _$jscoverage['javascript-op.js'][30] = 0; + _$jscoverage['javascript-op.js'][31] = 0; + _$jscoverage['javascript-op.js'][34] = 0; + _$jscoverage['javascript-op.js'][35] = 0; + _$jscoverage['javascript-op.js'][36] = 0; + _$jscoverage['javascript-op.js'][37] = 0; + _$jscoverage['javascript-op.js'][40] = 0; + _$jscoverage['javascript-op.js'][41] = 0; + _$jscoverage['javascript-op.js'][42] = 0; + _$jscoverage['javascript-op.js'][45] = 0; + _$jscoverage['javascript-op.js'][46] = 0; + _$jscoverage['javascript-op.js'][47] = 0; + _$jscoverage['javascript-op.js'][48] = 0; + _$jscoverage['javascript-op.js'][51] = 0; + _$jscoverage['javascript-op.js'][52] = 0; + _$jscoverage['javascript-op.js'][53] = 0; + _$jscoverage['javascript-op.js'][54] = 0; + _$jscoverage['javascript-op.js'][55] = 0; +} +_$jscoverage['javascript-op.js'][1]++; +var a = 1, b = 1, c = 1, d = 1; +_$jscoverage['javascript-op.js'][4]++; +x = a || b || c; +_$jscoverage['javascript-op.js'][5]++; +x = a || b || c || d; +_$jscoverage['javascript-op.js'][8]++; +x = a && b && c; +_$jscoverage['javascript-op.js'][9]++; +x = a && b && c && d; +_$jscoverage['javascript-op.js'][11]++; +x = a && b || c; +_$jscoverage['javascript-op.js'][13]++; +x = a || b && c; +_$jscoverage['javascript-op.js'][16]++; +x = a | b | c; +_$jscoverage['javascript-op.js'][17]++; +x = a | b | c | d; +_$jscoverage['javascript-op.js'][20]++; +x = a ^ b ^ c; +_$jscoverage['javascript-op.js'][21]++; +x = a ^ b ^ c ^ d; +_$jscoverage['javascript-op.js'][24]++; +x = a & b & c; +_$jscoverage['javascript-op.js'][25]++; +x = a & b & c & d; +_$jscoverage['javascript-op.js'][28]++; +x = a == b; +_$jscoverage['javascript-op.js'][29]++; +x = a != b; +_$jscoverage['javascript-op.js'][30]++; +x = a === b; +_$jscoverage['javascript-op.js'][31]++; +x = a !== b; +_$jscoverage['javascript-op.js'][34]++; +x = a < b; +_$jscoverage['javascript-op.js'][35]++; +x = a <= b; +_$jscoverage['javascript-op.js'][36]++; +x = a > b; +_$jscoverage['javascript-op.js'][37]++; +x = a >= b; +_$jscoverage['javascript-op.js'][40]++; +x = a << b; +_$jscoverage['javascript-op.js'][41]++; +x = a >> b; +_$jscoverage['javascript-op.js'][42]++; +x = a >>> b; +_$jscoverage['javascript-op.js'][45]++; +x = a + b; +_$jscoverage['javascript-op.js'][46]++; +x = a + b + c; +_$jscoverage['javascript-op.js'][47]++; +x = a + b + c + d; +_$jscoverage['javascript-op.js'][48]++; +x = a - b; +_$jscoverage['javascript-op.js'][51]++; +x = a * b; +_$jscoverage['javascript-op.js'][52]++; +x = a * b * c; +_$jscoverage['javascript-op.js'][53]++; +x = a * b * c * d; +_$jscoverage['javascript-op.js'][54]++; +x = a / b; +_$jscoverage['javascript-op.js'][55]++; +x = a % b; +_$jscoverage['javascript-op.js'].source = ["<span class=\"k\">var</span> a <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">,</span> b <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">,</span> c <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">,</span> d <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">;</span>","","<span class=\"c\">/* TOK_OR */</span>","x <span class=\"k\">=</span> a <span class=\"k\">||</span> b <span class=\"k\">||</span> c<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">||</span> b <span class=\"k\">||</span> c <span class=\"k\">||</span> d<span class=\"k\">;</span>","","<span class=\"c\">/* TOK_AND */</span>","x <span class=\"k\">=</span> a <span class=\"k\">&&</span> b <span class=\"k\">&&</span> c<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">&&</span> b <span class=\"k\">&&</span> c <span class=\"k\">&&</span> d<span class=\"k\">;</span>","","x <span class=\"k\">=</span> a <span class=\"k\">&&</span> b <span class=\"k\">||</span> c<span class=\"k\">;</span>","","x <span class=\"k\">=</span> a <span class=\"k\">||</span> b <span class=\"k\">&&</span> c<span class=\"k\">;</span>","","<span class=\"c\">// TOK_BITOR</span>","x <span class=\"k\">=</span> a <span class=\"k\">|</span> b <span class=\"k\">|</span> c<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">|</span> b <span class=\"k\">|</span> c <span class=\"k\">|</span> d<span class=\"k\">;</span>","","<span class=\"c\">// TOK_BITXOR</span>","x <span class=\"k\">=</span> a <span class=\"k\">^</span> b <span class=\"k\">^</span> c<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">^</span> b <span class=\"k\">^</span> c <span class=\"k\">^</span> d<span class=\"k\">;</span>","","<span class=\"c\">// TOK_BITAND</span>","x <span class=\"k\">=</span> a <span class=\"k\">&</span> b <span class=\"k\">&</span> c<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">&</span> b <span class=\"k\">&</span> c <span class=\"k\">&</span> d<span class=\"k\">;</span>","","<span class=\"c\">// TOK_EQUOP</span>","x <span class=\"k\">=</span> a <span class=\"k\">==</span> b<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">!=</span> b<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">===</span> b<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">!==</span> b<span class=\"k\">;</span>","","<span class=\"c\">// TOK_RELOP</span>","x <span class=\"k\">=</span> a <span class=\"k\"><</span> b<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\"><=</span> b<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">></span> b<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">>=</span> b<span class=\"k\">;</span>","","<span class=\"c\">// TOK_SHOP</span>","x <span class=\"k\">=</span> a <span class=\"k\"><<</span> b<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">>></span> b<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">>>></span> b<span class=\"k\">;</span>","","<span class=\"c\">/* TOK_PLUS, TOK_MINUS */</span>","x <span class=\"k\">=</span> a <span class=\"k\">+</span> b<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">+</span> b <span class=\"k\">+</span> c<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">+</span> b <span class=\"k\">+</span> c <span class=\"k\">+</span> d<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">-</span> b<span class=\"k\">;</span>","","<span class=\"c\">// TOK_STAR, TOK_DIVOP</span>","x <span class=\"k\">=</span> a <span class=\"k\">*</span> b<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">*</span> b <span class=\"k\">*</span> c<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">*</span> b <span class=\"k\">*</span> c <span class=\"k\">*</span> d<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">/</span> b<span class=\"k\">;</span>","x <span class=\"k\">=</span> a <span class=\"k\">%</span> b<span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-primary.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-primary.js new file mode 100644 index 0000000..c6e46d9 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-primary.js @@ -0,0 +1,21 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-primary.js']) { + _$jscoverage['javascript-primary.js'] = []; + _$jscoverage['javascript-primary.js'][1] = 0; + _$jscoverage['javascript-primary.js'][2] = 0; + _$jscoverage['javascript-primary.js'][3] = 0; + _$jscoverage['javascript-primary.js'][4] = 0; +} +_$jscoverage['javascript-primary.js'][1]++; +x = true; +_$jscoverage['javascript-primary.js'][2]++; +x = false; +_$jscoverage['javascript-primary.js'][3]++; +x = null; +_$jscoverage['javascript-primary.js'][4]++; +x = this; +_$jscoverage['javascript-primary.js'].source = ["x <span class=\"k\">=</span> <span class=\"k\">true</span><span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"k\">false</span><span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"k\">null</span><span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-rb.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-rb.js new file mode 100644 index 0000000..df807b1 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-rb.js @@ -0,0 +1,24 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-rb.js']) { + _$jscoverage['javascript-rb.js'] = []; + _$jscoverage['javascript-rb.js'][1] = 0; + _$jscoverage['javascript-rb.js'][2] = 0; + _$jscoverage['javascript-rb.js'][3] = 0; + _$jscoverage['javascript-rb.js'][4] = 0; + _$jscoverage['javascript-rb.js'][5] = 0; +} +_$jscoverage['javascript-rb.js'][1]++; +x = []; +_$jscoverage['javascript-rb.js'][2]++; +x = [x]; +_$jscoverage['javascript-rb.js'][3]++; +x = [x, y]; +_$jscoverage['javascript-rb.js'][4]++; +x = [x, y,]; +_$jscoverage['javascript-rb.js'][5]++; +x = [x, , y]; +_$jscoverage['javascript-rb.js'].source = ["x <span class=\"k\">=</span> <span class=\"k\">[];</span>","x <span class=\"k\">=</span> <span class=\"k\">[</span>x<span class=\"k\">];</span>","x <span class=\"k\">=</span> <span class=\"k\">[</span>x<span class=\"k\">,</span> y<span class=\"k\">];</span>","x <span class=\"k\">=</span> <span class=\"k\">[</span>x<span class=\"k\">,</span> y<span class=\"k\">,];</span>","x <span class=\"k\">=</span> <span class=\"k\">[</span>x<span class=\"k\">,,</span> y<span class=\"k\">];</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-rc.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-rc.js new file mode 100644 index 0000000..e3108d0 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-rc.js @@ -0,0 +1,15 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-rc.js']) { + _$jscoverage['javascript-rc.js'] = []; + _$jscoverage['javascript-rc.js'][1] = 0; + _$jscoverage['javascript-rc.js'][4] = 0; +} +_$jscoverage['javascript-rc.js'][1]++; +x = {x: y}; +_$jscoverage['javascript-rc.js'][4]++; +x = {x: y, y: x}; +_$jscoverage['javascript-rc.js'].source = ["x <span class=\"k\">=</span> <span class=\"k\">{</span>"," x<span class=\"k\">:</span> y","<span class=\"k\">}</span><span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"k\">{</span>"," x<span class=\"k\">:</span> y<span class=\"k\">,</span>"," y<span class=\"k\">:</span> x","<span class=\"k\">}</span><span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-rp.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-rp.js new file mode 100644 index 0000000..47df295 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-rp.js @@ -0,0 +1,12 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-rp.js']) { + _$jscoverage['javascript-rp.js'] = []; + _$jscoverage['javascript-rp.js'][1] = 0; +} +_$jscoverage['javascript-rp.js'][1]++; +x = a + (b - c); +_$jscoverage['javascript-rp.js'].source = ["x <span class=\"k\">=</span> a <span class=\"k\">+</span> <span class=\"k\">(</span>b <span class=\"k\">-</span> c<span class=\"k\">);</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-special-characters.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-special-characters.js new file mode 100644 index 0000000..0154e86 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-special-characters.js @@ -0,0 +1,30 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-special-characters.js']) { + _$jscoverage['javascript-special-characters.js'] = []; + _$jscoverage['javascript-special-characters.js'][1] = 0; + _$jscoverage['javascript-special-characters.js'][2] = 0; + _$jscoverage['javascript-special-characters.js'][5] = 0; + _$jscoverage['javascript-special-characters.js'][6] = 0; + _$jscoverage['javascript-special-characters.js'][9] = 0; + _$jscoverage['javascript-special-characters.js'][10] = 0; +} +_$jscoverage['javascript-special-characters.js'][1]++; +function f() { + _$jscoverage['javascript-special-characters.js'][2]++; + return "'"; +} +_$jscoverage['javascript-special-characters.js'][5]++; +function g() { + _$jscoverage['javascript-special-characters.js'][6]++; + return "\""; +} +_$jscoverage['javascript-special-characters.js'][9]++; +function h() { + _$jscoverage['javascript-special-characters.js'][10]++; + return "\\"; +} +_$jscoverage['javascript-special-characters.js'].source = ["<span class=\"k\">function</span> f<span class=\"k\">()</span> <span class=\"k\">{</span>","\t<span class=\"k\">return</span> <span class=\"s\">'</span><span class=\"t\">\\'</span><span class=\"s\">'</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","","<span class=\"k\">function</span> g<span class=\"k\">()</span> <span class=\"k\">{</span>","\t<span class=\"k\">return</span> <span class=\"s\">\"</span><span class=\"t\">\\\"</span><span class=\"s\">\"</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","","<span class=\"k\">function</span> h<span class=\"k\">()</span> <span class=\"k\">{</span>","\t<span class=\"k\">return</span> <span class=\"s\">'</span><span class=\"t\">\\\\</span><span class=\"s\">'</span><span class=\"k\">;</span>","<span class=\"k\">}</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-string.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-string.js new file mode 100644 index 0000000..3dbacc8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-string.js @@ -0,0 +1,36 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-string.js']) { + _$jscoverage['javascript-string.js'] = []; + _$jscoverage['javascript-string.js'][1] = 0; + _$jscoverage['javascript-string.js'][2] = 0; + _$jscoverage['javascript-string.js'][3] = 0; + _$jscoverage['javascript-string.js'][4] = 0; + _$jscoverage['javascript-string.js'][5] = 0; + _$jscoverage['javascript-string.js'][6] = 0; + _$jscoverage['javascript-string.js'][7] = 0; + _$jscoverage['javascript-string.js'][8] = 0; + _$jscoverage['javascript-string.js'][10] = 0; +} +_$jscoverage['javascript-string.js'][1]++; +x = ""; +_$jscoverage['javascript-string.js'][2]++; +x = ""; +_$jscoverage['javascript-string.js'][3]++; +x = "x"; +_$jscoverage['javascript-string.js'][4]++; +x = "x"; +_$jscoverage['javascript-string.js'][5]++; +x = "\""; +_$jscoverage['javascript-string.js'][6]++; +x = "'"; +_$jscoverage['javascript-string.js'][7]++; +x = "\b\t\n\u000b\f\r\"'\\"; +_$jscoverage['javascript-string.js'][8]++; +x = new RegExp("x\\(\\)\\\\\\/"); +_$jscoverage['javascript-string.js'][10]++; +x = "foobar"; +_$jscoverage['javascript-string.js'].source = ["x <span class=\"k\">=</span> <span class=\"s\">\"\"</span><span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"s\">''</span><span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"s\">\"x\"</span><span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"s\">'x'</span><span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"s\">\"</span><span class=\"t\">\\\"</span><span class=\"s\">\"</span><span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"s\">'</span><span class=\"t\">\\'</span><span class=\"s\">'</span><span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"s\">\"</span><span class=\"t\">\\b\\t\\n\\v\\f\\r\\\"\\'\\\\</span><span class=\"s\">\"</span><span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"k\">new</span> RegExp<span class=\"k\">(</span><span class=\"s\">'x</span><span class=\"t\">\\\\</span><span class=\"s\">(</span><span class=\"t\">\\\\</span><span class=\"s\">)</span><span class=\"t\">\\\\\\\\\\\\</span><span class=\"s\">/'</span><span class=\"k\">);</span>","","x <span class=\"k\">=</span> <span class=\"s\">'foo</span><span class=\"t\">\\</span>","<span class=\"s\">bar'</span><span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-switch.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-switch.js new file mode 100644 index 0000000..e198d7f --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-switch.js @@ -0,0 +1,55 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-switch.js']) { + _$jscoverage['javascript-switch.js'] = []; + _$jscoverage['javascript-switch.js'][1] = 0; + _$jscoverage['javascript-switch.js'][3] = 0; + _$jscoverage['javascript-switch.js'][4] = 0; + _$jscoverage['javascript-switch.js'][6] = 0; + _$jscoverage['javascript-switch.js'][7] = 0; + _$jscoverage['javascript-switch.js'][8] = 0; + _$jscoverage['javascript-switch.js'][10] = 0; + _$jscoverage['javascript-switch.js'][11] = 0; + _$jscoverage['javascript-switch.js'][14] = 0; + _$jscoverage['javascript-switch.js'][16] = 0; + _$jscoverage['javascript-switch.js'][17] = 0; + _$jscoverage['javascript-switch.js'][18] = 0; + _$jscoverage['javascript-switch.js'][20] = 0; +} +_$jscoverage['javascript-switch.js'][1]++; +switch (x) { +case x: + _$jscoverage['javascript-switch.js'][3]++; + x = 0; + _$jscoverage['javascript-switch.js'][4]++; + break; +case y: + _$jscoverage['javascript-switch.js'][6]++; + x = 0; + _$jscoverage['javascript-switch.js'][7]++; + y = 0; + _$jscoverage['javascript-switch.js'][8]++; + break; +default: + _$jscoverage['javascript-switch.js'][10]++; + x = 0; + _$jscoverage['javascript-switch.js'][11]++; + break; +} +_$jscoverage['javascript-switch.js'][14]++; +switch (x) { +case 1: + _$jscoverage['javascript-switch.js'][16]++; + let y = 1; + _$jscoverage['javascript-switch.js'][17]++; + f(y); + _$jscoverage['javascript-switch.js'][18]++; + break; +case 2: + _$jscoverage['javascript-switch.js'][20]++; + break; +} +_$jscoverage['javascript-switch.js'].source = ["<span class=\"k\">switch</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>","<span class=\"k\">case</span> x<span class=\"k\">:</span>"," x <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>"," <span class=\"k\">break</span><span class=\"k\">;</span>","<span class=\"k\">case</span> y<span class=\"k\">:</span>"," x <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>"," y <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>"," <span class=\"k\">break</span><span class=\"k\">;</span>","<span class=\"k\">default</span><span class=\"k\">:</span>"," x <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>"," <span class=\"k\">break</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","","<span class=\"k\">switch</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>","<span class=\"k\">case</span> <span class=\"s\">1</span><span class=\"k\">:</span>"," <span class=\"k\">let</span> y <span class=\"k\">=</span> <span class=\"s\">1</span><span class=\"k\">;</span>"," f<span class=\"k\">(</span>y<span class=\"k\">);</span>"," <span class=\"k\">break</span><span class=\"k\">;</span>","<span class=\"k\">case</span> <span class=\"s\">2</span><span class=\"k\">:</span>"," <span class=\"k\">break</span><span class=\"k\">;</span>","<span class=\"k\">}</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-throw.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-throw.js new file mode 100644 index 0000000..2acaa17 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-throw.js @@ -0,0 +1,21 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-throw.js']) { + _$jscoverage['javascript-throw.js'] = []; + _$jscoverage['javascript-throw.js'][1] = 0; + _$jscoverage['javascript-throw.js'][2] = 0; + _$jscoverage['javascript-throw.js'][5] = 0; +} +_$jscoverage['javascript-throw.js'][1]++; +try { + _$jscoverage['javascript-throw.js'][2]++; + throw "x"; +} +catch (e) { + _$jscoverage['javascript-throw.js'][5]++; + ; +} +_$jscoverage['javascript-throw.js'].source = ["<span class=\"k\">try</span> <span class=\"k\">{</span>"," <span class=\"k\">throw</span> <span class=\"s\">\"x\"</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","<span class=\"k\">catch</span> <span class=\"k\">(</span>e<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">;</span>","<span class=\"k\">}</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-try.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-try.js new file mode 100644 index 0000000..8111f17 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-try.js @@ -0,0 +1,66 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-try.js']) { + _$jscoverage['javascript-try.js'] = []; + _$jscoverage['javascript-try.js'][1] = 0; + _$jscoverage['javascript-try.js'][3] = 0; + _$jscoverage['javascript-try.js'][4] = 0; + _$jscoverage['javascript-try.js'][7] = 0; + _$jscoverage['javascript-try.js'][10] = 0; + _$jscoverage['javascript-try.js'][11] = 0; + _$jscoverage['javascript-try.js'][14] = 0; + _$jscoverage['javascript-try.js'][17] = 0; + _$jscoverage['javascript-try.js'][18] = 0; + _$jscoverage['javascript-try.js'][21] = 0; + _$jscoverage['javascript-try.js'][24] = 0; + _$jscoverage['javascript-try.js'][25] = 0; + _$jscoverage['javascript-try.js'][28] = 0; + _$jscoverage['javascript-try.js'][31] = 0; +} +_$jscoverage['javascript-try.js'][1]++; +function f() { +} +_$jscoverage['javascript-try.js'][3]++; +try { + _$jscoverage['javascript-try.js'][4]++; + f(); +} +catch (e) { + _$jscoverage['javascript-try.js'][7]++; + f(); +} +_$jscoverage['javascript-try.js'][10]++; +try { + _$jscoverage['javascript-try.js'][11]++; + f(); +} +catch (e if e instanceof E) { + _$jscoverage['javascript-try.js'][14]++; + f(); +} +_$jscoverage['javascript-try.js'][17]++; +try { + _$jscoverage['javascript-try.js'][18]++; + f(); +} +finally { + _$jscoverage['javascript-try.js'][21]++; + f(); +} +_$jscoverage['javascript-try.js'][24]++; +try { + _$jscoverage['javascript-try.js'][25]++; + f(); +} +catch (e) { + _$jscoverage['javascript-try.js'][28]++; + f(); +} +finally { + _$jscoverage['javascript-try.js'][31]++; + f(); +} +_$jscoverage['javascript-try.js'].source = ["<span class=\"k\">function</span> f<span class=\"k\">()</span> <span class=\"k\">{}</span>","","<span class=\"k\">try</span> <span class=\"k\">{</span>"," f<span class=\"k\">();</span>","<span class=\"k\">}</span>","<span class=\"k\">catch</span> <span class=\"k\">(</span>e<span class=\"k\">)</span> <span class=\"k\">{</span>"," f<span class=\"k\">();</span>","<span class=\"k\">}</span>","","<span class=\"k\">try</span> <span class=\"k\">{</span>"," f<span class=\"k\">();</span>","<span class=\"k\">}</span>","<span class=\"k\">catch</span> <span class=\"k\">(</span>e <span class=\"k\">if</span> e <span class=\"k\">instanceof</span> E<span class=\"k\">)</span> <span class=\"k\">{</span>"," f<span class=\"k\">();</span>","<span class=\"k\">}</span>","","<span class=\"k\">try</span> <span class=\"k\">{</span>"," f<span class=\"k\">();</span>","<span class=\"k\">}</span>","<span class=\"k\">finally</span> <span class=\"k\">{</span>"," f<span class=\"k\">();</span>","<span class=\"k\">}</span>","","<span class=\"k\">try</span> <span class=\"k\">{</span>"," f<span class=\"k\">();</span>","<span class=\"k\">}</span>","<span class=\"k\">catch</span> <span class=\"k\">(</span>e<span class=\"k\">)</span> <span class=\"k\">{</span>"," f<span class=\"k\">();</span>","<span class=\"k\">}</span>","<span class=\"k\">finally</span> <span class=\"k\">{</span>"," f<span class=\"k\">();</span>","<span class=\"k\">}</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-unaryop.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-unaryop.js new file mode 100644 index 0000000..ca06e39 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-unaryop.js @@ -0,0 +1,27 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-unaryop.js']) { + _$jscoverage['javascript-unaryop.js'] = []; + _$jscoverage['javascript-unaryop.js'][1] = 0; + _$jscoverage['javascript-unaryop.js'][2] = 0; + _$jscoverage['javascript-unaryop.js'][3] = 0; + _$jscoverage['javascript-unaryop.js'][4] = 0; + _$jscoverage['javascript-unaryop.js'][5] = 0; + _$jscoverage['javascript-unaryop.js'][6] = 0; +} +_$jscoverage['javascript-unaryop.js'][1]++; +x = - x; +_$jscoverage['javascript-unaryop.js'][2]++; +x = + x; +_$jscoverage['javascript-unaryop.js'][3]++; +x = ! x; +_$jscoverage['javascript-unaryop.js'][4]++; +x = ~ x; +_$jscoverage['javascript-unaryop.js'][5]++; +x = typeof x; +_$jscoverage['javascript-unaryop.js'][6]++; +x = void x; +_$jscoverage['javascript-unaryop.js'].source = ["x <span class=\"k\">=</span> <span class=\"k\">-</span>x<span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"k\">+</span>x<span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"k\">!</span>x<span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"k\">~</span>x<span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"k\">typeof</span> x<span class=\"k\">;</span>","x <span class=\"k\">=</span> <span class=\"k\">void</span> x<span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-var.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-var.js new file mode 100644 index 0000000..904bbcf --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-var.js @@ -0,0 +1,15 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-var.js']) { + _$jscoverage['javascript-var.js'] = []; + _$jscoverage['javascript-var.js'][1] = 0; + _$jscoverage['javascript-var.js'][2] = 0; +} +_$jscoverage['javascript-var.js'][1]++; +var x; +_$jscoverage['javascript-var.js'][2]++; +var y = x, z = x; +_$jscoverage['javascript-var.js'].source = ["<span class=\"k\">var</span> x<span class=\"k\">;</span>","<span class=\"k\">var</span> y <span class=\"k\">=</span> x<span class=\"k\">,</span> z <span class=\"k\">=</span> x<span class=\"k\">;</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-while.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-while.js new file mode 100644 index 0000000..b15afa2 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-while.js @@ -0,0 +1,79 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-while.js']) { + _$jscoverage['javascript-while.js'] = []; + _$jscoverage['javascript-while.js'][1] = 0; + _$jscoverage['javascript-while.js'][2] = 0; + _$jscoverage['javascript-while.js'][5] = 0; + _$jscoverage['javascript-while.js'][6] = 0; + _$jscoverage['javascript-while.js'][9] = 0; + _$jscoverage['javascript-while.js'][10] = 0; + _$jscoverage['javascript-while.js'][12] = 0; + _$jscoverage['javascript-while.js'][13] = 0; + _$jscoverage['javascript-while.js'][15] = 0; + _$jscoverage['javascript-while.js'][16] = 0; + _$jscoverage['javascript-while.js'][17] = 0; + _$jscoverage['javascript-while.js'][21] = 0; + _$jscoverage['javascript-while.js'][23] = 0; + _$jscoverage['javascript-while.js'][24] = 0; + _$jscoverage['javascript-while.js'][28] = 0; + _$jscoverage['javascript-while.js'][29] = 0; + _$jscoverage['javascript-while.js'][30] = 0; + _$jscoverage['javascript-while.js'][31] = 0; + _$jscoverage['javascript-while.js'][32] = 0; +} +_$jscoverage['javascript-while.js'][1]++; +while (x) { + _$jscoverage['javascript-while.js'][2]++; + x(); +} +_$jscoverage['javascript-while.js'][5]++; +while (x) { + _$jscoverage['javascript-while.js'][6]++; + ; +} +_$jscoverage['javascript-while.js'][9]++; +while (x) { + _$jscoverage['javascript-while.js'][10]++; + x(); +} +_$jscoverage['javascript-while.js'][12]++; +while (x) { + _$jscoverage['javascript-while.js'][13]++; + ; +} +_$jscoverage['javascript-while.js'][15]++; +while (x) { + _$jscoverage['javascript-while.js'][16]++; + if (x) { + _$jscoverage['javascript-while.js'][17]++; + continue; + } +} +_$jscoverage['javascript-while.js'][21]++; +label: +while (x) { + _$jscoverage['javascript-while.js'][23]++; + if (x) { + _$jscoverage['javascript-while.js'][24]++; + continue label; + } +} +_$jscoverage['javascript-while.js'][28]++; +label2: +{ + _$jscoverage['javascript-while.js'][29]++; + f(); + _$jscoverage['javascript-while.js'][30]++; + while (x) { + _$jscoverage['javascript-while.js'][31]++; + if (x) { + _$jscoverage['javascript-while.js'][32]++; + break label2; + } +} +} +_$jscoverage['javascript-while.js'].source = ["<span class=\"k\">while</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>"," x<span class=\"k\">();</span>","<span class=\"k\">}</span>","","<span class=\"k\">while</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">;</span>","<span class=\"k\">}</span>","","<span class=\"k\">while</span> <span class=\"k\">(</span>x<span class=\"k\">)</span>"," x<span class=\"k\">();</span>","","<span class=\"k\">while</span> <span class=\"k\">(</span>x<span class=\"k\">)</span>"," <span class=\"k\">;</span>","","<span class=\"k\">while</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">if</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">continue</span><span class=\"k\">;</span>"," <span class=\"k\">}</span>","<span class=\"k\">}</span>","","label<span class=\"k\">:</span>","<span class=\"k\">while</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">if</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">continue</span> label<span class=\"k\">;</span>"," <span class=\"k\">}</span>","<span class=\"k\">}</span>","","label2<span class=\"k\">:</span> <span class=\"k\">{</span>"," f<span class=\"k\">();</span>"," <span class=\"k\">while</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">if</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>"," <span class=\"k\">break</span> label2<span class=\"k\">;</span>"," <span class=\"k\">}</span>"," <span class=\"k\">}</span>","<span class=\"k\">}</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-with.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-with.js new file mode 100644 index 0000000..52aea68 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.expected/javascript-with.js @@ -0,0 +1,30 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['javascript-with.js']) { + _$jscoverage['javascript-with.js'] = []; + _$jscoverage['javascript-with.js'][1] = 0; + _$jscoverage['javascript-with.js'][2] = 0; + _$jscoverage['javascript-with.js'][4] = 0; + _$jscoverage['javascript-with.js'][5] = 0; + _$jscoverage['javascript-with.js'][8] = 0; + _$jscoverage['javascript-with.js'][9] = 0; +} +_$jscoverage['javascript-with.js'][1]++; +function f() { +} +_$jscoverage['javascript-with.js'][2]++; +var x = {}; +_$jscoverage['javascript-with.js'][4]++; +with (x) { + _$jscoverage['javascript-with.js'][5]++; + f(); +} +_$jscoverage['javascript-with.js'][8]++; +with (x) { + _$jscoverage['javascript-with.js'][9]++; + f(); +} +_$jscoverage['javascript-with.js'].source = ["<span class=\"k\">function</span> f<span class=\"k\">()</span> <span class=\"k\">{}</span>","<span class=\"k\">var</span> x <span class=\"k\">=</span> <span class=\"k\">{}</span><span class=\"k\">;</span>","","<span class=\"k\">with</span> <span class=\"k\">(</span>x<span class=\"k\">)</span> <span class=\"k\">{</span>"," f<span class=\"k\">();</span>","<span class=\"k\">}</span>","","<span class=\"k\">with</span> <span class=\"k\">(</span>x<span class=\"k\">)</span>"," f<span class=\"k\">();</span>"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript.sh b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.sh new file mode 100755 index 0000000..6209a0f --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript.sh @@ -0,0 +1,53 @@ +#!/bin/sh +# javascript.sh - test various JavaScript constructs +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +trap 'rm -fr DIR' 1 2 3 15 + +export PATH=.:..:$PATH + +if jscoverage-server --version | grep -q 'iconv\|MultiByteToWideChar' +then + character_encoding_support=yes +else + character_encoding_support=no +fi + +rm -fr DIR +case "$character_encoding_support" in + yes) + $VALGRIND jscoverage --js-version 180 --encoding ISO-8859-1 javascript DIR + ;; + *) + $VALGRIND jscoverage --js-version=180 --exclude=javascript-iso-8859-1.js javascript DIR + ;; +esac +for i in javascript/*.js +do + if [ $character_encoding_support = no -a $i = javascript/javascript-iso-8859-1.js ] + then + continue + fi + FILE=${i##javascript/} + EXPECTED=javascript.expected/${FILE} + ACTUAL=DIR/${FILE} + diff -u -r --strip-trailing-cr $EXPECTED $ACTUAL +done + +# rm -fr DIR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-array-comprehension.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-array-comprehension.js new file mode 100644 index 0000000..2d9b048 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-array-comprehension.js @@ -0,0 +1,14 @@ +// https://developer.mozilla.org/en/New_in_JavaScript_1.7 + +function range(begin, end) { + for (let i = begin; i < end; ++i) { + yield i; + } +} +var ten_squares = [i * i for each (i in range(0, 10))]; +var evens = [i for each (i in range(0, 21)) if (i % 2 == 0)]; + +// test optimization +var optimized = [i for each (i in x) if (0)]; + +[i for each (a in x) for each (b in y)] diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-assign.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-assign.js new file mode 100644 index 0000000..d17bdd1 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-assign.js @@ -0,0 +1,14 @@ +var x = 1; +var y = 1; +x = y; +x += y; +x -= y; +x *= y; +x %= y; +x <<= y; +x >>= y; +x >>>= y; +x &= y; +x |= y; +x ^= y; +x /= y; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-colon.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-colon.js new file mode 100644 index 0000000..69bade1 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-colon.js @@ -0,0 +1,7 @@ +x: + y = 0; + +y: { + let y = 1; + print(y); +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-comma.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-comma.js new file mode 100644 index 0000000..15c162c --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-comma.js @@ -0,0 +1 @@ +x = y, y = x; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-cr.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-cr.js new file mode 100644 index 0000000..fad02c7 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-cr.js @@ -0,0 +1 @@ +/*
This file has CR line endings.
*/
var x = 1;
\ No newline at end of file diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-crlf.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-crlf.js new file mode 100644 index 0000000..53dcd0e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-crlf.js @@ -0,0 +1,4 @@ +/*
+This file has CRLF line endings.
+*/
+var x = 1;
diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-debugger.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-debugger.js new file mode 100644 index 0000000..dc33421 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-debugger.js @@ -0,0 +1,6 @@ +try { + f(); +} +catch (e) { + debugger; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-dec.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-dec.js new file mode 100644 index 0000000..46d5bc3 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-dec.js @@ -0,0 +1,2 @@ +x--; +--x; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-delete.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-delete.js new file mode 100644 index 0000000..ae9a3d0 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-delete.js @@ -0,0 +1 @@ +delete x; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-destructuring.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-destructuring.js new file mode 100644 index 0000000..c8cf4c9 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-destructuring.js @@ -0,0 +1,42 @@ +// https://developer.mozilla.org/en/New_in_JavaScript_1.7 + +[a, b] = [b, a]; + +function f() { + return [1, 2]; +} +[a, b] = f(); + +for (let [name, value] in Iterator(obj)) { + print(name); + print(value); +} + +for each (let {name: n, family: { father: f } } in people) { + print(n); + print(f); +} + +var [a, , b] = f(); +[,,,] = f(); + +function g() { + var parsedURL = /^(\w+)\:\/\/([^\/]+)\/(.*)$/.exec(url); + if (!parsedURL) + return null; + var [, protocol, fullhost, fullpath] = parsedURL; +} + +function h(a, [b, c], {foo: d, 'bar': e}) { + f(); + g(); +} + +x = function([a, b]) a + b; + +({x: x0, y: y0}) = point; +var {x: x0, y: y0} = point; +let ({x: x0, y: y0} = point) { + print(x0); + print(y0); +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-do.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-do.js new file mode 100644 index 0000000..e6bbee9 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-do.js @@ -0,0 +1,10 @@ +var x; + +do { + x = false; +} +while (x); + +do + x = false; +while (x); diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-dot.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-dot.js new file mode 100644 index 0000000..0b35cdc --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-dot.js @@ -0,0 +1,8 @@ +x.y = y.x; +x["y"] = y["x"]; +x[y] = y[x]; +x['2y'] = y['var']; +x[''] = y[""]; + +print(123.0.toString()); +({}.toString()); diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-empty.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-empty.js new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-empty.js diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-for.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-for.js new file mode 100644 index 0000000..166b586 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-for.js @@ -0,0 +1,22 @@ +for (i in x) { + x(); +} + +for (var i in x) { + x(); +} + +for (i = 0; i < x; i++) { + x(); +} + +for (var j = 0; j < x; j++) { + x(); +} + +for (i in x) + x(); + +for (i.value in x) { + x(); +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-foreach.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-foreach.js new file mode 100644 index 0000000..52cb266 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-foreach.js @@ -0,0 +1,8 @@ +/* +https://developer.mozilla.org/en/Core_JavaScript_1.5_Guide/Object_Manipulation_Statements +https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Statements/for_each...in +*/ + +for each (var item in obj) { + sum += item; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-function.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-function.js new file mode 100644 index 0000000..94fc8bd --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-function.js @@ -0,0 +1,38 @@ +function x() {} + +function x() { + ; +} + +function x() { + x(); + return 'x'; +} + +function x(a) { + x(); +} + +function x(a, b) { + x(); +} + +x = function() { + x(); +}; + +(function () { + print('x'); +})(); + +(function (a) { + print('x'); +})(1); + +(function (a, b) { + print('x'); +})(1, 2); + +(function () { + print('x'); +}).call(window); diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-generator-expression.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-generator-expression.js new file mode 100644 index 0000000..cafec77 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-generator-expression.js @@ -0,0 +1,18 @@ +// https://developer.mozilla.org/en/New_in_JavaScript_1.8 + +let it = (i + 3 for (i in someObj)); +try { + while (true) { + document.write(it.next() + "<br>\n"); + } +} catch (err if err instanceof StopIteration) { + document.write("End of record.<br>\n"); +} + +function handleResults( results ) { + for ( let i in results ) + ; +} +handleResults( i for ( i in obj ) if ( i > 3 ) ); + +it = (1 for(a in x) for(b in y)); diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-generator.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-generator.js new file mode 100644 index 0000000..6c1f32a --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-generator.js @@ -0,0 +1,11 @@ +// https://developer.mozilla.org/en/New_in_JavaScript_1.7 + +function fib() { + var i = 0, j = 1; + while (true) { + yield i; + var t = i; + i = j; + j += t; + } +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-getter-setter.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-getter-setter.js new file mode 100644 index 0000000..31fca86 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-getter-setter.js @@ -0,0 +1,19 @@ +var o = { + _x: 123, + get x() { + return this._x; + }, + set x(value) { + this._x = value; + } +}; + +o = { + _x: 123, + get x get_x() { + return this._x; + }, + set x set_x(value) { + this._x = value; + } +}; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-hook.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-hook.js new file mode 100644 index 0000000..0e690f8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-hook.js @@ -0,0 +1,2 @@ +var x = 1; +var y = x === 1? "x": "y"; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-if.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-if.js new file mode 100644 index 0000000..43d489e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-if.js @@ -0,0 +1,30 @@ +var x = 0; + +if (x) + x = 0; + +if (x) { + x = 0; +} + +if (x) + x = 0; +else + x = 0; + +if (x) { + x = 0; +} +else { + x = 0; +} + +if (x) { + x = 0; +} +else if (x) { + x = 0; +} +else { + x = 0; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-in.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-in.js new file mode 100644 index 0000000..75ba66e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-in.js @@ -0,0 +1,4 @@ +var x = {}; +if ('a' in x) { + x = null; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-inc.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-inc.js new file mode 100644 index 0000000..065c7bf --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-inc.js @@ -0,0 +1,2 @@ +x++; +++x; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-iso-8859-1.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-iso-8859-1.js new file mode 100644 index 0000000..2658cee --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-iso-8859-1.js @@ -0,0 +1,2 @@ +var s = 'eèéê'; +var r = /eèéê/; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-lambda.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-lambda.js new file mode 100644 index 0000000..0e5062f --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-lambda.js @@ -0,0 +1,3 @@ +// https://developer.mozilla.org/en/New_in_JavaScript_1.8 + +var square = function(x) x * x; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-let.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-let.js new file mode 100644 index 0000000..7bb777b --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-let.js @@ -0,0 +1,79 @@ +// https://developer.mozilla.org/en/New_in_JavaScript_1.7 + +// let statement + +let (x = x+10, y = 12) { + print(x+y + "\n"); +} + +// let expressions + +print( let(x = x + 10, y = 12) x+y + "<br>\n"); + +// let definitions + +if (x > y) { + let gamma = 12.7 + y; + i = gamma * x; +} + +var list = document.getElementById("list"); + +for (var i = 1; i <= 5; i++) { + var item = document.createElement("LI"); + item.appendChild(document.createTextNode("Item " + i)); + + let j = i; + item.onclick = function (ev) { + alert("Item " + j + " is clicked."); + }; + list.appendChild(item); +} + +function varTest() { + var x = 31; + if (true) { + var x = 71; // same variable! + alert(x); // 71 + } + alert(x); // 71 +} + +function letTest() { + let x = 31; + if (true) { + let x = 71; // different variable + alert(x); // 71 + } + alert(x); // 31 +} + +function letTests() { + let x = 10; + + // let-statement + let (x = x + 20) { + alert(x); // 30 + } + + // let-expression + alert(let (x = x + 20) x); // 30 + + // let-definition + { + let x = x + 20; // x here evaluates to undefined + alert(x); // undefined + 20 ==> NaN + } +} + +var x = 'global'; +let x = 42; +document.write(this.x + "<br>\n"); + +// let-scoped variables in for loops +var i=0; +for ( let i=i ; i < 10 ; i++ ) + document.write(i + "<br>\n"); + +for ( let [name,value] in obj ) + document.write("Name: " + name + ", Value: " + value + "<br>\n"); diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-lf.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-lf.js new file mode 100644 index 0000000..2741068 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-lf.js @@ -0,0 +1,4 @@ +/* +This file has LF line endings. +*/ +var x = 1; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-new.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-new.js new file mode 100644 index 0000000..6801585 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-new.js @@ -0,0 +1,4 @@ +function X() {} +x = new X(); +x = new X(1); +x = new X(1, 2); diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-number.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-number.js new file mode 100644 index 0000000..95603d7 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-number.js @@ -0,0 +1,19 @@ +x = 1; +y = 2; +z = 10.5; + +a = 1 / 0; +a = -1 / 0; + +a = 0; +a = -0; + +a = 0 / 0; +a = 0 / -0; +a = 0 / (-0); +a = -0 / 0; +a = (-0) / 0; +a = -0 / -0; +a = -0 / (-0); +a = (-0) / -0; +a = (-0) / (-0); diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-object.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-object.js new file mode 100644 index 0000000..83ce7be --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-object.js @@ -0,0 +1,2 @@ +x = /x\(\)\\\//i; +y = /\u0001\u002f/gm; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-op.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-op.js new file mode 100644 index 0000000..9c6e8bb --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-op.js @@ -0,0 +1,55 @@ +var a = 1, b = 1, c = 1, d = 1; + +/* TOK_OR */ +x = a || b || c; +x = a || b || c || d; + +/* TOK_AND */ +x = a && b && c; +x = a && b && c && d; + +x = a && b || c; + +x = a || b && c; + +// TOK_BITOR +x = a | b | c; +x = a | b | c | d; + +// TOK_BITXOR +x = a ^ b ^ c; +x = a ^ b ^ c ^ d; + +// TOK_BITAND +x = a & b & c; +x = a & b & c & d; + +// TOK_EQUOP +x = a == b; +x = a != b; +x = a === b; +x = a !== b; + +// TOK_RELOP +x = a < b; +x = a <= b; +x = a > b; +x = a >= b; + +// TOK_SHOP +x = a << b; +x = a >> b; +x = a >>> b; + +/* TOK_PLUS, TOK_MINUS */ +x = a + b; +x = a + b + c; +x = a + b + c + d; +x = a - b; + +// TOK_STAR, TOK_DIVOP +x = a * b; +x = a * b * c; +x = a * b * c * d; +x = a / b; +x = a % b; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-primary.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-primary.js new file mode 100644 index 0000000..9a7bc4e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-primary.js @@ -0,0 +1,4 @@ +x = true; +x = false; +x = null; +x = this; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-rb.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-rb.js new file mode 100644 index 0000000..57e897c --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-rb.js @@ -0,0 +1,5 @@ +x = []; +x = [x]; +x = [x, y]; +x = [x, y,]; +x = [x,, y]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-rc.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-rc.js new file mode 100644 index 0000000..f654a9a --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-rc.js @@ -0,0 +1,7 @@ +x = { + x: y +}; +x = { + x: y, + y: x +}; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-rp.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-rp.js new file mode 100644 index 0000000..2e17573 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-rp.js @@ -0,0 +1 @@ +x = a + (b - c); diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-special-characters.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-special-characters.js new file mode 100644 index 0000000..dc8ec36 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-special-characters.js @@ -0,0 +1,11 @@ +function f() {
+ return '\'';
+}
+
+function g() {
+ return "\"";
+}
+
+function h() {
+ return '\\';
+}
diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-string.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-string.js new file mode 100644 index 0000000..463824a --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-string.js @@ -0,0 +1,11 @@ +x = ""; +x = ''; +x = "x"; +x = 'x'; +x = "\""; +x = '\''; +x = "\b\t\n\v\f\r\"\'\\"; +x = new RegExp('x\\(\\)\\\\\\/'); + +x = 'foo\ +bar'; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-switch.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-switch.js new file mode 100644 index 0000000..bb6e01e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-switch.js @@ -0,0 +1,21 @@ +switch (x) { +case x: + x = 0; + break; +case y: + x = 0; + y = 0; + break; +default: + x = 0; + break; +} + +switch (x) { +case 1: + let y = 1; + f(y); + break; +case 2: + break; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-throw.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-throw.js new file mode 100644 index 0000000..1fc73c4 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-throw.js @@ -0,0 +1,6 @@ +try { + throw "x"; +} +catch (e) { + ; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-try.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-try.js new file mode 100644 index 0000000..47a5de4 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-try.js @@ -0,0 +1,32 @@ +function f() {} + +try { + f(); +} +catch (e) { + f(); +} + +try { + f(); +} +catch (e if e instanceof E) { + f(); +} + +try { + f(); +} +finally { + f(); +} + +try { + f(); +} +catch (e) { + f(); +} +finally { + f(); +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-unaryop.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-unaryop.js new file mode 100644 index 0000000..0173913 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-unaryop.js @@ -0,0 +1,6 @@ +x = -x; +x = +x; +x = !x; +x = ~x; +x = typeof x; +x = void x; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-var.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-var.js new file mode 100644 index 0000000..4902a44 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-var.js @@ -0,0 +1,2 @@ +var x; +var y = x, z = x; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-while.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-while.js new file mode 100644 index 0000000..f1ec6b5 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-while.js @@ -0,0 +1,35 @@ +while (x) { + x(); +} + +while (x) { + ; +} + +while (x) + x(); + +while (x) + ; + +while (x) { + if (x) { + continue; + } +} + +label: +while (x) { + if (x) { + continue label; + } +} + +label2: { + f(); + while (x) { + if (x) { + break label2; + } + } +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-with.js b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-with.js new file mode 100644 index 0000000..58fd1ac --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/javascript/javascript-with.js @@ -0,0 +1,9 @@ +function f() {} +var x = {}; + +with (x) { + f(); +} + +with (x) + f(); diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/json-cmp.js b/tools/node_modules/expresso/deps/jscoverage/tests/json-cmp.js new file mode 100644 index 0000000..37e9144 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/json-cmp.js @@ -0,0 +1,65 @@ +/* + json-cmp.js - compare JSON files + Copyright (C) 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +function json_equals(json1, json2) { + if (json1 === null || json2 === null) { + return json1 === json2; + } + else if (json1.constructor === Array && json2.constructor === Array) { + if (json1.length !== json2.length) { + return false; + } + var length = json1.length; + for (var i = 0; i < length; i++) { + if (! json_equals(json1[i], json2[i])) { + return false; + } + } + return true; + } + else if (typeof(json1) === 'object' && typeof(json2) === 'object') { + var i; + for (i in json1) { + if (! (i in json2)) { + return false; + } + if (! json_equals(json1[i], json2[i])) { + return false; + } + } + for (i in json2) { + if (! (i in json1)) { + return false; + } + } + return true; + } + else { + return json1 === json2; + } +} + +if (json_equals(EXPECTED, ACTUAL)) { + quit(0); +} +else { + print(EXPECTED.toSource()); + print(ACTUAL.toSource()); + quit(1); +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/json.c b/tools/node_modules/expresso/deps/jscoverage/tests/json.c new file mode 100644 index 0000000..3522d86 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/json.c @@ -0,0 +1,48 @@ +/* + json.c - test JSON manipulation + Copyright (C) 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <assert.h> +#include <stdlib.h> +#include <string.h> + +#include "instrument-js.h" +#include "stream.h" +#include "util.h" + +bool jscoverage_highlight = true; + +int main(void) { + jscoverage_init(); + + Stream * stream = Stream_new(0); + + FILE * f = xfopen("store.json", "r"); + Stream_write_file_contents(stream, f); + fclose(f); + + Coverage * coverage = Coverage_new(); + int result = jscoverage_parse_json(coverage, stream->data, stream->length); + assert(result == 0); + + Coverage_delete(coverage); + Stream_delete(stream); + jscoverage_cleanup(); + + exit(EXIT_SUCCESS); +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/json.sh b/tools/node_modules/expresso/deps/jscoverage/tests/json.sh new file mode 100755 index 0000000..2f84d4d --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/json.sh @@ -0,0 +1,19 @@ +#!/bin/sh +# json.sh - test JSON parsing +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +$VALGRIND ./json diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/mkdirs.c b/tools/node_modules/expresso/deps/jscoverage/tests/mkdirs.c new file mode 100644 index 0000000..027cff6 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/mkdirs.c @@ -0,0 +1,42 @@ +/* + mkdirs.c - test `mkdirs' function + Copyright (C) 2007, 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <assert.h> +#include <stdlib.h> +#include <string.h> + +#include "util.h" + +void cleanup(void) { + system("rm -fr DIR"); +} + +int main(void) { + atexit(cleanup); + + system("rm -fr DIR"); + + mkdirs("DIR/a/b"); + + struct stat buf; + xstat("DIR/a/b", &buf); + assert(S_ISDIR(buf.st_mode)); + + exit(EXIT_SUCCESS); +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/mkdirs.sh b/tools/node_modules/expresso/deps/jscoverage/tests/mkdirs.sh new file mode 100755 index 0000000..f1dc922 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/mkdirs.sh @@ -0,0 +1,19 @@ +#!/bin/sh +# mkdirs.sh - test `mkdirs' function +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +$VALGRIND ./mkdirs diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/netcat.pl b/tools/node_modules/expresso/deps/jscoverage/tests/netcat.pl new file mode 100644 index 0000000..5df75be --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/netcat.pl @@ -0,0 +1,35 @@ +use strict;
+use warnings;
+
+use Socket;
+
+binmode(STDIN);
+$| = 1;
+binmode(STDOUT);
+
+if (@ARGV != 2) {
+ die "Usage: netcat.pl HOST PORT\n";
+}
+
+my $host = shift;
+my $port = shift;
+
+my $address = inet_aton($host) or die;
+my $address_and_port = sockaddr_in($port, $address);
+my $protocol = getprotobyname('tcp');
+socket(SOCKET, PF_INET, SOCK_STREAM, $protocol) or die;
+
+my $old = select(SOCKET);
+$| = 1;
+select($old);
+binmode(SOCKET);
+
+connect(SOCKET, $address_and_port) or die;
+while (<STDIN>) {
+ print SOCKET $_;
+}
+while (<SOCKET>) {
+ print;
+}
+close(SOCKET);
+exit 0;
\ No newline at end of file diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/no-arguments.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/no-arguments.expected.err new file mode 100644 index 0000000..c6e2707 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/no-arguments.expected.err @@ -0,0 +1,2 @@ +jscoverage: missing argument +Try `jscoverage --help' for more information. diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/no-arguments.sh b/tools/node_modules/expresso/deps/jscoverage/tests/no-arguments.sh new file mode 100755 index 0000000..73eb586 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/no-arguments.sh @@ -0,0 +1,29 @@ +#!/bin/sh +# no-arguments.sh - test jscoverage with no arguments +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +export PATH=.:..:$PATH + +trap 'rm -fr OUT ERR' 1 2 3 15 + +$VALGRIND jscoverage > OUT 2> ERR && exit 1 +test ! -s OUT +diff --strip-trailing-cr no-arguments.expected.err ERR + +rm -fr OUT ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/no-instrument-requires-argument.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/no-instrument-requires-argument.expected.err new file mode 100644 index 0000000..fdceb30 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/no-instrument-requires-argument.expected.err @@ -0,0 +1,2 @@ +jscoverage: --no-instrument: option requires an argument +Try `jscoverage --help' for more information. diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-request-body.sh b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-request-body.sh new file mode 100755 index 0000000..0532f38 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-request-body.sh @@ -0,0 +1,58 @@ +#!/bin/sh +# proxy-bad-request-body.sh - test jscoverage-server --proxy with a bad request body +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${proxy_server_port}/jscoverage-shutdown" > /dev/null + wait $proxy_server_pid +} + +shutdown_perl() { + wget -q -O- --post-data= http://127.0.0.1:8000/perl-shutdown > /dev/null + wait $origin_server_pid +} + +cleanup() { + shutdown + shutdown_perl +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +cd recursive +perl ../server.pl > /dev/null 2> /dev/null & +origin_server_pid=$! +cd .. + +$VALGRIND jscoverage-server --proxy > OUT 2> ERR & +proxy_server_pid=$! +proxy_server_port=8080 + +sleep $delay + +./http-client-bad-body 8080 http://127.0.0.1:8000/ diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-response-body-javascript.sh b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-response-body-javascript.sh new file mode 100755 index 0000000..df63686 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-response-body-javascript.sh @@ -0,0 +1,53 @@ +#!/bin/sh +# proxy-bad-response-body-javascript.sh - test jscoverage-server --proxy with bad JavaScript response body +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${proxy_server_port}/jscoverage-shutdown" > /dev/null + wait $proxy_server_pid + kill -9 $origin_server_pid +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +./http-server-bad-body & +origin_server_pid=$! + +$VALGRIND jscoverage-server --proxy > OUT 2> ERR & +proxy_server_pid=$! +proxy_server_port=8080 + +sleep $delay + +echo 200 > EXPECTED +! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://127.0.0.1:8000/script.js 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-response-body.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-response-body.expected.err new file mode 100644 index 0000000..9dd02ee --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-response-body.expected.err @@ -0,0 +1 @@ +Warning: error copying response body from server to client diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-response-body.sh b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-response-body.sh new file mode 100755 index 0000000..aace044 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-response-body.sh @@ -0,0 +1,54 @@ +#!/bin/sh +# proxy-bad-response-body.sh - test jscoverage-server --proxy with bad response body +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${proxy_server_port}/jscoverage-shutdown" > /dev/null + wait $proxy_server_pid + kill -9 $origin_server_pid +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +./http-server-bad-body & +origin_server_pid=$! + +$VALGRIND jscoverage-server --proxy > OUT 2> ERR & +proxy_server_pid=$! +proxy_server_port=8080 + +sleep $delay + +echo 200 > EXPECTED +! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://127.0.0.1:8000/index.html 2> /dev/null > ACTUAL +diff --strip-trailing-cr EXPECTED ACTUAL +diff --strip-trailing-cr proxy-bad-response-body.expected.err ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-response-headers.sh b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-response-headers.sh new file mode 100755 index 0000000..e21e22a --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-bad-response-headers.sh @@ -0,0 +1,53 @@ +#!/bin/sh +# proxy-bad-response-headers.sh - test jscoverage-server --proxy with bad response headers +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${proxy_server_port}/jscoverage-shutdown" > /dev/null + wait $proxy_server_pid + kill -9 $origin_server_pid +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +./http-server-bad-headers & +origin_server_pid=$! + +$VALGRIND jscoverage-server --proxy > OUT 2> ERR & +proxy_server_pid=$! +proxy_server_port=8080 + +sleep $delay + +echo 502 > EXPECTED +! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://127.0.0.1:8000/index.html 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/proxy-no-server.sh b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-no-server.sh new file mode 100755 index 0000000..75f34f6 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-no-server.sh @@ -0,0 +1,49 @@ +#!/bin/sh +# proxy-no-server.sh - test jscoverage-server --proxy without origin server +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${proxy_server_port}/jscoverage-shutdown" > /dev/null + wait $proxy_server_pid +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +$VALGRIND jscoverage-server --proxy > OUT 2> ERR & +proxy_server_pid=$! +proxy_server_port=8080 + +sleep $delay + +echo 504 > EXPECTED +! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://127.0.0.1:1/index.html 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/proxy-url.sh b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-url.sh new file mode 100755 index 0000000..413f116 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/proxy-url.sh @@ -0,0 +1,67 @@ +#!/bin/sh +# proxy-url.sh - test jscoverage-server --proxy with different URLs +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${proxy_server_port}/jscoverage-shutdown" > /dev/null + wait $proxy_server_pid + if [ "$origin_server_pid" != "" ] + then + kill -9 $origin_server_pid + fi +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +$VALGRIND jscoverage-server --proxy > OUT 2> ERR & +proxy_server_pid=$! +proxy_server_port=8080 + +sleep $delay + +echo 504 > EXPECTED +! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://127.0.0.1:/index.html 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL + +./http-client-bad-url 8080 http://127.0.0.1:123456/index.html +./http-client-bad-url 8080 http://127.0.0.1:xyz/index.html + +cd recursive +perl ../server.pl > /dev/null 2> /dev/null & +origin_server_pid=$! +cd .. + +sleep $delay + +./http-client-bad-url 8080 http://127.0.0.1:8000 +./http-client-bad-url 8080 'http://127.0.0.1:8000?foo' +./http-client-bad-url 8080 'foo' diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/proxy.sh b/tools/node_modules/expresso/deps/jscoverage/tests/proxy.sh new file mode 100755 index 0000000..903ab62 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/proxy.sh @@ -0,0 +1,143 @@ +#!/bin/sh +# proxy.sh - test jscoverage-server --proxy +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${proxy_server_port}/jscoverage-shutdown" > /dev/null + wait $proxy_server_pid +} + +shutdown_perl() { + wget -q -O- --post-data= http://127.0.0.1:8000/perl-shutdown > /dev/null + wait $origin_server_pid +} + +cleanup() { + rm -fr EXPECTED ACTUAL DIR OUT + shutdown + shutdown_perl +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +cd recursive +perl ../server.pl > /dev/null 2> /dev/null & +origin_server_pid=$! +cd .. + +rm -fr DIR +mkdir DIR +$VALGRIND jscoverage-server --no-highlight --proxy --report-dir=DIR > OUT 2> ERR & +proxy_server_pid=$! +proxy_server_port=8080 + +sleep $delay + +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/index.html | diff recursive/index.html - +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/style.css | diff recursive/style.css - +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/unix.txt | diff recursive/unix.txt - +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/windows.txt | diff recursive/windows.txt - +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/image.png | diff recursive/image.png - +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/x | diff recursive/x - +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/1/1.html | diff recursive/1/1.html - +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/1/1.css | diff recursive/1/1.css - +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/1/2/2.html | diff recursive/1/2/2.html - +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/1/2/2.css | diff recursive/1/2/2.css - + +# test localhost +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://localhost:8000/index.html | diff recursive/index.html - + +# test actual hostname +h=`hostname` +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://${h}:8000/index.html | diff recursive/index.html - + +# test query string +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/index.html?foo | diff recursive/index.html - + +# test POST +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' --post-file=recursive/index.html http://127.0.0.1:8000/ | diff recursive/index.html - + +# test javascript +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/script.js > OUT +cat ../report.js recursive.expected/script.js | sed 's/@PREFIX@/http:\/\/127.0.0.1:8000\//g' | diff --strip-trailing-cr - OUT +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/1/1.js > OUT +cat ../report.js recursive.expected/1/1.js | sed 's/@PREFIX@/http:\/\/127.0.0.1:8000\//g' | diff --strip-trailing-cr - OUT +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/1/2/2.js > OUT +cat ../report.js recursive.expected/1/2/2.js | sed 's/@PREFIX@/http:\/\/127.0.0.1:8000\//g' | diff --strip-trailing-cr - OUT + +## test jscoverage +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://siliconforks.com/jscoverage.html | diff ../jscoverage.html - +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://siliconforks.com/jscoverage.css | diff ../jscoverage.css - +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://siliconforks.com/jscoverage-throbber.gif | diff ../jscoverage-throbber.gif - +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://siliconforks.com/jscoverage.js > OUT +echo -e 'jscoverage_isServer = true;\r' | cat ../jscoverage.js - | diff - OUT + +# load/store +wget -q -O- -e 'http_proxy=http://127.0.0.1:8080/' --post-data='{}' http://siliconforks.com/jscoverage-store > /dev/null +echo -n '{}' | diff - DIR/jscoverage.json +diff ../jscoverage.html DIR/jscoverage.html +diff ../jscoverage.css DIR/jscoverage.css +diff ../jscoverage-throbber.gif DIR/jscoverage-throbber.gif +echo -e 'jscoverage_isReport = true;\r' | cat ../jscoverage.js - | diff - DIR/jscoverage.js + +# send it an FTP request +echo 400 > EXPECTED +! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 ftp://ftp.example.com 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL + +# nonexistent domain +echo 504 > EXPECTED +! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://nonexistent 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL + +# 404 not found +echo 404 > EXPECTED +! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://127.0.0.1:8000/missing 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL +echo 404 > EXPECTED +! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://siliconforks.com/jscoverage-missing 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL + +## send it a server request +#echo 400 > EXPECTED +#! curl -f -w '%{http_code}\n' http://127.0.0.1:8080/ 2> /dev/null > ACTUAL +#diff EXPECTED ACTUAL + +# kill $proxy_server_pid +shutdown + +$VALGRIND jscoverage-server --no-highlight --port=8081 --proxy --report-dir=DIR --no-instrument=http://127.0.0.1:8000/1/ & +proxy_server_pid=$! +proxy_server_port=8081 + +sleep $delay + +wget -q -O- -e 'http_proxy=http://127.0.0.1:8081/' http://127.0.0.1:8000/script.js > OUT +cat ../report.js recursive.expected/script.js | sed 's/@PREFIX@/http:\/\/127.0.0.1:8000\//g' | diff --strip-trailing-cr - OUT +wget -q -O- -e 'http_proxy=http://127.0.0.1:8081/' http://127.0.0.1:8000/1/1.js | diff --strip-trailing-cr recursive/1/1.js - +wget -q -O- -e 'http_proxy=http://127.0.0.1:8081/' http://127.0.0.1:8000/1/2/2.js | diff --strip-trailing-cr recursive/1/2/2.js - diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive-crlf.sh b/tools/node_modules/expresso/deps/jscoverage/tests/recursive-crlf.sh new file mode 100755 index 0000000..c95ee81 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive-crlf.sh @@ -0,0 +1,59 @@ +#!/bin/sh +# recursive-crlf.sh - test recursive directory instrumentation, CRLF line endings +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +trap 'rm -fr TMP EXPECTED DIR OUT' 0 1 2 3 15 + +export PATH=.:..:$PATH + +rm -fr TMP EXPECTED DIR OUT + +mkdir -p TMP/1/2 +cd recursive +cp *.html *.js *.css *.png *.txt x ../TMP +cp 1/1.html 1/1.js 1/1.css ../TMP/1 +cp 1/2/2.html 1/2/2.js 1/2/2.css ../TMP/1/2 +cd .. +unix2dos TMP/script.js > /dev/null 2> /dev/null +unix2dos TMP/1/1.js > /dev/null 2> /dev/null +unix2dos TMP/1/2/2.js > /dev/null 2> /dev/null + +mkdir -p EXPECTED/1/2 +cd recursive.expected +cp *.html *.js *.css *.png *.txt x ../EXPECTED +cp 1/1.html 1/1.js 1/1.css ../EXPECTED/1 +cp 1/2/2.html 1/2/2.js 1/2/2.css ../EXPECTED/1/2 +cd .. +cat recursive.expected/script.js | sed 's/@PREFIX@//g' > EXPECTED/script.js +cat recursive.expected/1/1.js | sed 's/@PREFIX@//g' > EXPECTED/1/1.js +cat recursive.expected/1/2/2.js | sed 's/@PREFIX@//g' > EXPECTED/1/2/2.js +cp ../jscoverage.css ../jscoverage-highlight.css ../jscoverage-ie.css \ + ../jscoverage-throbber.gif \ + ../jscoverage.html \ + ../jscoverage.js EXPECTED + +$VALGRIND jscoverage --no-highlight TMP DIR +test -d DIR +diff --strip-trailing-cr -r EXPECTED DIR + +$VALGRIND jscoverage --no-highlight --verbose TMP DIR > OUT +test -d DIR +sort OUT -o OUT +diff --strip-trailing-cr verbose.expected.out OUT +diff --strip-trailing-cr -r EXPECTED DIR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive-dir-list.c b/tools/node_modules/expresso/deps/jscoverage/tests/recursive-dir-list.c new file mode 100644 index 0000000..2f1a7bf --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive-dir-list.c @@ -0,0 +1,93 @@ +/* + recursive-dir-list.c - test `make_recursive_dir_list' function + Copyright (C) 2007, 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <assert.h> +#include <stdlib.h> +#include <string.h> + +#include "util.h" + +struct Expected { + int count; + const char * name; +}; + +void cleanup(void) { + system("rm -fr DIR"); +} + +void touch(const char * file) { + FILE * f = fopen(file, "w"); + if (f == NULL) { + fatal("cannot open file: %s", file); + } + fclose(f); +} + +void verify(struct Expected * expected, struct DirListEntry * actual, int length) { + struct DirListEntry * p = actual; + while (p != NULL) { + char * name = p->name; + for (int i = 0; i < length; i++) { + if (strcmp(expected[i].name, name) == 0) { + expected[i].count++; + break; + } + } + p = p->next; + } + + /* now verify the totals */ + for (int i = 0; i < length; i++) { + assert(expected[i].count == 1); + } +} + +int main(void) { + atexit(cleanup); + + system("rm -fr DIR"); + + /* simple case */ + xmkdir("DIR"); + xmkdir("DIR/a"); + xmkdir("DIR/a/b"); + xmkdir("DIR/c"); + xmkdir("DIR/d"); + touch("DIR/0"); + touch("DIR/a/1"); + touch("DIR/a/b/2"); + touch("DIR/c/3"); + touch("DIR/c/4"); + /* DIR/d is empty */ + + struct Expected expected[] = { + {0, "c/4"}, + {0, "c/3"}, + {0, "a/b/2"}, + {0, "a/1"}, + {0, "0"}, + }; + + struct DirListEntry * list = make_recursive_dir_list("DIR"); + verify(expected, list, sizeof(expected) / sizeof(expected[0])); + free_dir_list(list); + + exit(EXIT_SUCCESS); +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive-dir-list.sh b/tools/node_modules/expresso/deps/jscoverage/tests/recursive-dir-list.sh new file mode 100755 index 0000000..d232a0a --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive-dir-list.sh @@ -0,0 +1,19 @@ +#!/bin/sh +# recursive-dir-list.sh - test `make_recursive_dir_list' function +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +$VALGRIND ./recursive-dir-list diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive-exclude.sh b/tools/node_modules/expresso/deps/jscoverage/tests/recursive-exclude.sh new file mode 100755 index 0000000..4e5d42e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive-exclude.sh @@ -0,0 +1,41 @@ +#!/bin/sh +# recursive-exclude.sh - test `--exclude' option +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +trap 'rm -fr EXPECTED DIR' 1 2 3 15 + +export PATH=.:..:$PATH + +rm -fr DIR +rm -fr EXPECTED +cp -r recursive.expected EXPECTED +find EXPECTED -name .svn | xargs rm -fr +rm EXPECTED/script.js +cat recursive.expected/1/1.js | sed 's/@PREFIX@//g' > EXPECTED/1/1.js +rm -fr EXPECTED/1/2 +cp ../jscoverage.css ../jscoverage-highlight.css ../jscoverage-ie.css \ + ../jscoverage-throbber.gif \ + ../jscoverage.html \ + ../jscoverage.js EXPECTED + +$VALGRIND jscoverage --no-highlight --exclude=.svn --exclude=1/.svn --exclude=1/2/.svn --exclude 1/2 --exclude=script.js recursive DIR +test -d DIR +diff --strip-trailing-cr -r EXPECTED DIR + +rm -fr EXPECTED DIR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive-fatal.sh b/tools/node_modules/expresso/deps/jscoverage/tests/recursive-fatal.sh new file mode 100755 index 0000000..7fdd151 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive-fatal.sh @@ -0,0 +1,40 @@ +#!/bin/sh +# recursive-fatal.sh - test various fatal errors +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +trap 'rm -fr DIR DIR2 SYM ERR' 1 2 3 15 + +export PATH=.:..:$PATH + +rm -fr DIR DIR2 SYM ERR + +mkdir DIR +$VALGRIND jscoverage DIR DIR 2>ERR && exit 1 + +$VALGRIND jscoverage DIR DIR/1 2>ERR && exit 1 + +mkdir DIR/1 +$VALGRIND jscoverage DIR/1 DIR 2>ERR && exit 1 + +cp -r DIR SYM +$VALGRIND jscoverage DIR SYM 2>ERR && exit 1 + +$VALGRIND jscoverage SYM DIR 2>ERR && exit 1 + +rm -fr DIR DIR2 SYM ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive-no-instrument.sh b/tools/node_modules/expresso/deps/jscoverage/tests/recursive-no-instrument.sh new file mode 100755 index 0000000..1203bec --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive-no-instrument.sh @@ -0,0 +1,41 @@ +#!/bin/sh +# recursive-no-instrument.sh - test `--no-instrument' option +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +trap 'rm -fr EXPECTED DIR' 1 2 3 15 + +export PATH=.:..:$PATH + +rm -fr DIR +rm -fr EXPECTED +cp -r recursive.expected EXPECTED +find EXPECTED -name .svn | xargs rm -fr +cat recursive/script.js | sed 's/@PREFIX@//g' > EXPECTED/script.js +cat recursive.expected/1/1.js | sed 's/@PREFIX@//g' > EXPECTED/1/1.js +cat recursive/1/2/2.js | sed 's/@PREFIX@//g' > EXPECTED/1/2/2.js +cp ../jscoverage.css ../jscoverage-highlight.css ../jscoverage-ie.css \ + ../jscoverage-throbber.gif \ + ../jscoverage.html \ + ../jscoverage.js EXPECTED + +$VALGRIND jscoverage --no-highlight --exclude=.svn --exclude=1/.svn --exclude=1/2/.svn --no-instrument 1/2 --no-instrument=script.js recursive DIR +test -d DIR +diff --strip-trailing-cr -r EXPECTED DIR + +rm -fr EXPECTED DIR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/1.css b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/1.css new file mode 100644 index 0000000..563d20e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/1.css @@ -0,0 +1,3 @@ +body { + color: green; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/1.html b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/1.html new file mode 100644 index 0000000..e292b54 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/1.html @@ -0,0 +1,12 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<title>1</title> +<script type="text/javascript" src="1.js"></script> +<link rel="stylesheet" type="text/css" href="1.css"> +</head> +<body> +1<br> +<a href="2/2.html">Next</a> +</body> +</html> diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/1.js b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/1.js new file mode 100644 index 0000000..e237b0f --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/1.js @@ -0,0 +1,12 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['@PREFIX@1/1.js']) { + _$jscoverage['@PREFIX@1/1.js'] = []; + _$jscoverage['@PREFIX@1/1.js'][1] = 0; +} +_$jscoverage['@PREFIX@1/1.js'][1]++; +alert("This is 1"); +_$jscoverage['@PREFIX@1/1.js'].source = ["alert(\"This is 1\");"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/2/2.css b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/2/2.css new file mode 100644 index 0000000..7cfe2bf --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/2/2.css @@ -0,0 +1,3 @@ +body { + color: blue; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/2/2.html b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/2/2.html new file mode 100644 index 0000000..bb83ca6 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/2/2.html @@ -0,0 +1,11 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<title>2</title> +<script type="text/javascript" src="2.js"></script> +<link rel="stylesheet" type="text/css" href="2.css"> +</head> +<body> +2 +</body> +</html> diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/2/2.js b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/2/2.js new file mode 100644 index 0000000..09184a3 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/1/2/2.js @@ -0,0 +1,12 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['@PREFIX@1/2/2.js']) { + _$jscoverage['@PREFIX@1/2/2.js'] = []; + _$jscoverage['@PREFIX@1/2/2.js'][1] = 0; +} +_$jscoverage['@PREFIX@1/2/2.js'][1]++; +alert("This is 2"); +_$jscoverage['@PREFIX@1/2/2.js'].source = ["alert(\"This is 2\");"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/image.png b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/image.png Binary files differnew file mode 100644 index 0000000..da5ef5d --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/image.png diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/index.html b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/index.html new file mode 100644 index 0000000..90b7789 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/index.html @@ -0,0 +1,12 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<title>Test</title> +<script type="text/javascript" src="script.js"></script> +<link rel="stylesheet" type="text/css" href="style.css"> +</head> +<body> +Test<br> +<a href="1/1.html">Next</a> +</body> +</html> diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/script.js b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/script.js new file mode 100644 index 0000000..d9bf48b --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/script.js @@ -0,0 +1,19 @@ +/* automatically generated by JSCoverage - do not edit */ +if (! top._$jscoverage) { + top._$jscoverage = {}; +} +var _$jscoverage = top._$jscoverage; +if (! _$jscoverage['@PREFIX@script.js']) { + _$jscoverage['@PREFIX@script.js'] = []; + _$jscoverage['@PREFIX@script.js'][1] = 0; + _$jscoverage['@PREFIX@script.js'][4] = 0; + _$jscoverage['@PREFIX@script.js'][5] = 0; +} +_$jscoverage['@PREFIX@script.js'][1]++; +alert("hello"); +_$jscoverage['@PREFIX@script.js'][4]++; +if ("a" < "b" && "a" > "b") { + _$jscoverage['@PREFIX@script.js'][5]++; + alert("?"); +} +_$jscoverage['@PREFIX@script.js'].source = ["alert(\"hello\");","","// test formatting &lt; &gt; &amp;","if ('a' < 'b' && 'a' > 'b') {"," alert(\"?\");","}"]; diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/style.css b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/style.css new file mode 100644 index 0000000..60f1eab --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/style.css @@ -0,0 +1,3 @@ +body { + color: red; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/unix.txt b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/unix.txt new file mode 100644 index 0000000..01e79c3 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/unix.txt @@ -0,0 +1,3 @@ +1 +2 +3 diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/windows.txt b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/windows.txt new file mode 100644 index 0000000..294d779 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/windows.txt @@ -0,0 +1,3 @@ +1
+2
+3
diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/x b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/x new file mode 100644 index 0000000..587be6b --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.expected/x @@ -0,0 +1 @@ +x diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive.sh b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.sh new file mode 100755 index 0000000..f7c0d09 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive.sh @@ -0,0 +1,55 @@ +#!/bin/sh +# recursive.sh - test recursive directory instrumentation +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +trap 'rm -fr EXPECTED DIR OUT' 1 2 3 15 + +export PATH=.:..:$PATH + +rm -fr DIR +rm -fr EXPECTED +cp -r recursive.expected EXPECTED +find EXPECTED -name .svn | xargs rm -fr +cat recursive.expected/script.js | sed 's/@PREFIX@//g' > EXPECTED/script.js +cat recursive.expected/1/1.js | sed 's/@PREFIX@//g' > EXPECTED/1/1.js +cat recursive.expected/1/2/2.js | sed 's/@PREFIX@//g' > EXPECTED/1/2/2.js +cp ../jscoverage.css ../jscoverage-highlight.css ../jscoverage-ie.css \ + ../jscoverage-throbber.gif \ + ../jscoverage.html \ + ../jscoverage.js EXPECTED + +$VALGRIND jscoverage --no-highlight --exclude=.svn --exclude=1/.svn --exclude=1/2/.svn recursive DIR +test -d DIR +diff --strip-trailing-cr -r EXPECTED DIR + +$VALGRIND jscoverage --no-highlight --verbose --exclude .svn --exclude 1/.svn --exclude 1/2/.svn recursive DIR >OUT +test -d DIR +sort OUT -o OUT +diff --strip-trailing-cr verbose.expected.out OUT +diff --strip-trailing-cr -r EXPECTED DIR + +# does it handle an argument with a slash at the end? +$VALGRIND jscoverage --no-highlight --exclude=.svn --exclude=1/.svn --exclude=1/2/.svn recursive/ DIR +diff --strip-trailing-cr -r EXPECTED DIR +$VALGRIND jscoverage --no-highlight --exclude=.svn --exclude=1/.svn --exclude=1/2/.svn recursive DIR/ +diff --strip-trailing-cr -r EXPECTED DIR +$VALGRIND jscoverage --no-highlight --exclude=.svn --exclude=1/.svn --exclude=1/2/.svn recursive/ DIR/ +diff --strip-trailing-cr -r EXPECTED DIR + +rm -fr EXPECTED DIR OUT diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/1.css b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/1.css new file mode 100644 index 0000000..563d20e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/1.css @@ -0,0 +1,3 @@ +body { + color: green; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/1.html b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/1.html new file mode 100644 index 0000000..e292b54 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/1.html @@ -0,0 +1,12 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<title>1</title> +<script type="text/javascript" src="1.js"></script> +<link rel="stylesheet" type="text/css" href="1.css"> +</head> +<body> +1<br> +<a href="2/2.html">Next</a> +</body> +</html> diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/1.js b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/1.js new file mode 100644 index 0000000..5f73e02 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/1.js @@ -0,0 +1 @@ +alert("This is 1"); diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/2/2.css b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/2/2.css new file mode 100644 index 0000000..7cfe2bf --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/2/2.css @@ -0,0 +1,3 @@ +body { + color: blue; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/2/2.html b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/2/2.html new file mode 100644 index 0000000..bb83ca6 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/2/2.html @@ -0,0 +1,11 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<title>2</title> +<script type="text/javascript" src="2.js"></script> +<link rel="stylesheet" type="text/css" href="2.css"> +</head> +<body> +2 +</body> +</html> diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/2/2.js b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/2/2.js new file mode 100644 index 0000000..e0f7496 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/1/2/2.js @@ -0,0 +1 @@ +alert("This is 2"); diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive/image.png b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/image.png Binary files differnew file mode 100644 index 0000000..da5ef5d --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/image.png diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive/index.html b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/index.html new file mode 100644 index 0000000..90b7789 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/index.html @@ -0,0 +1,12 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<title>Test</title> +<script type="text/javascript" src="script.js"></script> +<link rel="stylesheet" type="text/css" href="style.css"> +</head> +<body> +Test<br> +<a href="1/1.html">Next</a> +</body> +</html> diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive/script.js b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/script.js new file mode 100644 index 0000000..1671f23 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/script.js @@ -0,0 +1,6 @@ +alert("hello"); + +// test formatting < > & +if ('a' < 'b' && 'a' > 'b') { + alert("?"); +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive/style.css b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/style.css new file mode 100644 index 0000000..60f1eab --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/style.css @@ -0,0 +1,3 @@ +body { + color: red; +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive/unix.txt b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/unix.txt new file mode 100644 index 0000000..01e79c3 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/unix.txt @@ -0,0 +1,3 @@ +1 +2 +3 diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive/windows.txt b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/windows.txt new file mode 100644 index 0000000..294d779 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/windows.txt @@ -0,0 +1,3 @@ +1
+2
+3
diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/recursive/x b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/x new file mode 100644 index 0000000..587be6b --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/recursive/x @@ -0,0 +1 @@ +x diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/same-directory.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/same-directory.expected.err new file mode 100644 index 0000000..4f9362a --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/same-directory.expected.err @@ -0,0 +1 @@ +jscoverage: source and destination are the same diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/same-directory.sh b/tools/node_modules/expresso/deps/jscoverage/tests/same-directory.sh new file mode 100755 index 0000000..e07867b --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/same-directory.sh @@ -0,0 +1,30 @@ +#!/bin/sh +# same-directory.sh - test with source and destination same directory +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +trap 'rm -fr OUT ERR' 1 2 3 15 + +export PATH=.:..:$PATH + +$VALGRIND jscoverage javascript javascript > OUT 2> ERR && exit 1 +test ! -s OUT +test -s ERR +diff --strip-trailing-cr same-directory.expected.err ERR + +rm -fr OUT ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-bad-requests.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-bad-requests.sh new file mode 100755 index 0000000..e85a18d --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-bad-requests.sh @@ -0,0 +1,104 @@ +#!/bin/sh +# server-bad-requests.sh - test jscoverage-server with bad requests +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown + rm -fr EXPECTED ACTUAL OUT ERR +} + +bad_request() { + /bin/echo -ne "$1" | $NETCAT 127.0.0.1 $server_port > OUT 2> ERR + echo 'HTTP/1.1 400 Bad Request' > EXPECTED + head -n 1 OUT > ACTUAL + diff --strip-trailing-cr EXPECTED ACTUAL +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +if which netcat > /dev/null 2> /dev/null +then + NETCAT=netcat +elif which nc > /dev/null 2> /dev/null +then + NETCAT=nc +else + NETCAT='perl netcat.pl'; +fi + +rm -fr EXPECTED ACTUAL OUT ERR +$VALGRIND jscoverage-server --port 8000 > /dev/null 2> /dev/null & +server_pid=$! +server_port=8000 + +sleep $delay + +# send NUL in Request-Line +bad_request 'GET \0000 HTTP/1.1\r\n\r\n' + +# send empty Request-Line +bad_request '\r\n\r\n' + +# send bad Request-Line +bad_request ' \r\n\r\n' +bad_request 'GET\r\n\r\n' +bad_request 'GET \r\n\r\n' +bad_request 'GET \r\n\r\n' +bad_request 'GET /\r\n\r\n' +bad_request 'GET / \r\n\r\n' + +# bad Host header +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\nHost: foo:bar\r\n\r\n' + +# NUL in header +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\nFoo: \0000\r\n\r\n' + +# missing header +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\n: bar\r\n\r\n' + +# missing header value +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\nFoo:\r\n\r\n' + +# bad Transfer-Encoding +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\nTransfer-Encoding: foo;\r\n\r\n' +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\nTransfer-Encoding: foo; bar\r\n\r\n' +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\nTransfer-Encoding: foo; bar = "\r\n\r\n' +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\nTransfer-Encoding: foo; bar = "\r\n\r\n' +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\nTransfer-Encoding: foo; bar = "\\\0200"\r\n\r\n' +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\nTransfer-Encoding: foo; bar = "\0177"\r\n\r\n' +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\nTransfer-Encoding: foo; bar = ;\r\n\r\n' + +# bad Content-Length +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\nContent-Length: 4294967296\r\n\r\n' +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\nContent-Length: 4294967300\r\n\r\n' +bad_request 'GET / HTTP/1.1\r\nConnection: close\r\nContent-Length: foo\r\n\r\n' diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-close-after-request.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-close-after-request.sh new file mode 100755 index 0000000..4a27b33 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-close-after-request.sh @@ -0,0 +1,47 @@ +#!/bin/sh +# server-close-after-request.sh - test jscoverage-server with client that closes connection after request +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +$VALGRIND jscoverage-server --port 8000 > OUT 2> ERR & +server_pid=$! +server_port=8000 + +sleep $delay + +./http-client-close-after-request diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-content-types.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-content-types.sh new file mode 100755 index 0000000..69e6b6a --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-content-types.sh @@ -0,0 +1,68 @@ +#!/bin/sh +# server-content-types.sh - test jscoverage-server Content-Type headers +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown + rm -f x x.y +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +$VALGRIND jscoverage-server > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +echo text/html > EXPECTED +! curl -f -w '%{content_type}\n' -o /dev/null http://127.0.0.1:8080/recursive/index.html 2> /dev/null > ACTUAL +diff --strip-trailing-cr EXPECTED ACTUAL + +echo text/plain > EXPECTED +! curl -f -w '%{content_type}\n' -o /dev/null http://127.0.0.1:8080/recursive/unix.txt 2> /dev/null > ACTUAL +diff --strip-trailing-cr EXPECTED ACTUAL + +echo text/plain > EXPECTED +! curl -f -w '%{content_type}\n' -o /dev/null http://127.0.0.1:8080/recursive/windows.txt 2> /dev/null > ACTUAL +diff --strip-trailing-cr EXPECTED ACTUAL + +touch x +echo application/octet-stream > EXPECTED +! curl -f -w '%{content_type}\n' -o /dev/null http://127.0.0.1:8080/x 2> /dev/null > ACTUAL +diff --strip-trailing-cr EXPECTED ACTUAL + +touch x.y +echo application/octet-stream > EXPECTED +! curl -f -w '%{content_type}\n' -o /dev/null http://127.0.0.1:8080/x.y 2> /dev/null > ACTUAL +diff --strip-trailing-cr EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-directory-listing.expected b/tools/node_modules/expresso/deps/jscoverage/tests/server-directory-listing.expected new file mode 100644 index 0000000..2a9fdd3 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-directory-listing.expected @@ -0,0 +1,4 @@ +<a href=".">.</a><br> +<a href="..">..</a><br> +<a href="1&2.txt">1&2.txt</a><br> +<a href="1%202.txt">1 2.txt</a><br> diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-directory-listing.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-directory-listing.sh new file mode 100755 index 0000000..fca3c2f --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-directory-listing.sh @@ -0,0 +1,57 @@ +#!/bin/sh +# server-directory-listing.sh - test jscoverage-server directory listings +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +mkdir DIR +$VALGRIND jscoverage-server --document-root=DIR & +server_pid=$! +server_port=8080 + +sleep $delay + +# make some funny files +echo x > 'DIR/1&2.txt' +echo x > 'DIR/1 2.txt' + +sort server-directory-listing.expected -o EXPECTED +wget -q -O- http://127.0.0.1:8080/ > ACTUAL +sort ACTUAL -o ACTUAL +diff --strip-trailing-cr EXPECTED ACTUAL + +rm -fr DIR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-directory-redirect.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-directory-redirect.sh new file mode 100755 index 0000000..179cefd --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-directory-redirect.sh @@ -0,0 +1,50 @@ +#!/bin/sh +# server-directory-redirect.sh - test jscoverage-server directory redirect +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +$VALGRIND jscoverage-server --document-root=recursive > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +echo 'HTTP/1.1 301 Moved Permanently' > EXPECTED +# curl -f doesn't seem to work with 3xx +! curl -D ACTUAL http://127.0.0.1:8080/1 2> /dev/null > /dev/null +cat ACTUAL | tr -d '\r' | head -1 | diff EXPECTED - diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-encoded-url.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-encoded-url.sh new file mode 100755 index 0000000..e205c18 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-encoded-url.sh @@ -0,0 +1,57 @@ +#!/bin/sh +# server-encoded-url.sh - test jscoverage-server with encoded URL +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null +} + +cleanup() { + shutdown + # rm -fr DIR +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +mkdir DIR +$VALGRIND jscoverage-server --document-root=DIR & +server_pid=$! +server_port=8080 + +sleep $delay + +# make some funny files +echo x > 'DIR/1+2.txt' +echo x > 'DIR/1&2.txt' +echo x > 'DIR/1 2.txt' + +wget -q -O- 'http://127.0.0.1:8080/1%2B2.txt' | diff 'DIR/1+2.txt' - +wget -q -O- 'http://127.0.0.1:8080/1%2b2.txt' | diff 'DIR/1+2.txt' - +wget -q -O- 'http://127.0.0.1:8080/1%262.txt' | diff 'DIR/1&2.txt' - +wget -q -O- 'http://127.0.0.1:8080/1%202.txt' | diff 'DIR/1 2.txt' - diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-error.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-error.sh new file mode 100755 index 0000000..c2a47c4 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-error.sh @@ -0,0 +1,61 @@ +#!/bin/sh +# server-error.sh - test jscoverage-server with invalid options +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +export PATH=.:..:$PATH + +! jscoverage-server --report-dir > OUT 2> ERR +test ! -s OUT +test -s ERR + +! jscoverage-server --document-root > OUT 2> ERR +test ! -s OUT +test -s ERR + +! jscoverage-server --ip-address > OUT 2> ERR +test ! -s OUT +test -s ERR + +! jscoverage-server --no-instrument > OUT 2> ERR +test ! -s OUT +test -s ERR + +! jscoverage-server --port > OUT 2> ERR +test ! -s OUT +test -s ERR + +! jscoverage-server --foo > OUT 2> ERR +test ! -s OUT +test -s ERR + +! jscoverage-server foo > OUT 2> ERR +test ! -s OUT +test -s ERR + +! jscoverage-server --port x > OUT 2> ERR +test ! -s OUT +test -s ERR + +! jscoverage-server --port 123456 > OUT 2> ERR +test ! -s OUT +test -s ERR + +! jscoverage-server --encoding > OUT 2> ERR +test ! -s OUT +test -s ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-help.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-help.sh new file mode 100755 index 0000000..b644549 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-help.sh @@ -0,0 +1,26 @@ +#!/bin/sh +# server-help.sh - test jscoverage-server --help +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +export PATH=.:..:$PATH + +jscoverage-server --help > OUT 2> ERR +diff --strip-trailing-cr ../jscoverage-server-help.txt OUT +> TMP +diff TMP ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-ip-address.expected.out b/tools/node_modules/expresso/deps/jscoverage/tests/server-ip-address.expected.out new file mode 100644 index 0000000..b1838fb --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-ip-address.expected.out @@ -0,0 +1,4 @@ +Starting HTTP server on @ADDRESS@:8080 +GET / HTTP/1.0 +POST /jscoverage-shutdown HTTP/1.0 +Stopping HTTP server diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-ip-address.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-ip-address.sh new file mode 100755 index 0000000..b4a5770 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-ip-address.sh @@ -0,0 +1,68 @@ +#!/bin/sh +# server-ip-address.sh - test jscoverage-server --ip-address +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + # shutdown + : +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +$VALGRIND jscoverage-server --verbose --ip-address=0.0.0.0 > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +wget -q -O- http://127.0.0.1:${server_port}/ > /dev/null + +shutdown + +cat server-ip-address.expected.out | sed 's/@ADDRESS@/0.0.0.0/g' > EXPECTED +cat OUT | tr -d '\r' > ACTUAL +diff EXPECTED ACTUAL + +$VALGRIND jscoverage-server --verbose --ip-address 127.0.0.1 > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +wget -q -O- http://127.0.0.1:${server_port}/ > /dev/null + +shutdown + +cat server-ip-address.expected.out | sed 's/@ADDRESS@/127.0.0.1/g' > EXPECTED +cat OUT | tr -d '\r' > ACTUAL +diff EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-shutdown-bad-method.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-shutdown-bad-method.sh new file mode 100755 index 0000000..d6fa877 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-shutdown-bad-method.sh @@ -0,0 +1,49 @@ +#!/bin/sh +# server-shutdown-bad-method.sh - test jscoverage-server --shutdown with GET +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +$VALGRIND jscoverage-server > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +echo 405 > EXPECTED +! curl -f -w '%{http_code}\n' http://127.0.0.1:8080/jscoverage-shutdown 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-shutdown.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/server-shutdown.expected.err new file mode 100644 index 0000000..5dd4646 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-shutdown.expected.err @@ -0,0 +1 @@ +POST /jscoverage-shutdown diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-shutdown.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-shutdown.sh new file mode 100755 index 0000000..c91e6bd --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-shutdown.sh @@ -0,0 +1,42 @@ +#!/bin/sh +# server-shutdown.sh - test jscoverage-server --shutdown +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +cleanup() { + kill -9 $origin_server_pid +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +perl server.pl > OUT 2> ERR & +origin_server_pid=$! + +sleep $delay + +$VALGRIND jscoverage-server --port 8000 --shutdown +cat ERR | cut -d'"' -f2 | diff --strip-trailing-cr server-shutdown.expected.err - diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-special-file.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-special-file.sh new file mode 100755 index 0000000..76196fb --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-special-file.sh @@ -0,0 +1,62 @@ +#!/bin/sh +# server-special-file.sh - test jscoverage-server with special file +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +# skip on mingw +uname=`uname` +case "$uname" in + MINGW*) + exit 77 + ;; +esac + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + rm -f DIR/foo + rm -fr DIR + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +mkdir DIR +mkfifo DIR/foo +$VALGRIND jscoverage-server > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +echo 404 > EXPECTED +! curl -f -w '%{http_code}\n' http://127.0.0.1:8080/DIR/foo 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-unreadable-directory.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-unreadable-directory.sh new file mode 100755 index 0000000..4de4ba8 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-unreadable-directory.sh @@ -0,0 +1,61 @@ +#!/bin/sh +# server-unreadable-directory.sh - test jscoverage-server with unreadable directory +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +# skip on windows +uname=`uname` +case "$uname" in + CYGWIN* | MINGW*) + exit 77 + ;; +esac + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + rmdir DIR + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +mkdir DIR +chmod 000 DIR +$VALGRIND jscoverage-server > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +echo 404 > EXPECTED +! curl -f -w '%{http_code}\n' http://127.0.0.1:8080/DIR/ 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-unreadable-file.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-unreadable-file.sh new file mode 100755 index 0000000..20e1369 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-unreadable-file.sh @@ -0,0 +1,62 @@ +#!/bin/sh +# server-unreadable-file.sh - test jscoverage-server with unreadable file +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +# skip on windows +uname=`uname` +case "$uname" in + CYGWIN* | MINGW*) + exit 77 + ;; +esac + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + rm -fr DIR + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +mkdir DIR +echo Hello > DIR/index.html +chmod 000 DIR/index.html +$VALGRIND jscoverage-server > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +echo 404 > EXPECTED +! curl -f -w '%{http_code}\n' http://127.0.0.1:8080/DIR/index.html 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-verbose.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/server-verbose.expected.err new file mode 100644 index 0000000..e578f28 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-verbose.expected.err @@ -0,0 +1,4 @@ +Starting HTTP server on 127.0.0.1:8080 +GET /index.html HTTP/1.0 +POST /jscoverage-shutdown HTTP/1.0 +Stopping HTTP server diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-verbose.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-verbose.sh new file mode 100755 index 0000000..174692e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-verbose.sh @@ -0,0 +1,54 @@ +#!/bin/sh +# server-verbose.sh - test jscoverage-server --verbose +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + # shutdown + : +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +$VALGRIND jscoverage-server --document-root=recursive --verbose > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +wget -q -O- http://127.0.0.1:8080/index.html | diff --strip-trailing-cr recursive/index.html - + +shutdown + +sleep $delay + +cat OUT | tr -d '\r' | diff server-verbose.expected.err - diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server-version.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server-version.sh new file mode 100755 index 0000000..c2a629f --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server-version.sh @@ -0,0 +1,25 @@ +#!/bin/sh +# server-version.sh - test jscoverage-server --version +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +export PATH=.:..:$PATH + +jscoverage-server --version > OUT 2> ERR +test -s OUT +test ! -s ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server.pl b/tools/node_modules/expresso/deps/jscoverage/tests/server.pl new file mode 100644 index 0000000..86064b1 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server.pl @@ -0,0 +1,61 @@ +use strict;
+use warnings;
+
+use HTTP::Daemon;
+use HTTP::Status;
+
+$|++;
+
+my $d = HTTP::Daemon->new(LocalPort => 8000, ReuseAddr => 1) || die;
+print "Please contact me at: <URL:", $d->url, ">\n";
+my $done = 0;
+while (not $done and my $c = $d->accept) {
+ my $r = $c->get_request;
+ if (not defined($r)) {
+ print "Error: ", $c->reason, "\n";
+ $c->close;
+ undef($c);
+ next;
+ }
+ print STDERR $r->method, ' ', $r->url, "\n";
+ $c->force_last_request;
+ if ($r->method eq 'GET') {
+ my $file = substr($r->url->path, 1);
+ if (open FILE, $file) {
+ undef $/;
+ binmode FILE;
+ my $content = <FILE>;
+ close FILE;
+ my @headers = ('Connection' => 'close');
+ if ($file =~ /\.js$/) {
+ push @headers, 'Content-Type' => 'text/javascript';
+ }
+ elsif ($file =~ /\.[^\/]+$/) {
+ push @headers, 'Content-Type' => 'application/octet-stream';
+ }
+ else {
+ # do nothing - no Content-Type
+ }
+ my $response = HTTP::Response->new(200, 'OK', \@headers, $content);
+ $c->send_response($response);
+ }
+ else {
+ my $response = HTTP::Response->new(404, 'Not found', ['Connection' => 'close'], 'Not found');
+ $c->send_response($response);
+ }
+ }
+ elsif ($r->method eq 'POST') {
+ if ($r->url->path eq '/perl-shutdown') {
+ $done = 1;
+ }
+ my $content = $r->content;
+ my $response = HTTP::Response->new(200, 'OK', ['Connection' => 'close'], $content);
+ $c->send_response($response);
+ }
+ else {
+ $c->send_error(RC_FORBIDDEN);
+ }
+ $c->close;
+ undef($c);
+}
+
diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/server.sh b/tools/node_modules/expresso/deps/jscoverage/tests/server.sh new file mode 100755 index 0000000..e936fa1 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/server.sh @@ -0,0 +1,216 @@ +#!/bin/sh +# server.sh - test jscoverage-server +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + rm -fr EXPECTED ACTUAL DIR OUT + # kill $server_pid + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +if jscoverage-server --version | grep -q 'iconv\|MultiByteToWideChar' +then + character_encoding_support=yes +else + character_encoding_support=no +fi + +rm -fr EXPECTED ACTUAL DIR OUT +mkdir DIR +$VALGRIND jscoverage-server --no-highlight --document-root=recursive --report-dir=DIR & +server_pid=$! +server_port=8080 + +sleep $delay + +wget -q -O- http://127.0.0.1:8080/index.html | diff recursive/index.html - +wget -q -O- http://127.0.0.1:8080/style.css | diff recursive/style.css - +wget -q -O- http://127.0.0.1:8080/unix.txt | diff recursive/unix.txt - +wget -q -O- http://127.0.0.1:8080/windows.txt | diff recursive/windows.txt - +wget -q -O- http://127.0.0.1:8080/image.png | diff recursive/image.png - +wget -q -O- http://127.0.0.1:8080/x | diff recursive/x - +wget -q -O- http://127.0.0.1:8080/1/1.html | diff recursive/1/1.html - +wget -q -O- http://127.0.0.1:8080/1/1.css | diff recursive/1/1.css - +wget -q -O- http://127.0.0.1:8080/1/2/2.html | diff recursive/1/2/2.html - +wget -q -O- http://127.0.0.1:8080/1/2/2.css | diff recursive/1/2/2.css - + +# test query string +wget -q -O- http://127.0.0.1:8080/index.html?foo | diff recursive/index.html - + +# test javascript +wget -q -O- http://127.0.0.1:8080/script.js > OUT +cat ../report.js recursive.expected/script.js | sed 's/@PREFIX@/\//g' | diff --strip-trailing-cr - OUT +wget -q -O- http://127.0.0.1:8080/1/1.js > OUT +cat ../report.js recursive.expected/1/1.js | sed 's/@PREFIX@/\//g' | diff --strip-trailing-cr - OUT +wget -q -O- http://127.0.0.1:8080/1/2/2.js > OUT +cat ../report.js recursive.expected/1/2/2.js | sed 's/@PREFIX@/\//g' | diff --strip-trailing-cr - OUT + +# test jscoverage +wget -q -O- http://127.0.0.1:8080/jscoverage.html | diff ../jscoverage.html - +wget -q -O- http://127.0.0.1:8080/jscoverage.css | diff ../jscoverage.css - +wget -q -O- http://127.0.0.1:8080/jscoverage-throbber.gif | diff ../jscoverage-throbber.gif - +wget -q -O- http://127.0.0.1:8080/jscoverage.js > OUT +echo -e 'jscoverage_isServer = true;\r' | cat ../jscoverage.js - | diff - OUT + +# load/store +wget --post-data='{}' -q -O- http://127.0.0.1:8080/jscoverage-store > /dev/null +echo -n '{}' | diff - DIR/jscoverage.json +diff ../jscoverage.html DIR/jscoverage.html +diff ../jscoverage.css DIR/jscoverage.css +diff ../jscoverage-throbber.gif DIR/jscoverage-throbber.gif +echo -e 'jscoverage_isReport = true;\r' | cat ../jscoverage.js - | diff - DIR/jscoverage.js + +# 404 not found +echo 404 > EXPECTED +! curl -f -w '%{http_code}\n' http://127.0.0.1:8080/missing 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL +echo 404 > EXPECTED +! curl -f -w '%{http_code}\n' http://127.0.0.1:8080/jscoverage-missing 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL + +# 403 forbidden +echo 403 > EXPECTED +! curl -f -w '%{http_code}\n' http://127.0.0.1:8080/../Makefile.am 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL + +## send it a proxy request +#echo 400 > EXPECTED +#! curl -f -w '%{http_code}\n' -x 127.0.0.1:8080 http://siliconforks.com/ 2> /dev/null > ACTUAL +#diff EXPECTED ACTUAL + +# kill $server_pid +shutdown + +rm -fr DIR +mkdir DIR +case `uname` in + MINGW*) + $VALGRIND jscoverage-server --no-highlight --port=8081 --document-root=recursive --report-dir=DIR --no-instrument=1/ & + ;; + *) + $VALGRIND jscoverage-server --no-highlight --port=8081 --document-root=recursive --report-dir=DIR --no-instrument=/1/ & + ;; +esac +server_pid=$! +server_port=8081 + +sleep $delay + +wget -q -O- http://127.0.0.1:8081/script.js > OUT +cat ../report.js recursive.expected/script.js | sed 's/@PREFIX@/\//g' | diff --strip-trailing-cr - OUT +wget -q -O- http://127.0.0.1:8081/1/1.js | diff --strip-trailing-cr recursive/1/1.js - +wget -q -O- http://127.0.0.1:8081/1/2/2.js | diff --strip-trailing-cr recursive/1/2/2.js - + +# kill $server_pid +shutdown + +$VALGRIND jscoverage-server --no-highlight --port 8082 --document-root recursive --report-dir DIR --no-instrument 1/ & +server_pid=$! +server_port=8082 + +sleep $delay + +wget -q -O- http://127.0.0.1:8082/script.js > OUT +cat ../report.js recursive.expected/script.js | sed 's/@PREFIX@/\//g' | diff --strip-trailing-cr - OUT +wget -q -O- http://127.0.0.1:8082/1/1.js | diff --strip-trailing-cr recursive/1/1.js - +wget -q -O- http://127.0.0.1:8082/1/2/2.js | diff --strip-trailing-cr recursive/1/2/2.js - + +# kill $server_pid +shutdown + +$VALGRIND jscoverage-server --port 8080 --encoding iso-8859-1 --document-root javascript & +server_pid=$! +server_port=8080 + +sleep $delay + +case "$character_encoding_support" in + yes) + wget -q -O- http://127.0.0.1:8080/javascript-iso-8859-1.js > OUT + cat ../report.js javascript.expected/javascript-iso-8859-1.js | sed 's/javascript-iso-8859-1.js/\/javascript-iso-8859-1.js/g' | diff --strip-trailing-cr - OUT + ;; + *) + echo 500 > EXPECTED + ! curl -f -w '%{http_code}\n' http://127.0.0.1:8080/javascript-iso-8859-1.js 2> /dev/null > ACTUAL + diff EXPECTED ACTUAL + ;; +esac + +# kill $server_pid +shutdown + +$VALGRIND jscoverage-server --no-highlight --port=8080 --encoding=utf-8 --document-root=javascript-utf-8 & +server_pid=$! +server_port=8080 + +sleep $delay + +case "$character_encoding_support" in + yes) + wget -q -O- http://127.0.0.1:8080/javascript-utf-8.js > OUT + cat ../report.js javascript-utf-8.expected/javascript-utf-8.js | sed 's/javascript-utf-8.js/\/javascript-utf-8.js/g' | diff --strip-trailing-cr - OUT + ;; + *) + echo 500 > EXPECTED + ! curl -f -w '%{http_code}\n' http://127.0.0.1:8080/javascript-utf-8.js 2> /dev/null > ACTUAL + diff EXPECTED ACTUAL + ;; +esac + +# kill $server_pid +shutdown + +$VALGRIND jscoverage-server --port 8080 --encoding BOGUS --document-root javascript & +server_pid=$! +server_port=8080 + +sleep $delay + +echo 500 > EXPECTED +! curl -f -w '%{http_code}\n' http://127.0.0.1:8080/javascript-iso-8859-1.js 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL + +# kill $server_pid +shutdown + +$VALGRIND jscoverage-server --port 8080 --encoding utf-8 --document-root javascript & +server_pid=$! +server_port=8080 + +sleep $delay + +echo 500 > EXPECTED +! curl -f -w '%{http_code}\n' http://127.0.0.1:8080/javascript-iso-8859-1.js 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/source-does-not-exist.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/source-does-not-exist.expected.err new file mode 100644 index 0000000..caf61ca --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/source-does-not-exist.expected.err @@ -0,0 +1,2 @@ +jscoverage: cannot stat file: foo +Try `jscoverage --help' for more information. diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/source-is-file.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/source-is-file.expected.err new file mode 100644 index 0000000..b3fb0b6 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/source-is-file.expected.err @@ -0,0 +1,2 @@ +jscoverage: not a directory: foo +Try `jscoverage --help' for more information. diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-json.sh b/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-json.sh new file mode 100755 index 0000000..5519514 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-json.sh @@ -0,0 +1,50 @@ +#!/bin/sh +# store-bad-json.sh - test store with invalid JSON +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +$VALGRIND jscoverage-server --document-root=recursive --report-dir=DIR > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +echo 400 > EXPECTED +! curl -d '!@#$%^&*()' -f -w '%{http_code}\n' http://127.0.0.1:8080/jscoverage-store 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-request-body.sh b/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-request-body.sh new file mode 100755 index 0000000..ef9883e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-request-body.sh @@ -0,0 +1,48 @@ +#!/bin/sh +# store-bad-request-body.sh - test store with a bad request body +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +export PATH=.:..:$PATH + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +$VALGRIND jscoverage-server --document-root=recursive --report-dir=DIR > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +./http-client-bad-body 8080 http://127.0.0.1:8080/jscoverage-store diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-response-headers.sh b/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-response-headers.sh new file mode 100755 index 0000000..28747b5 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-response-headers.sh @@ -0,0 +1,56 @@ +#!/bin/sh +# store-bad-response-headers.sh - test store with bad response headers +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +. common.sh + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown + kill -9 $origin_server_pid +} + +trap 'cleanup' 0 1 2 3 15 + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +$VALGRIND jscoverage-server --proxy --report-dir=DIR > OUT 2> ERR & +server_pid=$! +server_port=8080 +./http-server-bad-headers & +origin_server_pid=$! + +sleep $delay + +# server sending malformed headers +cat store.json | sed "s/@PREFIX@/http:\\/\\/127.0.0.1:8000\\//g" > TMP +wget --post-file=TMP -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/jscoverage-store > /dev/null +json_cmp store-source-urls.expected.json DIR/jscoverage.json +sort ERR -o ERR +diff --strip-trailing-cr store-source-urls.expected.err ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-source-urls.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-source-urls.expected.err new file mode 100644 index 0000000..49fb754 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-source-urls.expected.err @@ -0,0 +1,3 @@ +Warning: cannot retrieve URL: 1/1.js +Warning: cannot retrieve URL: 1/2/2.js +Warning: cannot retrieve URL: script.js diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-source-urls.expected.json b/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-source-urls.expected.json new file mode 100644 index 0000000..eb24c47 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-bad-source-urls.expected.json @@ -0,0 +1,14 @@ +{ + "script.js":{ + "coverage":[null,1,null,null,1,0], + "source":[] + }, + "1/1.js":{ + "coverage":[null,1], + "source":[] + }, + "1/2/2.js":{ + "coverage":[null,1], + "source":[] + } +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-escaped-characters.expected.json b/tools/node_modules/expresso/deps/jscoverage/tests/store-escaped-characters.expected.json new file mode 100644 index 0000000..9546103 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-escaped-characters.expected.json @@ -0,0 +1,6 @@ +{ + "/store-escaped-characters.js":{ + "coverage":[null,1,0,null,null,1,0,null,null,1,0], + "source":["function f() {","\treturn \'\\\'\';","}","","function g() {","\treturn \"\\\"\";","}","\f","function h() {","\treturn \'\\\\\';","}"] + } +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-escaped-characters.js b/tools/node_modules/expresso/deps/jscoverage/tests/store-escaped-characters.js new file mode 100644 index 0000000..dc8ec36 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-escaped-characters.js @@ -0,0 +1,11 @@ +function f() {
+ return '\'';
+}
+
+function g() {
+ return "\"";
+}
+
+function h() {
+ return '\\';
+}
diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-escaped-characters.json b/tools/node_modules/expresso/deps/jscoverage/tests/store-escaped-characters.json new file mode 100644 index 0000000..59cf4de --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-escaped-characters.json @@ -0,0 +1,3 @@ +{ + "/store-escaped-characters.js":[null,1,0,null,null,1,0,null,null,1,0] +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-escaped-characters.sh b/tools/node_modules/expresso/deps/jscoverage/tests/store-escaped-characters.sh new file mode 100755 index 0000000..5eb9180 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-escaped-characters.sh @@ -0,0 +1,52 @@ +#!/bin/sh +# store-escaped-characters.sh - test storing escaped characters in JavaScript source +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +. common.sh + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +$VALGRIND jscoverage-server --no-highlight --report-dir=DIR & +server_pid=$! +server_port=8080 + +sleep $delay + +wget --post-file=store-escaped-characters.json -q -O- http://127.0.0.1:8080/jscoverage-store > /dev/null +json_cmp store-escaped-characters.expected.json DIR/jscoverage.json +wget --post-file=store-escaped-characters.json -q -O- http://127.0.0.1:8080/jscoverage-store > /dev/null +cat store-escaped-characters.expected.json | sed s/1,/2,/g > TMP +json_cmp TMP DIR/jscoverage.json diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-server-bad-body.sh b/tools/node_modules/expresso/deps/jscoverage/tests/store-server-bad-body.sh new file mode 100755 index 0000000..b6ae810 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-server-bad-body.sh @@ -0,0 +1,59 @@ +#!/bin/sh +# store-server-bad-body.sh - test storing when server sends bad response body +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +. common.sh + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown + if [ "$origin_server_pid" != "" ] + then + kill -9 $origin_server_pid + fi +} + +trap 'cleanup' 0 1 2 3 15 + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +$VALGRIND jscoverage-server --proxy --report-dir=DIR > OUT 2> ERR & +server_pid=$! +server_port=8080 +./http-server-bad-body & +origin_server_pid=$! + +sleep $delay + +# server sending malformed body +cat store.json | sed "s/@PREFIX@/http:\\/\\/127.0.0.1:8000\\//g" > TMP +wget --post-file=TMP -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/jscoverage-store > /dev/null +json_cmp store-source-urls.expected.json DIR/jscoverage.json +sort ERR -o ERR +diff --strip-trailing-cr store-source-urls.expected.err ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-server-closes-immediately.sh b/tools/node_modules/expresso/deps/jscoverage/tests/store-server-closes-immediately.sh new file mode 100755 index 0000000..a0ef9f9 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-server-closes-immediately.sh @@ -0,0 +1,58 @@ +#!/bin/sh +# store-server-closes-immediately.sh - test storing when server closes immediately +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +. common.sh + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown + if [ "$origin_server_pid" != "" ] + then + kill -9 $origin_server_pid + fi +} + +trap 'cleanup' 0 1 2 3 15 + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +$VALGRIND jscoverage-server --proxy --report-dir=DIR > OUT 2> ERR & +server_pid=$! +server_port=8080 +./http-server-close-immediately & +origin_server_pid=$! + +sleep $delay + +cat store.json | sed "s/@PREFIX@/http:\\/\\/127.0.0.1:8000\\//g" > TMP +wget --post-file=TMP -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/jscoverage-store > /dev/null +json_cmp store-source-urls.expected.json DIR/jscoverage.json +sort ERR -o ERR +diff --strip-trailing-cr store-source-urls.expected.err ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-source-not-found.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/store-source-not-found.expected.err new file mode 100644 index 0000000..f00a540 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-source-not-found.expected.err @@ -0,0 +1 @@ +Warning: cannot open file: /missing.js diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-source-not-found.expected.json b/tools/node_modules/expresso/deps/jscoverage/tests/store-source-not-found.expected.json new file mode 100644 index 0000000..3750b51 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-source-not-found.expected.json @@ -0,0 +1,6 @@ +{ + "/missing.js":{ + "coverage":[null,1,0], + "source":[] + } +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-source-not-found.json b/tools/node_modules/expresso/deps/jscoverage/tests/store-source-not-found.json new file mode 100644 index 0000000..cfad0dd --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-source-not-found.json @@ -0,0 +1,3 @@ +{ + "/missing.js":[null, 1, 0] +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-source-not-found.sh b/tools/node_modules/expresso/deps/jscoverage/tests/store-source-not-found.sh new file mode 100755 index 0000000..aa2a1fa --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-source-not-found.sh @@ -0,0 +1,50 @@ +#!/bin/sh +# store-source-not-found.sh - test store with JavaScript source not found +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +. common.sh + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +$VALGRIND jscoverage-server --report-dir=DIR > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +wget --post-file=store-source-not-found.json -q -O- http://127.0.0.1:8080/jscoverage-store > /dev/null +json_cmp store-source-not-found.expected.json DIR/jscoverage.json +diff --strip-trailing-cr store-source-not-found.expected.err ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-source-urls.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/store-source-urls.expected.err new file mode 100644 index 0000000..90a2dd6 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-source-urls.expected.err @@ -0,0 +1,3 @@ +Warning: cannot retrieve URL: http://127.0.0.1:8000/1/1.js +Warning: cannot retrieve URL: http://127.0.0.1:8000/1/2/2.js +Warning: cannot retrieve URL: http://127.0.0.1:8000/script.js diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-source-urls.expected.json b/tools/node_modules/expresso/deps/jscoverage/tests/store-source-urls.expected.json new file mode 100644 index 0000000..cb8d058 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-source-urls.expected.json @@ -0,0 +1,14 @@ +{ + "http://127.0.0.1:8000/script.js":{ + "coverage":[null,1,null,null,1,0], + "source":[] + }, + "http://127.0.0.1:8000/1/1.js":{ + "coverage":[null,1], + "source":[] + }, + "http://127.0.0.1:8000/1/2/2.js":{ + "coverage":[null,1], + "source":[] + } +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-unreachable-source-urls.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/store-unreachable-source-urls.expected.err new file mode 100644 index 0000000..96781cf --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-unreachable-source-urls.expected.err @@ -0,0 +1,3 @@ +Warning: cannot retrieve URL: http://127.0.0.1:1/1/1.js +Warning: cannot retrieve URL: http://127.0.0.1:1/1/2/2.js +Warning: cannot retrieve URL: http://127.0.0.1:1/script.js diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-unreachable-source-urls.expected.json b/tools/node_modules/expresso/deps/jscoverage/tests/store-unreachable-source-urls.expected.json new file mode 100644 index 0000000..0885998 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-unreachable-source-urls.expected.json @@ -0,0 +1,14 @@ +{ + "http://127.0.0.1:1/script.js":{ + "coverage":[null,1,null,null,1,0], + "source":[] + }, + "http://127.0.0.1:1/1/1.js":{ + "coverage":[null,1], + "source":[] + }, + "http://127.0.0.1:1/1/2/2.js":{ + "coverage":[null,1], + "source":[] + } +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-unreadable-json.sh b/tools/node_modules/expresso/deps/jscoverage/tests/store-unreadable-json.sh new file mode 100755 index 0000000..026512b --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-unreadable-json.sh @@ -0,0 +1,66 @@ +#!/bin/sh +# store-unreadable-json.sh - test store when jscoverage.json is not readable +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +. common.sh + +# skip on windows +uname=`uname` +case "$uname" in + CYGWIN* | MINGW*) + exit 77 + ;; +esac + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +$VALGRIND jscoverage-server --no-highlight --document-root=recursive --report-dir=DIR > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +cat store.json | sed "s/@PREFIX@/\\//g" > TMP +wget --post-file=TMP -q -O- http://127.0.0.1:8080/jscoverage-store > /dev/null +cat store.expected.json | sed "s/@PREFIX@/\\//g" > TMP +json_cmp TMP DIR/jscoverage.json + +chmod -r DIR/jscoverage.json + +cat store.json | sed "s/@PREFIX@/\\//g" > TMP +echo 500 > EXPECTED +! curl -d @TMP -f -w '%{http_code}\n' http://127.0.0.1:8080/jscoverage-store 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store-unwritable-json.sh b/tools/node_modules/expresso/deps/jscoverage/tests/store-unwritable-json.sh new file mode 100755 index 0000000..786e9bc --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store-unwritable-json.sh @@ -0,0 +1,58 @@ +#!/bin/sh +# store-unwritable-json.sh - test store when jscoverage.json is not writable +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +. common.sh + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + shutdown +} + +trap 'cleanup' 0 1 2 3 15 + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +$VALGRIND jscoverage-server --no-highlight --document-root=recursive --report-dir=DIR > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +cat store.json | sed "s/@PREFIX@/\\//g" > TMP +wget --post-file=TMP -q -O- http://127.0.0.1:8080/jscoverage-store > /dev/null +cat store.expected.json | sed "s/@PREFIX@/\\//g" > TMP +json_cmp TMP DIR/jscoverage.json + +chmod -w DIR/jscoverage.json + +cat store.json | sed "s/@PREFIX@/\\//g" > TMP +echo 500 > EXPECTED +! curl -d @TMP -f -w '%{http_code}\n' http://127.0.0.1:8080/jscoverage-store 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store.expected.json b/tools/node_modules/expresso/deps/jscoverage/tests/store.expected.json new file mode 100644 index 0000000..2aa393e --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store.expected.json @@ -0,0 +1,14 @@ +{ + "@PREFIX@script.js":{ + "coverage":[null,1,null,null,1,0], + "source":["alert(\"hello\");","","// test formatting &lt; &gt; &amp;","if ('a' < 'b' && 'a' > 'b') {"," alert(\"?\");","}"] + }, + "@PREFIX@1/1.js":{ + "coverage":[null,1], + "source":["alert(\"This is 1\");"] + }, + "@PREFIX@1/2/2.js":{ + "coverage":[null,1], + "source":["alert(\"This is 2\");"] + } +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store.json b/tools/node_modules/expresso/deps/jscoverage/tests/store.json new file mode 100644 index 0000000..942d686 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store.json @@ -0,0 +1,5 @@ +{ + "@PREFIX@script.js":[null,1,null,null,1,0], + "@PREFIX@1/1.js":[null,1], + "@PREFIX@1/2/2.js":[null,1] +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/store.sh b/tools/node_modules/expresso/deps/jscoverage/tests/store.sh new file mode 100755 index 0000000..fb12574 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/store.sh @@ -0,0 +1,137 @@ +#!/bin/sh +# store.sh - test storing coverage reports with jscoverage-server +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +. common.sh + +shutdown() { + wget -q -O- --post-data= "http://127.0.0.1:${server_port}/jscoverage-shutdown" > /dev/null + wait $server_pid +} + +cleanup() { + # rm -fr DIR + # kill $server_pid + shutdown + if [ "$origin_server_pid" != "" ] + then + kill -9 $origin_server_pid + fi +} + +trap 'cleanup' 0 1 2 3 15 + +if [ -z "$VALGRIND" ] +then + delay=0.2 +else + delay=2 +fi + +rm -fr DIR +$VALGRIND jscoverage-server --no-highlight --document-root=recursive --report-dir=DIR & +server_pid=$! +server_port=8080 + +sleep $delay + +cat store.json | sed "s/@PREFIX@/\\//g" > TMP +wget --post-file=TMP -q -O- http://127.0.0.1:8080/jscoverage-store > /dev/null +cat store.expected.json | sed "s/@PREFIX@/\\//g" > TMP +json_cmp TMP DIR/jscoverage.json + +cat store.json | sed "s/@PREFIX@/\\//g" > TMP +wget --post-file=TMP -q -O- http://127.0.0.1:8080/jscoverage-store > /dev/null +cat store.expected.json | sed "s/@PREFIX@/\\//g" | sed "s/,1/,2/g" > TMP +json_cmp TMP DIR/jscoverage.json + +# try invalid method +echo 405 > EXPECTED +! curl -f -w '%{http_code}\n' http://127.0.0.1:8080/jscoverage-store 2> /dev/null > ACTUAL +diff EXPECTED ACTUAL + +# try with a path +cat store.json | sed "s/@PREFIX@/\\//g" > TMP +wget --post-file=TMP -q -O- http://127.0.0.1:8080/jscoverage-store/DIR > /dev/null +cat store.expected.json | sed "s/@PREFIX@/\\//g" > TMP +json_cmp TMP DIR/DIR/jscoverage.json + +shutdown + +cd recursive +perl ../server.pl > /dev/null 2> /dev/null & +origin_server_pid=$! +cd .. + +rm -fr DIR +$VALGRIND jscoverage-server --no-highlight --proxy --report-dir=DIR > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +# test with proxy +cat store.json | sed "s/@PREFIX@/http:\\/\\/127.0.0.1:8000\\//g" > TMP +wget --post-file=TMP -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/jscoverage-store > /dev/null +cat store.expected.json | sed "s/@PREFIX@/http:\\/\\/127.0.0.1:8000\\//g" > TMP +json_cmp TMP DIR/jscoverage.json + +cat store.json | sed "s/@PREFIX@/http:\\/\\/127.0.0.1:8000\\//g" > TMP +wget --post-file=TMP -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/jscoverage-store > /dev/null +cat store.expected.json | sed "s/@PREFIX@/http:\\/\\/127.0.0.1:8000\\//g" | sed "s/,1/,2/g" > TMP +json_cmp TMP DIR/jscoverage.json + +# test cached source +rm -fr DIR +cat store.json | sed "s/@PREFIX@/http:\\/\\/127.0.0.1:8000\\//g" > TMP +wget --post-file=TMP -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/jscoverage-store > /dev/null +cat store.expected.json | sed "s/@PREFIX@/http:\\/\\/127.0.0.1:8000\\//g" > TMP +json_cmp TMP DIR/jscoverage.json + +shutdown + +rm -fr DIR +$VALGRIND jscoverage-server --no-highlight --proxy --report-dir=DIR > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +# store JSON with bad source URLs +cat store.json | sed "s/@PREFIX@//g" > TMP +wget --post-file=TMP -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/jscoverage-store > /dev/null +json_cmp store-bad-source-urls.expected.json DIR/jscoverage.json +sort ERR -o ERR +diff --strip-trailing-cr store-bad-source-urls.expected.err ERR + +shutdown + +rm -fr DIR +$VALGRIND jscoverage-server --no-highlight --proxy --report-dir=DIR > OUT 2> ERR & +server_pid=$! +server_port=8080 + +sleep $delay + +# store JSON with unreachable source URLs +cat store.json | sed "s/@PREFIX@/http:\\/\\/127.0.0.1:1\\//g" > TMP +wget --post-file=TMP -q -O- -e 'http_proxy=http://127.0.0.1:8080/' http://127.0.0.1:8000/jscoverage-store > /dev/null +json_cmp store-unreachable-source-urls.expected.json DIR/jscoverage.json +sort ERR -o ERR +diff --strip-trailing-cr store-unreachable-source-urls.expected.err ERR diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/streams.c b/tools/node_modules/expresso/deps/jscoverage/tests/streams.c new file mode 100644 index 0000000..06389fb --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/streams.c @@ -0,0 +1,107 @@ +/* + streams.c - test `Stream' object + Copyright (C) 2008 siliconforks.com + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include <assert.h> +#include <string.h> + +#include "stream.h" +#include "util.h" + +int main(void) { + Stream * stream; + + stream = Stream_new(0); + Stream_write_string(stream, "a"); + Stream_write_string(stream, "bc"); + assert(stream->length == 3); + assert(memcmp(stream->data, "abc", 3) == 0); + Stream_delete(stream); + + /* test writing chars to stream */ + stream = Stream_new(2); + Stream_write_char(stream, 'a'); + Stream_write_char(stream, 'b'); + Stream_write_char(stream, 'c'); + assert(stream->length == 3); + assert(memcmp(stream->data, "abc", 3) == 0); + Stream_reset(stream); + Stream_write_char(stream, 'x'); + Stream_write_char(stream, 'y'); + assert(stream->length == 2); + assert(memcmp(stream->data, "xy", 2) == 0); + Stream_delete(stream); + + /* test writing file to stream */ + stream = Stream_new(0); + FILE * f = xfopen("Makefile", "r"); + fseek(f, 0, SEEK_END); + long file_length = ftell(f); + fseek(f, 0, SEEK_SET); + uint8_t * file_contents = xmalloc(file_length); + fread(file_contents, 1, file_length, f); + fseek(f, 0, SEEK_SET); + Stream_write_file_contents(stream, f); + fclose(f); + assert(stream->length == (size_t) file_length); + assert(memcmp(stream->data, file_contents, file_length) == 0); + free(file_contents); + Stream_delete(stream); + + stream = Stream_new(0); + Stream_printf(stream, "%s %d\n", "abc", 123); + assert(stream->length == 8); + assert(memcmp(stream->data, "abc 123\n", 8) == 0); + Stream_delete(stream); + + stream = Stream_new(10); + size_t length = 0; + for (int i = 0; i < 100; i++) { + Stream_printf(stream, "%s %d\n", "abc", i); + if (i < 10) { + length += 6; + } + else { + length += 7; + } + } + assert(stream->length == length); + length = 0; + for (int i = 0; i < 100; i++) { + char buffer[8]; + int result = sprintf(buffer, "%s %d\n", "abc", i); + assert(memcmp(stream->data + length, buffer, result) == 0); + length += result; + } + assert(stream->length == length); + Stream_delete(stream); + + stream = Stream_new(10); + char buffer[100]; + for (int i = 0; i < 100; i++) { + buffer[i] = 'x'; + } + Stream_write(stream, buffer, 100); + assert(stream->length == 100); + for (int i = 0; i < 100; i++) { + assert(stream->data[i] == 'x'); + } + Stream_delete(stream); + + exit(EXIT_SUCCESS); +} diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/streams.sh b/tools/node_modules/expresso/deps/jscoverage/tests/streams.sh new file mode 100755 index 0000000..74cfebd --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/streams.sh @@ -0,0 +1,19 @@ +#!/bin/sh +# streams.sh - test `Stream' object +# Copyright (C) 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +$VALGRIND ./streams diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/too-many-arguments.expected.err b/tools/node_modules/expresso/deps/jscoverage/tests/too-many-arguments.expected.err new file mode 100644 index 0000000..4ab8b42 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/too-many-arguments.expected.err @@ -0,0 +1,2 @@ +jscoverage: too many arguments +Try `jscoverage --help' for more information. diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/valgrind.sh b/tools/node_modules/expresso/deps/jscoverage/tests/valgrind.sh new file mode 100755 index 0000000..c575324 --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/valgrind.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +rm -f VALGRIND.* +export VALGRIND='valgrind --log-file=VALGRIND.%p' +make check +grep --color=always 'ERROR SUMMARY:' VALGRIND.* +grep --color=always 'definitely lost:' VALGRIND.* diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/verbose.expected.out b/tools/node_modules/expresso/deps/jscoverage/tests/verbose.expected.out new file mode 100644 index 0000000..c2c147f --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/verbose.expected.out @@ -0,0 +1,13 @@ +Instrumenting file 1/1.css +Instrumenting file 1/1.html +Instrumenting file 1/1.js +Instrumenting file 1/2/2.css +Instrumenting file 1/2/2.html +Instrumenting file 1/2/2.js +Instrumenting file image.png +Instrumenting file index.html +Instrumenting file script.js +Instrumenting file style.css +Instrumenting file unix.txt +Instrumenting file windows.txt +Instrumenting file x diff --git a/tools/node_modules/expresso/deps/jscoverage/tests/version.sh b/tools/node_modules/expresso/deps/jscoverage/tests/version.sh new file mode 100755 index 0000000..da0a26c --- /dev/null +++ b/tools/node_modules/expresso/deps/jscoverage/tests/version.sh @@ -0,0 +1,29 @@ +#!/bin/sh +# version.sh - test `--version' option +# Copyright (C) 2007, 2008 siliconforks.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +trap 'rm -fr OUT ERR' 1 2 3 15 + +export PATH=.:..:$PATH + +$VALGRIND jscoverage --version > OUT 2> ERR +test -s OUT +test ! -s ERR + +rm -fr OUT ERR |