netcmd: models: make Group.system_flags a flags based EnumField
[Samba.git] / selftest / tests.py
blob10d55363ffd6d3f369beaa255efc766d461959cc
1 #!/usr/bin/python
2 # This script generates a list of testsuites that should be run as part of
3 # the Samba test suite.
5 # The output of this script is parsed by selftest.pl, which then decides
6 # which of the tests to actually run. It will, for example, skip all tests
7 # listed in selftest/skip or only run a subset during "make quicktest".
9 # The idea is that this script outputs all of the tests of Samba, not
10 # just those that are known to pass, and list those that should be skipped
11 # or are known to fail in selftest/skip or selftest/knownfail. This makes it
12 # very easy to see what functionality is still missing in Samba and makes
13 # it possible to run the testsuite against other servers, such as
14 # Windows that have a different set of features.
16 # The syntax for a testsuite is "-- TEST --" on a single line, followed
17 # by the name of the test, the environment it needs and the command to run, all
18 # three separated by newlines. All other lines in the output are considered
19 # comments.
21 import os, tempfile
22 from selftesthelpers import bindir, srcdir, python
23 from selftesthelpers import planpythontestsuite, samba4srcdir
24 from selftesthelpers import plantestsuite, bbdir
25 from selftesthelpers import configuration, valgrindify
26 from selftesthelpers import skiptestsuite
28 try:
29 config_h = os.environ["CONFIG_H"]
30 except KeyError:
31 samba4bindir = bindir()
32 config_h = os.path.join(samba4bindir, "default/include/config.h")
34 # check available features
35 config_hash = dict()
36 f = open(config_h, 'r')
37 try:
38 lines = f.readlines()
39 config_hash = dict((x[0], ' '.join(x[1:]))
40 for x in map(lambda line: line.strip().split(' ')[1:],
41 list(filter(lambda line: (line[0:7] == '#define') and (len(line.split(' ')) > 2), lines))))
42 finally:
43 f.close()
45 have_man_pages_support = ("XSLTPROC_MANPAGES" in config_hash)
46 with_pam = ("WITH_PAM" in config_hash)
47 with_elasticsearch_backend = ("HAVE_SPOTLIGHT_BACKEND_ES" in config_hash)
48 pam_wrapper_so_path = config_hash.get("LIBPAM_WRAPPER_SO_PATH")
49 pam_set_items_so_path = config_hash.get("PAM_SET_ITEMS_SO_PATH")
50 have_heimdal_support = "SAMBA4_USES_HEIMDAL" in config_hash
51 using_system_gssapi = "USING_SYSTEM_GSSAPI" in config_hash
53 planpythontestsuite("none", "samba.tests.source")
54 planpythontestsuite("none", "samba.tests.source_chars")
56 if have_man_pages_support:
57 planpythontestsuite("none", "samba.tests.docs")
59 try:
60 import testscenarios
61 except ImportError:
62 skiptestsuite("subunit", "testscenarios not available")
63 else:
64 planpythontestsuite("none", "subunit.tests.test_suite")
65 planpythontestsuite("none", "samba.tests.blackbox.ndrdump")
66 planpythontestsuite("none", "samba.tests.blackbox.check_output")
67 planpythontestsuite("none", "api", name="ldb.python", extra_path=['lib/ldb/tests/python'])
68 planpythontestsuite("none", "samba.tests.credentials")
69 planpythontestsuite("none", "samba.tests.registry")
70 planpythontestsuite("ad_dc_ntvfs:local", "samba.tests.auth")
71 planpythontestsuite("none", "samba.tests.get_opt")
72 planpythontestsuite("none", "samba.tests.cred_opt")
73 planpythontestsuite("none", "samba.tests.security")
74 planpythontestsuite("none", "samba.tests.dcerpc.misc")
75 planpythontestsuite("none", "samba.tests.dcerpc.integer")
76 planpythontestsuite("none", "samba.tests.param")
77 planpythontestsuite("none", "samba.tests.upgrade")
78 planpythontestsuite("none", "samba.tests.core")
79 planpythontestsuite("none", "samba.tests.common")
80 planpythontestsuite("none", "samba.tests.provision")
81 planpythontestsuite("none", "samba.tests.password_quality")
82 planpythontestsuite("none", "samba.tests.strings")
83 planpythontestsuite("none", "samba.tests.netcmd")
84 planpythontestsuite("none", "samba.tests.dcerpc.rpc_talloc")
85 planpythontestsuite("none", "samba.tests.dcerpc.array")
86 planpythontestsuite("none", "samba.tests.dcerpc.string_tests")
87 planpythontestsuite("none", "samba.tests.hostconfig")
88 planpythontestsuite("ad_dc_ntvfs:local", "samba.tests.messaging")
89 planpythontestsuite("none", "samba.tests.s3param")
90 planpythontestsuite("none", "samba.tests.s3passdb")
91 planpythontestsuite("none", "samba.tests.s3registry")
92 planpythontestsuite("none", "samba.tests.s3windb")
93 planpythontestsuite("none", "samba.tests.s3idmapdb")
94 planpythontestsuite("none", "samba.tests.samba3sam")
95 planpythontestsuite("none", "samba.tests.dsdb_api")
96 planpythontestsuite("none", "samba.tests.smbconf")
97 planpythontestsuite("none", "samba.tests.logfiles")
98 planpythontestsuite("none", "samba.tests.conditional_ace_claims")
99 planpythontestsuite(
100 "none", "wafsamba.tests.test_suite",
101 extra_path=[os.path.join(samba4srcdir, "..", "buildtools"),
102 os.path.join(samba4srcdir, "..", "third_party", "waf")])
103 planpythontestsuite("fileserver", "samba.tests.smbd_fuzztest")
104 planpythontestsuite("nt4_dc_smb1", "samba.tests.dcerpc.binding")
105 planpythontestsuite('ad_dc:local', "samba.tests.dcerpc.samr_change_password")
106 planpythontestsuite('ad_dc_fips:local',
107 "samba.tests.dcerpc.samr_change_password",
108 environ={'GNUTLS_FORCE_FIPS_MODE': '1',
109 'OPENSSL_FORCE_FIPS_MODE': '1'})
111 planpythontestsuite("none", "samba.tests.safe_tarfile")
113 def cmdline(script, *args):
115 Prefix PYTHON env var and append --configurefile option to abs script path.
117 script.sh arg1 arg2
119 PYTHON=python /path/to/bbdir/script.sh arg1 arg2 \
120 --configurefile $SMB_CONF_FILE
122 return [
123 "PYTHON=%s" % python,
124 os.path.join(bbdir, script),
125 ] + list(args) + [configuration]
128 plantestsuite(
129 "samba4.blackbox.demote-saveddb", "none",
130 cmdline('demote-saveddb.sh', '$PREFIX_ABS/demote'))
132 plantestsuite(
133 "samba4.blackbox.dbcheck.alpha13", "none",
134 cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
135 'alpha13'))
137 # same test as above but skip member link checks
138 plantestsuite(
139 "samba4.blackbox.dbcheck.alpha13.quick", "none",
140 cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
141 'alpha13', '--quick-membership-checks'))
143 plantestsuite(
144 "samba4.blackbox.dbcheck.release-4-0-0", "none",
145 cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
146 'release-4-0-0'))
148 # same test as above but skip member link checks
149 plantestsuite(
150 "samba4.blackbox.dbcheck.release-4-0-0.quick", "none",
151 cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
152 'release-4-0-0', '--quick-membership-checks'))
154 plantestsuite(
155 "samba4.blackbox.dbcheck.release-4-1-0rc3", "none",
156 cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
157 'release-4-1-0rc3'))
159 # same test as above but skip member link checks
160 plantestsuite(
161 "samba4.blackbox.dbcheck.release-4-1-0rc3.quick", "none",
162 cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
163 'release-4-1-0rc3', '--quick-membership-checks'))
165 plantestsuite(
166 "samba4.blackbox.dbcheck.release-4-1-6-partial-object", "none",
167 cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
168 'release-4-1-6-partial-object'))
170 # same test as above but skip member link checks
171 plantestsuite(
172 "samba4.blackbox.dbcheck.release-4-1-6-partial-object.quick", "none",
173 cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
174 'release-4-1-6-partial-object', '--quick-membership-checks'))
176 plantestsuite(
177 "samba4.blackbox.dbcheck.release-4-5-0-pre1", "none",
178 cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
179 'release-4-5-0-pre1'))
181 # same test as above but skip member link checks
182 plantestsuite(
183 "samba4.blackbox.dbcheck.release-4-5-0-pre1.quick", "none",
184 cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
185 'release-4-5-0-pre1', '--quick-membership-checks'))
187 plantestsuite(
188 "samba4.blackbox.upgradeprovision.alpha13", "none",
189 cmdline('upgradeprovision-oldrelease.sh', '$PREFIX_ABS/provision',
190 'alpha13'))
192 plantestsuite(
193 "samba4.blackbox.upgradeprovision.release-4-0-0", "none",
194 cmdline('upgradeprovision-oldrelease.sh', '$PREFIX_ABS/provision',
195 'release-4-0-0'))
197 plantestsuite(
198 "samba4.blackbox.tombstones-expunge.release-4-5-0-pre1", "none",
199 cmdline('tombstones-expunge.sh', '$PREFIX_ABS/provision',
200 'release-4-5-0-pre1'))
202 plantestsuite(
203 "samba4.blackbox.dbcheck-links.release-4-5-0-pre1", "none",
204 cmdline('dbcheck-links.sh', '$PREFIX_ABS/provision',
205 'release-4-5-0-pre1'))
207 plantestsuite(
208 "samba4.blackbox.runtime-links.release-4-5-0-pre1", "none",
209 cmdline('runtime-links.sh', '$PREFIX_ABS/provision',
210 'release-4-5-0-pre1'))
212 plantestsuite(
213 "samba4.blackbox.schemaupgrade", "none",
214 cmdline('schemaupgrade.sh', '$PREFIX_ABS/provision'))
216 plantestsuite(
217 "samba4.blackbox.functionalprep", "none",
218 cmdline('functionalprep.sh', '$PREFIX_ABS/provision'))
220 plantestsuite(
221 "samba4.blackbox.test_special_group", "none",
222 cmdline('test_special_group.sh', '$PREFIX_ABS/provision'))
224 planpythontestsuite("none", "samba.tests.upgradeprovision")
225 planpythontestsuite("none", "samba.tests.xattr")
226 planpythontestsuite("none", "samba.tests.ntacls")
227 planpythontestsuite("none", "samba.tests.policy")
228 planpythontestsuite("none", "samba.tests.kcc.graph")
229 planpythontestsuite("none", "samba.tests.kcc.graph_utils")
230 planpythontestsuite("none", "samba.tests.kcc.ldif_import_export")
231 planpythontestsuite("none", "samba.tests.graph")
232 plantestsuite("wafsamba.duplicate_symbols", "none", [os.path.join(srcdir(), "buildtools/wafsamba/test_duplicate_symbol.sh")])
233 planpythontestsuite("none", "samba.tests.glue")
234 planpythontestsuite("none", "samba.tests.tdb_util")
235 planpythontestsuite("none", "samba.tests.samdb")
236 planpythontestsuite("none", "samba.tests.samdb_api")
237 planpythontestsuite("none", "samba.tests.ndr.gkdi")
238 planpythontestsuite("none", "samba.tests.ndr.gmsa")
239 planpythontestsuite("none", "samba.tests.ndr.wbint")
241 if with_pam:
242 env = "ad_member"
243 options = [
245 "description": "krb5",
246 "pam_options": "krb5_auth krb5_ccache_type=FILE:%s/krb5cc_pam_test_%%u" % (tempfile.gettempdir()),
249 "description": "default",
250 "pam_options": "",
253 for o in options:
254 description = o["description"]
255 pam_options = "'%s'" % o["pam_options"]
257 plantestsuite("samba.tests.pam_winbind(local+%s)" % description, env,
258 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
259 valgrindify(python), pam_wrapper_so_path,
260 "$SERVER", "$USERNAME", "$PASSWORD",
261 pam_options])
262 plantestsuite("samba.tests.pam_winbind(domain1+%s)" % description, env,
263 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
264 valgrindify(python), pam_wrapper_so_path,
265 "$DOMAIN", "$DC_USERNAME", "$DC_PASSWORD",
266 pam_options])
267 plantestsuite("samba.tests.pam_winbind(domain2+%s)" % description, env,
268 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
269 valgrindify(python), pam_wrapper_so_path,
270 "$REALM", "$DC_USERNAME", "$DC_PASSWORD",
271 pam_options])
272 plantestsuite("samba.tests.pam_winbind(domain3+%s)" % description, env,
273 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
274 valgrindify(python), pam_wrapper_so_path,
275 "''", "${DC_USERNAME}@${DOMAIN}", "$DC_PASSWORD",
276 pam_options])
277 plantestsuite("samba.tests.pam_winbind(domain4+%s)" % description, env,
278 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
279 valgrindify(python), pam_wrapper_so_path,
280 "''", "${DC_USERNAME}@${REALM}", "$DC_PASSWORD",
281 pam_options])
282 plantestsuite("samba.tests.pam_winbind(domain5+%s)" % description, env,
283 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
284 valgrindify(python), pam_wrapper_so_path,
285 "$REALM", "${DC_USERNAME}@${DOMAIN}", "$DC_PASSWORD",
286 pam_options])
287 plantestsuite("samba.tests.pam_winbind(domain6+%s)" % description, env,
288 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
289 valgrindify(python), pam_wrapper_so_path,
290 "$DOMAIN", "${DC_USERNAME}@${REALM}", "$DC_PASSWORD",
291 pam_options])
292 plantestsuite("samba.tests.pam_winbind(trust_f_both1+%s)" % description, env,
293 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
294 valgrindify(python), pam_wrapper_so_path,
295 "$TRUST_F_BOTH_DOMAIN",
296 "$TRUST_F_BOTH_USERNAME",
297 "$TRUST_F_BOTH_PASSWORD",
298 pam_options])
299 plantestsuite("samba.tests.pam_winbind(trust_f_both2+%s)" % description, env,
300 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
301 valgrindify(python), pam_wrapper_so_path,
302 "$TRUST_F_BOTH_REALM",
303 "$TRUST_F_BOTH_USERNAME",
304 "$TRUST_F_BOTH_PASSWORD",
305 pam_options])
306 plantestsuite("samba.tests.pam_winbind(trust_f_both3+%s)" % description, env,
307 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
308 valgrindify(python), pam_wrapper_so_path,
309 "''",
310 "${TRUST_F_BOTH_USERNAME}@${TRUST_F_BOTH_DOMAIN}",
311 "$TRUST_F_BOTH_PASSWORD",
312 pam_options])
313 plantestsuite("samba.tests.pam_winbind(trust_f_both4+%s)" % description, env,
314 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
315 valgrindify(python), pam_wrapper_so_path,
316 "''",
317 "${TRUST_F_BOTH_USERNAME}@${TRUST_F_BOTH_REALM}",
318 "$TRUST_F_BOTH_PASSWORD",
319 pam_options])
320 plantestsuite("samba.tests.pam_winbind(trust_f_both5+%s)" % description, env,
321 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
322 valgrindify(python), pam_wrapper_so_path,
323 "${TRUST_F_BOTH_REALM}",
324 "${TRUST_F_BOTH_USERNAME}@${TRUST_F_BOTH_DOMAIN}",
325 "$TRUST_F_BOTH_PASSWORD",
326 pam_options])
327 plantestsuite("samba.tests.pam_winbind(trust_f_both6+%s)" % description, env,
328 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
329 valgrindify(python), pam_wrapper_so_path,
330 "${TRUST_F_BOTH_DOMAIN}",
331 "${TRUST_F_BOTH_USERNAME}@${TRUST_F_BOTH_REALM}",
332 "$TRUST_F_BOTH_PASSWORD",
333 pam_options])
334 plantestsuite("samba.tests.pam_winbind(trust_e_both1+%s)" % description, env,
335 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
336 valgrindify(python), pam_wrapper_so_path,
337 "$TRUST_E_BOTH_DOMAIN",
338 "$TRUST_E_BOTH_USERNAME",
339 "$TRUST_E_BOTH_PASSWORD",
340 pam_options])
341 plantestsuite("samba.tests.pam_winbind(trust_e_both2+%s)" % description, env,
342 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
343 valgrindify(python), pam_wrapper_so_path,
344 "$TRUST_E_BOTH_REALM",
345 "$TRUST_E_BOTH_USERNAME",
346 "$TRUST_E_BOTH_PASSWORD",
347 pam_options])
348 plantestsuite("samba.tests.pam_winbind(trust_e_both3+%s)" % description, env,
349 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
350 valgrindify(python), pam_wrapper_so_path,
351 "''",
352 "${TRUST_E_BOTH_USERNAME}@${TRUST_E_BOTH_DOMAIN}",
353 "$TRUST_E_BOTH_PASSWORD",
354 pam_options])
355 plantestsuite("samba.tests.pam_winbind(trust_e_both4+%s)" % description, env,
356 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
357 valgrindify(python), pam_wrapper_so_path,
358 "''",
359 "${TRUST_E_BOTH_USERNAME}@${TRUST_E_BOTH_REALM}",
360 "$TRUST_E_BOTH_PASSWORD",
361 pam_options])
362 plantestsuite("samba.tests.pam_winbind(trust_e_both5+%s)" % description, env,
363 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
364 valgrindify(python), pam_wrapper_so_path,
365 "${TRUST_E_BOTH_REALM}",
366 "${TRUST_E_BOTH_USERNAME}@${TRUST_E_BOTH_DOMAIN}",
367 "$TRUST_E_BOTH_PASSWORD",
368 pam_options])
369 plantestsuite("samba.tests.pam_winbind(trust_e_both6+%s)" % description, env,
370 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind.sh"),
371 valgrindify(python), pam_wrapper_so_path,
372 "${TRUST_E_BOTH_DOMAIN}",
373 "${TRUST_E_BOTH_USERNAME}@${TRUST_E_BOTH_REALM}",
374 "$TRUST_E_BOTH_PASSWORD",
375 pam_options])
377 for authtok_options in ["", "use_authtok", "try_authtok"]:
378 _pam_options = "'%s %s'" % (o["pam_options"], authtok_options)
379 _description = "%s %s" % (description, authtok_options)
380 plantestsuite("samba.tests.pam_winbind_chauthtok(domain+%s)" % _description, env,
381 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind_chauthtok.sh"),
382 valgrindify(python), pam_wrapper_so_path, pam_set_items_so_path,
383 "$DOMAIN", "TestPamOptionsUser", "oldp@ssword0", "newp@ssword0",
384 _pam_options, 'yes',
385 "$DC_SERVER", "$DC_USERNAME", "$DC_PASSWORD"])
387 plantestsuite("samba.tests.pam_winbind_warn_pwd_expire(domain+%s)" % description, env,
388 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind_warn_pwd_expire.sh"),
389 valgrindify(python), pam_wrapper_so_path,
390 "$DOMAIN", "alice", "Secret007",
391 pam_options])
393 description = "krb5"
394 pam_options = "'krb5_auth krb5_ccache_type=FILE:%s/krb5cc_pam_test_setcred_%%u'" % (tempfile.gettempdir())
395 plantestsuite("samba.tests.pam_winbind_setcred(domain+%s)" % description, "ad_dc:local",
396 [os.path.join(srcdir(), "python/samba/tests/test_pam_winbind_setcred.sh"),
397 valgrindify(python), pam_wrapper_so_path,
398 "${DOMAIN}", "${DC_USERNAME}", "${DC_PASSWORD}",
399 pam_options])
402 plantestsuite("samba.unittests.krb5samba", "none",
403 [os.path.join(bindir(), "default/testsuite/unittests/test_krb5samba")])
404 plantestsuite("samba.unittests.lib_util_modules", "none",
405 [os.path.join(bindir(), "default/testsuite/unittests/test_lib_util_modules")])
406 plantestsuite("samba.unittests.background_send",
407 "none",
408 [os.path.join(
409 bindir(),
410 "default/testsuite/unittests/test_background_send"),
411 "$SMB_CONF_PATH"])
413 plantestsuite("samba.unittests.smb1cli_session", "none",
414 [os.path.join(bindir(), "default/libcli/smb/test_smb1cli_session")])
415 plantestsuite("samba.unittests.smb_util_translate", "none",
416 [os.path.join(bindir(), "default/libcli/smb/test_util_translate")])
418 plantestsuite("samba.unittests.talloc_keep_secret", "none",
419 [os.path.join(bindir(), "default/lib/util/test_talloc_keep_secret")])
421 plantestsuite("samba.unittests.tldap", "none",
422 [os.path.join(bindir(), "default/source3/test_tldap")])
423 plantestsuite("samba.unittests.rfc1738", "none",
424 [os.path.join(bindir(), "default/lib/util/test_rfc1738")])
425 plantestsuite("samba.unittests.kerberos", "none",
426 [os.path.join(bindir(), "test_kerberos")])
427 plantestsuite("samba.unittests.ms_fnmatch", "none",
428 [os.path.join(bindir(), "default/lib/util/test_ms_fnmatch")])
429 plantestsuite("samba.unittests.byteorder", "none",
430 [os.path.join(bindir(), "default/lib/util/test_byteorder")])
431 plantestsuite("samba.unittests.bytearray", "none",
432 [os.path.join(bindir(), "default/lib/util/test_bytearray")])
433 plantestsuite("samba.unittests.byteorder_verify", "none",
434 [os.path.join(bindir(), "default/lib/util/test_byteorder_verify")])
435 plantestsuite("samba.unittests.util_paths", "none",
436 [os.path.join(bindir(), "default/lib/util/test_util_paths")])
437 plantestsuite("samba.unittests.util", "none",
438 [os.path.join(bindir(), "default/lib/util/test_util")])
439 plantestsuite("samba.unittests.memcache", "none",
440 [os.path.join(bindir(), "default/lib/util/test_memcache")])
441 plantestsuite("samba.unittests.sys_rw", "none",
442 [os.path.join(bindir(), "default/lib/util/test_sys_rw")])
443 plantestsuite("samba.unittests.stable_sort", "none",
444 [os.path.join(bindir(), "default/lib/util/test_stable_sort")])
445 plantestsuite("samba.unittests.ntlm_check", "none",
446 [os.path.join(bindir(), "default/libcli/auth/test_ntlm_check")])
447 plantestsuite("samba.unittests.gnutls", "none",
448 [os.path.join(bindir(), "default/libcli/auth/test_gnutls")])
449 plantestsuite("samba.unittests.rc4_passwd_buffer", "none",
450 [os.path.join(bindir(), "default/libcli/auth/test_rc4_passwd_buffer")])
451 plantestsuite("samba.unittests.schannel", "none",
452 [os.path.join(bindir(), "default/libcli/auth/test_schannel")])
453 plantestsuite("samba.unittests.test_registry_regfio", "none",
454 [os.path.join(bindir(), "default/source3/test_registry_regfio")])
455 plantestsuite("samba.unittests.test_oLschema2ldif", "none",
456 [os.path.join(bindir(), "default/source4/utils/oLschema2ldif/test_oLschema2ldif")])
457 plantestsuite("samba.unittests.auth.sam", "none",
458 [os.path.join(bindir(), "test_auth_sam")])
459 if have_heimdal_support and not using_system_gssapi:
460 plantestsuite("samba.unittests.auth.heimdal_gensec_unwrap_des", "none",
461 [valgrindify(os.path.join(bindir(), "test_heimdal_gensec_unwrap_des"))])
462 plantestsuite("samba.unittests.test_wsp_parser", "none",
463 [os.path.join(bindir(), "default/libcli/wsp/test_wsp_parser")] + [configuration])
464 if with_elasticsearch_backend:
465 plantestsuite("samba.unittests.mdsparser_es", "none",
466 [os.path.join(bindir(), "default/source3/test_mdsparser_es")] + [configuration])
467 plantestsuite("samba.unittests.mdsparser_es_failures", "none",
468 [os.path.join(bindir(), "default/source3/test_mdsparser_es"),
469 " --option=elasticsearch:testmappingfailures=yes",
470 " --option=elasticsearch:ignoreunknownattribute=yes",
471 " --option=elasticsearch:ignoreunknowntype=yes"] +
472 [configuration])
473 plantestsuite("samba.unittests.credentials", "none",
474 [os.path.join(bindir(), "default/auth/credentials/test_creds")])
475 plantestsuite("samba.unittests.tsocket_bsd_addr", "none",
476 [os.path.join(bindir(), "default/lib/tsocket/test_tsocket_bsd_addr")])
477 if ("HAVE_TCP_USER_TIMEOUT" in config_hash):
478 plantestsuite("samba.unittests.tsocket_tstream", "none",
479 [os.path.join(bindir(), "default/lib/tsocket/test_tstream")],
480 environ={'SOCKET_WRAPPER_DIR': ''})
481 plantestsuite("samba.unittests.adouble", "none",
482 [os.path.join(bindir(), "test_adouble")])
483 plantestsuite("samba.unittests.gnutls_aead_aes_256_cbc_hmac_sha512", "none",
484 [os.path.join(bindir(), "test_gnutls_aead_aes_256_cbc_hmac_sha512")])
485 plantestsuite("samba.unittests.gnutls_sp800_108", "none",
486 [os.path.join(bindir(), "test_gnutls_sp800_108")])
487 plantestsuite("samba.unittests.gkdi_key_derivation", "none",
488 [os.path.join(bindir(), "test_gkdi_key_derivation")])
489 plantestsuite("samba.unittests.encode_decode", "none",
490 [os.path.join(bindir(), "test_encode_decode")])
492 plantestsuite("samba.unittests.compression.lzxpress_huffman", "none",
493 [os.path.join(bindir(), "default/lib/compression/test_lzx_huffman")])
494 plantestsuite("samba.unittests.compression.lzxpress_plain", "none",
495 [os.path.join(bindir(),
496 "default/lib/compression/test_lzxpress_plain")])
498 plantestsuite("samba.unittests.sddl_conditional_ace", "none",
499 [os.path.join(bindir(), "test_sddl_conditional_ace")])
500 plantestsuite("samba.unittests.run_conditional_ace", "none",
501 [os.path.join(bindir(), "test_run_conditional_ace")])
502 plantestsuite("samba.unittests.claim_conversion", "none",
503 [os.path.join(bindir(), "test_claim_conversion")])