test: Add a test for media engines
[profile/ivi/rygel.git] / tests / Makefile.am
1 shareddir = $(abs_top_builddir)/data
2
3 AM_CFLAGS = $(LIBGUPNP_CFLAGS) \
4             $(LIBGUPNP_AV_CFLAGS) \
5             $(LIBGSTREAMER_CFLAGS) \
6             $(GSTREAMER_BASE_CFLAGS) \
7             $(GST_PBU_CFLAGS) \
8             $(GIO_CFLAGS) \
9             $(GEE_CFLAGS) \
10             $(UUID_CFLAGS) \
11             $(LIBSOUP_CFLAGS) \
12             $(LIBGUPNP_DLNA_CFLAGS) \
13             -I$(top_srcdir) -DDATA_DIR='"$(shareddir)"' \
14             -include config.h  -DG_LOG_DOMAIN='"Rygel"' \
15             $(COVERAGE_CFLAGS)
16
17 LDADD = $(LIBGUPNP_LIBS) \
18         $(LIBGUPNP_AV_LIBS) \
19         $(LIBGSTREAMER_LIBS) \
20         $(GSTREAMER_BASE_LIBS) \
21         $(GST_PBU_LIBS) \
22         $(GIO_LIBS) \
23         $(GEE_LIBS) \
24         $(UUID_LIBS) \
25         $(LIBSOUP_LIBS) \
26         $(LIBGUPNP_DLNA_LIBS) \
27         $(COVERAGE_LIBS)
28
29 AM_VALAFLAGS = --disable-warnings \
30                --pkg gupnp-1.0 --pkg gupnp-av-1.0 --pkg dbus-glib-1 \
31                --pkg gconf-2.0 --pkg gstreamer-0.10 --pkg gstreamer-base-0.10 \
32                --pkg gio-2.0 --pkg gee-1.0 --pkg gstreamer-pbutils-0.10 \
33                --pkg gupnp-dlna-1.0 --pkg uuid --vapidir=$(top_srcdir)/src/librygel-core -g \
34                $(COVERAGE_VALAFLAGS)
35
36 check_PROGRAMS = rygel-http-item-uri-test \
37                  rygel-http-response-test \
38                  rygel-http-byte-seek-test \
39                  rygel-http-time-seek-test \
40                  rygel-http-get-test \
41                  rygel-album-art-spec-test \
42                  rygel-http-post-test \
43                  rygel-searchable-container-test \
44                  rygel-item-creator-test \
45                  rygel-user-config-test \
46                  rygel-regression \
47                  rygel-media-engine-test
48
49 TESTS = $(check_PROGRAMS)
50
51 EXTRA_DIST = $(srcdir)/data/test-data.dat
52
53 rygel_http_item_uri_test_SOURCES = rygel-http-item-uri-test.vala \
54                                    rygel-http-item-uri.vala
55
56 rygel_http_response_test_SOURCES = rygel-http-response-test.vala \
57                                    rygel-http-response.vala \
58                                    rygel-state-machine_http-response.vala \
59                                    rygel-data-source_http-response.vala \
60                                    rygel-data-sink_http-response.vala
61
62 rygel_http_byte_seek_test_SOURCES = rygel-http-byte-seek-test.vala \
63                                     rygel-http-byte-seek.vala \
64                                     rygel-http-seek.vala
65
66 rygel_http_time_seek_test_SOURCES = rygel-http-time-seek-test.vala \
67                                     rygel-http-time-seek.vala \
68                                     rygel-http-seek_time-seek.vala
69
70 rygel_http_get_test_SOURCES = rygel-http-get-test.vala \
71                               rygel-http-get.vala \
72                               rygel-http-request_http-get.vala \
73                               rygel-http-item-uri_http-get.vala \
74                               rygel-state-machine_http-get.vala \
75                               rygel-http-time-seek_http-get.vala \
76                               rygel-http-byte-seek_http-get.vala \
77                               rygel-http-seek_http-get.vala
78
79 rygel_http_post_test_SOURCES = rygel-http-post-test.vala \
80                                rygel-http-post.vala \
81                                rygel-http-request_http-post.vala \
82                                rygel-http-item-uri_http-post.vala \
83                                rygel-state-machine_http-post.vala
84
85 rygel_album_art_spec_test_SOURCES = rygel-album-art-spec-test.vala \
86                                rygel-media-art-store.vala \
87                                    rygel-thumbnail.vala \
88                                    rygel-icon-info.vala
89
90 rygel_searchable_container_test_SOURCES = \
91         rygel-searchable-container.vala \
92         rygel-searchable-container-test.vala
93
94 rygel_item_creator_test_SOURCES = rygel-item-creator-test.vala \
95                                   rygel-item-creator.vala \
96                                   rygel-data-source.vala \
97                                   rygel-http-seek_item-creator.vala \
98                                   rygel-state-machine_item-creator.vala \
99                                   rygel-relational-expression.vala \
100                                   rygel-search-expression.vala \
101                                   rygel-media-engine.vala
102
103 rygel_user_config_test_SOURCES = rygel-configuration.vala \
104                                  rygel-user-config.vala \
105                                  rygel-user-config-test.vala
106
107 rygel_user_config_test_VALAFLAGS = \
108         $(AM_VALAFLAGS) \
109         --pkg rygel-build-config
110
111 rygel_user_config_test_CFLAGS = \
112         $(AM_CFLAGS) \
113         -DSYS_CONFIG_DIR='"$(sysconfigdir)"'
114
115 rygel_regression_SOURCES = \
116         rygel-regression.vala
117
118 rygel_regression_VALAFLAGS = \
119         $(AM_VALAFLAGS) \
120         --pkg rygel-server-1.0 \
121         --pkg rygel-core-1.0 \
122         --vapidir $(top_builddir)/src/librygel-server \
123         --vapidir $(top_builddir)/src/librygel-core
124
125 rygel_regression_CFLAGS = \
126         $(AM_CFLAGS) \
127         -I$(top_builddir)/src/librygel-server \
128         -I$(top_srcdir)/src/librygel-server \
129         -I$(top_builddir)/src/librygel-core \
130         -I$(top_srcdir)/src/librygel-core
131
132 rygel_regression_LDADD = \
133         $(LDADD) \
134         $(top_builddir)/src/librygel-server/librygel-server-1.0.la \
135         $(top_builddir)/src/librygel-core/librygel-core-1.0.la
136
137 rygel_media_engine_test_SOURCES = \
138         rygel-media-engine-test.vala
139
140 rygel_media_engine_test_VALAFLAGS = \
141         $(AM_VALAFLAGS) \
142         --pkg rygel-server-1.0 \
143         --pkg rygel-core-1.0 \
144         --vapidir $(top_builddir)/src/librygel-server \
145         --vapidir $(top_builddir)/src/librygel-core
146
147 rygel_media_engine_test_CFLAGS = \
148         $(AM_CFLAGS) \
149         -DTEST_DATA_FOLDER='"$(abs_srcdir)/data"' \
150         -DTEST_ENGINE_PATH='"$(abs_top_builddir)/src/media-engines"' \
151         -DBUILT_ENGINES='"@BUILT_ENGINES@"' \
152         -I$(top_builddir)/src/librygel-server \
153         -I$(top_srcdir)/src/librygel-server \
154         -I$(top_builddir)/src/librygel-core \
155         -I$(top_srcdir)/src/librygel-core
156
157 rygel_media_engine_test_LDADD = \
158         $(LDADD) \
159         $(top_builddir)/src/librygel-server/librygel-server-1.0.la \
160         $(top_builddir)/src/librygel-core/librygel-core-1.0.la
161
162 if HAVE_GSTREAMER
163 check_PROGRAMS += \
164         rygel-playbin-renderer-test \
165         rygel-environment-test
166
167 rygel_playbin_renderer_test_SOURCES = rygel-playbin-renderer-test.vala
168
169 rygel_playbin_renderer_test_VALAFLAGS = \
170         $(AM_VALAFLAGS) \
171         --pkg rygel-renderer-gst-1.0 \
172         --pkg rygel-renderer-1.0 \
173         --pkg rygel-core-1.0 \
174         --vapidir $(top_builddir)/src/librygel-renderer \
175         --vapidir $(top_builddir)/src/librygel-renderer-gst \
176         --vapidir $(top_builddir)/src/librygel-core
177
178 rygel_playbin_renderer_test_LDADD = \
179         $(top_builddir)/src/librygel-renderer/librygel-renderer-1.0.la \
180         $(top_builddir)/src/librygel-renderer-gst/librygel-renderer-gst-1.0.la \
181         $(top_builddir)/src/librygel-core/librygel-core-1.0.la \
182         $(LDADD)
183
184 rygel_playbin_renderer_test_CFLAGS = \
185         $(AM_CFLAGS) \
186         -I$(top_builddir)/src/librygel-renderer \
187         -I$(top_srcdir)/src/librygel-renderer \
188         -I$(top_builddir)/src/librygel-renderer-gst \
189         -I$(top_srcdir)/src/librygel-renderer-gst \
190         -I$(top_builddir)/src/librygel-core \
191         -I$(top_srcdir)/src/librygel-core
192
193 rygel_environment_test_SOURCES = rygel-environment-test.vala
194 rygel_environment_test_CFLAGS = $(AM_CFLAGS)
195 rygel_environment_test_LDADD = $(LDADD)
196 rygel_environment_test_VALAFLAGS = $(AM_VALAFLAGS) --pkg gstreamer-0.10
197 endif
198
199 if ALWAYS_TEST
200 all-local: check
201 endif
202
203 if ENABLE_COVERAGE
204 coverage: check
205         $(LCOV) --directory $(srcdir) --capture \
206                 --output-file $(top_builddir)/rygel.info
207         $(LCOV) --directory $(srcdir) --output-file $(top_builddir)/rygel.info \
208                 --remove $(top_builddir)/rygel.info "*.c" "*.h" "*.vapi"
209         rm -rf $(top_builddir)/coverage
210         $(mkdir_p) $(top_builddir)/coverage
211         $(GENHTML) --title "@PACKAGE_STRING@" \
212                 --output-directory $(top_builddir)/coverage \
213                 $(top_builddir)/rygel.info
214 endif