summaryrefslogtreecommitdiff
path: root/Makefile-test.am
blob: 52a12352e0b50119901d92daa62b3a4d46aefe23 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
EXTRA_DIST += \
	test/run-with-dbus \
	test/test-bus.conf

RUN_WITH_DBUS = ${top_srcdir}/test/run-with-dbus --session --system
GTESTER = ${TESTS_ENVIRONMENT} ${RUN_WITH_DBUS} gtester

########################################################################
TEST_PROGS += gjs-tests

gjs_tests_CPPFLAGS =				\
	$(AM_CPPFLAGS)				\
	-DGJS_COMPILATION			\
	$(GJSTESTS_CFLAGS)			\
	$(gjs_directory_defines)		\
	-I$(top_srcdir)/test

mock_js_resources_files = $(shell glib-compile-resources --sourcedir=$(srcdir) --generate-dependencies $(srcdir)/test/mock-js-resources.gresource.xml)
mock-js-resources.h: $(srcdir)/test/mock-js-resources.gresource.xml $(modules_resource_files)
	$(AM_V_GEN) glib-compile-resources --target=$@ --sourcedir=$(srcdir) --sourcedir=$(builddir) --generate --c-name mock_js_resources $<
mock-js-resources.c: $(srcdir)/test/mock-js-resources.gresource.xml $(modules_resource_files)
	$(AM_V_GEN) glib-compile-resources --target=$@ --sourcedir=$(srcdir) --sourcedir=$(builddir) --generate --c-name mock_js_resources $<

EXTRA_DIST += $(mock_js_resources_files) $(srcdir)/test/mock-js-resources.gresource.xml \
    $(srcdir)/test/gjs-test-coverage/loadedJSFromResource.js

## -rdynamic makes backtraces work
gjs_tests_LDFLAGS = -rdynamic
gjs_tests_LDADD =		\
	libgjs.la		\
	$(GJSTESTS_LIBS)

gjs_tests_SOURCES =		\
	test/gjs-tests.cpp \
	test/gjs-tests-add-funcs.h \
	test/gjs-test-coverage.cpp \
	mock-js-resources.c

check-local: gjs-tests
	@test -z "${TEST_PROGS}" || ${GTESTER} --verbose ${TEST_PROGS} ${TEST_PROGS_OPTIONS}

TESTS_ENVIRONMENT =							\
	TOP_SRCDIR=$(top_srcdir)					\
	DBUS_SESSION_BUS_ADDRESS=''					\
	XDG_DATA_HOME=test_user_data					\
	GJS_DEBUG_OUTPUT=test_user_data/logs/gjs.log			\
	BUILDDIR=.							\
	GJS_USE_UNINSTALLED_FILES=1					\
	GJS_TEST_TIMEOUT=420						\
	GI_TYPELIB_PATH=$(builddir):$(GI_TYPELIB_PATH)					\
	LD_LIBRARY_PATH="$(LD_LIBRARY_PATH):$(FIREFOX_JS_LIBDIR)"	\
	G_FILENAME_ENCODING=latin1	# ensure filenames are not utf8