diff --git a/bin/tests/.gitignore b/bin/tests/.gitignore
index bff3505d70..4849f5b4de 100644
--- a/bin/tests/.gitignore
+++ b/bin/tests/.gitignore
@@ -4,7 +4,6 @@ headerdep_test.sh
nxtify
sdig
*_test
-t_atomic
t_db
gsstest
t_dst
diff --git a/bin/tests/Makefile.in b/bin/tests/Makefile.in
index 4bdaac7acc..1f0c73fd93 100644
--- a/bin/tests/Makefile.in
+++ b/bin/tests/Makefile.in
@@ -32,8 +32,8 @@ ISCCFGDEPLIBS = ../../lib/isccfg/libisccfg.@A@
LIBS = @LIBS@
-SUBDIR = atomic db dst names rbt resolver \
- tasks timers system @PKCS11_TOOLS@ optional
+SUBDIR = db dst names \
+ rbt resolver tasks timers system @PKCS11_TOOLS@ optional
TESTDIRS = system
diff --git a/bin/tests/atomic/Makefile.in b/bin/tests/atomic/Makefile.in
deleted file mode 100644
index 932a77397d..0000000000
--- a/bin/tests/atomic/Makefile.in
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-# See the COPYRIGHT file distributed with this work for additional
-# information regarding copyright ownership.
-
-srcdir = @srcdir@
-VPATH = @srcdir@
-top_srcdir = @top_srcdir@
-
-@BIND9_MAKE_INCLUDES@
-
-CINCLUDES = ${TEST_INCLUDES} ${DNS_INCLUDES} ${ISC_INCLUDES}
-
-CDEFINES =
-CWARNINGS =
-
-ISCLIBS = ../../../lib/isc/libisc.@A@ @ISC_OPENSSL_LIBS@
-
-ISCDEPLIBS = ../../../lib/isc/libisc.@A@
-
-DEPLIBS = ${ISCDEPLIBS}
-
-LIBS = ${ISCLIBS} @LIBS@
-
-TLIB = ../../../lib/tests/libt_api.@A@
-
-TARGETS = t_atomic@EXEEXT@
-
-SRCS = t_atomic.c
-
-@BIND9_MAKE_RULES@
-
-t_atomic@EXEEXT@: t_atomic.@O@ ${DEPLIBS} ${TLIB}
- ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ t_atomic.@O@ ${TLIB} ${LIBS}
-
-test: t_atomic@EXEEXT@
- -@./t_atomic@EXEEXT@ -c @top_srcdir@/t_config -b @srcdir@ -a
-
-testhelp:
- @./t_atomic@EXEEXT@ -h
-
-clean distclean::
- rm -f ${TARGETS}
diff --git a/bin/tests/atomic/win32/t_atomic.vcxproj.filters.in b/bin/tests/atomic/win32/t_atomic.vcxproj.filters.in
deleted file mode 100644
index 41df97cd0a..0000000000
--- a/bin/tests/atomic/win32/t_atomic.vcxproj.filters.in
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hpp;hxx;hm;inl;inc;xsd
-
-
- {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
- rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
-
-
-
-
- Source Files
-
-
-
\ No newline at end of file
diff --git a/bin/tests/atomic/win32/t_atomic.vcxproj.in b/bin/tests/atomic/win32/t_atomic.vcxproj.in
deleted file mode 100644
index eed1870a49..0000000000
--- a/bin/tests/atomic/win32/t_atomic.vcxproj.in
+++ /dev/null
@@ -1,110 +0,0 @@
-
-
-
-
- Debug
- @PLATFORM@
-
-
- Release
- @PLATFORM@
-
-
-
- {EC6ECB35-58C0-48EC-BAC9-9A652D9406C9}
- Win32Proj
- t_atomic
-
-
-
- Application
- true
- MultiByte
-
-
- Application
- false
- true
- MultiByte
-
-
-
-
-
-
-
-
-
-
-
-
- true
- ..\..\..\..\Build\$(Configuration)\
- .\$(Configuration)\
-
-
- false
- ..\..\..\..\Build\$(Configuration)\
- .\$(Configuration)\
-
-
-
-
-
- Level3
- Disabled
- WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
- true
- .\$(Configuration)\$(TargetName).pch
- .\$(Configuration)\
- .\$(Configuration)\
- $(OutDir)$(TargetName).pdb
- true
- .\;..\..\..\..\;@LIBXML2_INC@..\..\..\..\lib\isc\win32;..\..\..\..\lib\isc\win32\include;..\..\..\..\lib\isc\include;..\..\..\..\lib\dns\include;..\..\..\..\lib\tests\include;%(AdditionalIncludeDirectories)
- CompileAsC
-
-
- Console
- true
- ..\..\..\..\Build\$(Configuration)\$(TargetName)$(TargetExt)
- ..\..\..\..\lib\isc\win32\$(Configuration);..\..\..\..\lib\dns\win32\$(Configuration);..\..\..\..\lib\tests\win32\$(Configuration);%(AdditionalLibraryDirectories)
- @LIBXML2_LIB@libisc.lib;libdns.lib;libtests.lib;ws2_32.lib;%(AdditionalDependencies)
-
-
-
-
- Level3
-
-
- MaxSpeed
- true
- @INTRINSIC@
- WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
- OnlyExplicitInline
- false
- true
- .\$(Configuration)\$(TargetName).pch
- .\$(Configuration)\
- .\$(Configuration)\
- $(OutDir)$(TargetName).pdb
- .\;..\..\..\..\;@LIBXML2_INC@..\..\..\..\lib\isc\win32;..\..\..\..\lib\isc\win32\include;..\..\..\..\lib\isc\include;..\..\..\..\lib\dns\include;..\..\..\..\lib\tests\include;%(AdditionalIncludeDirectories)
- CompileAsC
-
-
- Console
- false
- true
- true
- ..\..\..\..\Build\$(Configuration)\$(TargetName)$(TargetExt)
- Default
- ..\..\..\..\lib\isc\win32\$(Configuration);..\..\..\..\lib\dns\win32\$(Configuration);..\..\..\..\lib\tests\win32\$(Configuration);%(AdditionalLibraryDirectories)
- @LIBXML2_LIB@libisc.lib;libdns.lib;libtests.lib;ws2_32.lib;%(AdditionalDependencies)
-
-
-
-
-
-
-
-
-
diff --git a/bin/tests/atomic/win32/t_atomic.vcxproj.user b/bin/tests/atomic/win32/t_atomic.vcxproj.user
deleted file mode 100644
index 695b5c78b9..0000000000
--- a/bin/tests/atomic/win32/t_atomic.vcxproj.user
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
\ No newline at end of file
diff --git a/configure b/configure
index 69251d7266..d9f6b8e396 100755
--- a/configure
+++ b/configure
@@ -24157,7 +24157,7 @@ ac_config_commands="$ac_config_commands chmod"
# elsewhere if there's a good reason for doing so.
#
-ac_config_files="$ac_config_files make/Makefile make/mkdep Makefile bin/Makefile bin/check/Makefile bin/confgen/Makefile bin/confgen/unix/Makefile bin/delv/Makefile bin/dig/Makefile bin/dnssec/Makefile bin/named/Makefile bin/named/unix/Makefile bin/nsupdate/Makefile bin/pkcs11/Makefile bin/python/Makefile bin/python/isc/Makefile bin/python/isc/utils.py bin/python/isc/tests/Makefile bin/python/dnssec-checkds.py bin/python/dnssec-coverage.py bin/python/dnssec-keymgr.py bin/python/isc/__init__.py bin/python/isc/checkds.py bin/python/isc/coverage.py bin/python/isc/dnskey.py bin/python/isc/eventlist.py bin/python/isc/keydict.py bin/python/isc/keyevent.py bin/python/isc/keymgr.py bin/python/isc/keyseries.py bin/python/isc/keyzone.py bin/python/isc/policy.py bin/python/isc/rndc.py bin/python/isc/tests/dnskey_test.py bin/python/isc/tests/policy_test.py bin/rndc/Makefile bin/tests/Makefile bin/tests/atomic/Makefile bin/tests/db/Makefile bin/tests/dst/Makefile bin/tests/dst/Kdh.+002+18602.key bin/tests/dst/Kdh.+002+18602.private bin/tests/dst/Kdh.+002+48957.key bin/tests/dst/Kdh.+002+48957.private bin/tests/dst/Ktest.+001+00002.key bin/tests/dst/Ktest.+001+54622.key bin/tests/dst/Ktest.+001+54622.private bin/tests/dst/Ktest.+003+23616.key bin/tests/dst/Ktest.+003+23616.private bin/tests/dst/Ktest.+003+49667.key bin/tests/dst/dst_2_data bin/tests/dst/t2_data_1 bin/tests/dst/t2_data_2 bin/tests/dst/t2_dsasig bin/tests/dst/t2_rsasig bin/tests/headerdep_test.sh bin/tests/names/Makefile bin/tests/optional/Makefile bin/tests/pkcs11/Makefile bin/tests/pkcs11/benchmarks/Makefile bin/tests/rbt/Makefile bin/tests/resolver/Makefile bin/tests/system/Makefile bin/tests/system/conf.sh bin/tests/system/dlz/prereq.sh bin/tests/system/dlzexternal/Makefile bin/tests/system/dlzexternal/ns1/dlzs.conf bin/tests/system/dyndb/Makefile bin/tests/system/dyndb/driver/Makefile bin/tests/system/inline/checkdsa.sh bin/tests/system/pipelined/Makefile bin/tests/system/rndc/Makefile bin/tests/system/rpz/Makefile bin/tests/system/rsabigexponent/Makefile bin/tests/system/tkey/Makefile bin/tests/tasks/Makefile bin/tests/timers/Makefile bin/tests/virtual-time/Makefile bin/tests/virtual-time/conf.sh bin/tools/Makefile contrib/scripts/check-secure-delegation.pl contrib/scripts/zone-edit.sh doc/Makefile doc/arm/Makefile doc/arm/noteversion.xml doc/arm/pkgversion.xml doc/arm/releaseinfo.xml doc/doxygen/Doxyfile doc/doxygen/Makefile doc/doxygen/doxygen-input-filter doc/misc/Makefile doc/tex/Makefile doc/tex/armstyle.sty doc/xsl/Makefile doc/xsl/isc-docbook-chunk.xsl doc/xsl/isc-docbook-html.xsl doc/xsl/isc-manpage.xsl doc/xsl/isc-notes-html.xsl isc-config.sh lib/Makefile lib/bind9/Makefile lib/bind9/include/Makefile lib/bind9/include/bind9/Makefile lib/dns/Makefile lib/dns/include/Makefile lib/dns/include/dns/Makefile lib/dns/include/dst/Makefile lib/dns/tests/Makefile lib/irs/Makefile lib/irs/include/Makefile lib/irs/include/irs/Makefile lib/irs/include/irs/netdb.h lib/irs/include/irs/platform.h lib/irs/tests/Makefile lib/isc/$arch/Makefile lib/isc/$arch/include/Makefile lib/isc/$arch/include/isc/Makefile lib/isc/$thread_dir/Makefile lib/isc/$thread_dir/include/Makefile lib/isc/$thread_dir/include/isc/Makefile lib/isc/Makefile lib/isc/include/Makefile lib/isc/include/isc/Makefile lib/isc/include/isc/platform.h lib/isc/include/pk11/Makefile lib/isc/include/pkcs11/Makefile lib/isc/tests/Makefile lib/isc/nls/Makefile lib/isc/unix/Makefile lib/isc/unix/include/Makefile lib/isc/unix/include/isc/Makefile lib/isc/unix/include/pkcs11/Makefile lib/isccc/Makefile lib/isccc/include/Makefile lib/isccc/include/isccc/Makefile lib/isccfg/Makefile lib/isccfg/include/Makefile lib/isccfg/include/isccfg/Makefile lib/isccfg/tests/Makefile lib/ns/Makefile lib/ns/include/Makefile lib/ns/include/ns/Makefile lib/ns/tests/Makefile lib/tests/Makefile lib/tests/include/Makefile lib/tests/include/tests/Makefile lib/samples/Makefile lib/samples/Makefile-postinstall unit/Makefile unit/unittest.sh"
+ac_config_files="$ac_config_files make/Makefile make/mkdep Makefile bin/Makefile bin/check/Makefile bin/confgen/Makefile bin/confgen/unix/Makefile bin/delv/Makefile bin/dig/Makefile bin/dnssec/Makefile bin/named/Makefile bin/named/unix/Makefile bin/nsupdate/Makefile bin/pkcs11/Makefile bin/python/Makefile bin/python/isc/Makefile bin/python/isc/utils.py bin/python/isc/tests/Makefile bin/python/dnssec-checkds.py bin/python/dnssec-coverage.py bin/python/dnssec-keymgr.py bin/python/isc/__init__.py bin/python/isc/checkds.py bin/python/isc/coverage.py bin/python/isc/dnskey.py bin/python/isc/eventlist.py bin/python/isc/keydict.py bin/python/isc/keyevent.py bin/python/isc/keymgr.py bin/python/isc/keyseries.py bin/python/isc/keyzone.py bin/python/isc/policy.py bin/python/isc/rndc.py bin/python/isc/tests/dnskey_test.py bin/python/isc/tests/policy_test.py bin/rndc/Makefile bin/tests/Makefile bin/tests/db/Makefile bin/tests/dst/Makefile bin/tests/dst/Kdh.+002+18602.key bin/tests/dst/Kdh.+002+18602.private bin/tests/dst/Kdh.+002+48957.key bin/tests/dst/Kdh.+002+48957.private bin/tests/dst/Ktest.+001+00002.key bin/tests/dst/Ktest.+001+54622.key bin/tests/dst/Ktest.+001+54622.private bin/tests/dst/Ktest.+003+23616.key bin/tests/dst/Ktest.+003+23616.private bin/tests/dst/Ktest.+003+49667.key bin/tests/dst/dst_2_data bin/tests/dst/t2_data_1 bin/tests/dst/t2_data_2 bin/tests/dst/t2_dsasig bin/tests/dst/t2_rsasig bin/tests/headerdep_test.sh bin/tests/names/Makefile bin/tests/optional/Makefile bin/tests/pkcs11/Makefile bin/tests/pkcs11/benchmarks/Makefile bin/tests/rbt/Makefile bin/tests/resolver/Makefile bin/tests/system/Makefile bin/tests/system/conf.sh bin/tests/system/dlz/prereq.sh bin/tests/system/dlzexternal/Makefile bin/tests/system/dlzexternal/ns1/dlzs.conf bin/tests/system/dyndb/Makefile bin/tests/system/dyndb/driver/Makefile bin/tests/system/inline/checkdsa.sh bin/tests/system/pipelined/Makefile bin/tests/system/rndc/Makefile bin/tests/system/rpz/Makefile bin/tests/system/rsabigexponent/Makefile bin/tests/system/tkey/Makefile bin/tests/tasks/Makefile bin/tests/timers/Makefile bin/tests/virtual-time/Makefile bin/tests/virtual-time/conf.sh bin/tools/Makefile contrib/scripts/check-secure-delegation.pl contrib/scripts/zone-edit.sh doc/Makefile doc/arm/Makefile doc/arm/noteversion.xml doc/arm/pkgversion.xml doc/arm/releaseinfo.xml doc/doxygen/Doxyfile doc/doxygen/Makefile doc/doxygen/doxygen-input-filter doc/misc/Makefile doc/tex/Makefile doc/tex/armstyle.sty doc/xsl/Makefile doc/xsl/isc-docbook-chunk.xsl doc/xsl/isc-docbook-html.xsl doc/xsl/isc-manpage.xsl doc/xsl/isc-notes-html.xsl isc-config.sh lib/Makefile lib/bind9/Makefile lib/bind9/include/Makefile lib/bind9/include/bind9/Makefile lib/dns/Makefile lib/dns/include/Makefile lib/dns/include/dns/Makefile lib/dns/include/dst/Makefile lib/dns/tests/Makefile lib/irs/Makefile lib/irs/include/Makefile lib/irs/include/irs/Makefile lib/irs/include/irs/netdb.h lib/irs/include/irs/platform.h lib/irs/tests/Makefile lib/isc/$arch/Makefile lib/isc/$arch/include/Makefile lib/isc/$arch/include/isc/Makefile lib/isc/$thread_dir/Makefile lib/isc/$thread_dir/include/Makefile lib/isc/$thread_dir/include/isc/Makefile lib/isc/Makefile lib/isc/include/Makefile lib/isc/include/isc/Makefile lib/isc/include/isc/platform.h lib/isc/include/pk11/Makefile lib/isc/include/pkcs11/Makefile lib/isc/tests/Makefile lib/isc/nls/Makefile lib/isc/unix/Makefile lib/isc/unix/include/Makefile lib/isc/unix/include/isc/Makefile lib/isc/unix/include/pkcs11/Makefile lib/isccc/Makefile lib/isccc/include/Makefile lib/isccc/include/isccc/Makefile lib/isccfg/Makefile lib/isccfg/include/Makefile lib/isccfg/include/isccfg/Makefile lib/isccfg/tests/Makefile lib/ns/Makefile lib/ns/include/Makefile lib/ns/include/ns/Makefile lib/ns/tests/Makefile lib/tests/Makefile lib/tests/include/Makefile lib/tests/include/tests/Makefile lib/samples/Makefile lib/samples/Makefile-postinstall unit/Makefile unit/unittest.sh"
#
@@ -25196,7 +25196,6 @@ do
"bin/python/isc/tests/policy_test.py") CONFIG_FILES="$CONFIG_FILES bin/python/isc/tests/policy_test.py" ;;
"bin/rndc/Makefile") CONFIG_FILES="$CONFIG_FILES bin/rndc/Makefile" ;;
"bin/tests/Makefile") CONFIG_FILES="$CONFIG_FILES bin/tests/Makefile" ;;
- "bin/tests/atomic/Makefile") CONFIG_FILES="$CONFIG_FILES bin/tests/atomic/Makefile" ;;
"bin/tests/db/Makefile") CONFIG_FILES="$CONFIG_FILES bin/tests/db/Makefile" ;;
"bin/tests/dst/Makefile") CONFIG_FILES="$CONFIG_FILES bin/tests/dst/Makefile" ;;
"bin/tests/dst/Kdh.+002+18602.key") CONFIG_FILES="$CONFIG_FILES bin/tests/dst/Kdh.+002+18602.key" ;;
diff --git a/configure.in b/configure.in
index 8ba8f056fb..7c63b5fc5d 100644
--- a/configure.in
+++ b/configure.in
@@ -5313,7 +5313,6 @@ AC_CONFIG_FILES([
bin/python/isc/tests/policy_test.py
bin/rndc/Makefile
bin/tests/Makefile
- bin/tests/atomic/Makefile
bin/tests/db/Makefile
bin/tests/dst/Makefile
bin/tests/dst/Kdh.+002+18602.key
diff --git a/lib/isc/tests/Makefile.in b/lib/isc/tests/Makefile.in
index f9cb409388..7e8ca30b75 100644
--- a/lib/isc/tests/Makefile.in
+++ b/lib/isc/tests/Makefile.in
@@ -28,29 +28,33 @@ ISCDEPLIBS = ../libisc.@A@
LIBS = @LIBS@ @ATFLIBS@
OBJS = isctest.@O@
-SRCS = isctest.c aes_test.c buffer_test.c counter_test.c \
- errno_test.c file_test.c hash_test.c heap_test.c \
- ht_test.c inet_ntop_test.c lex_test.c mem_test.c \
- netaddr_test.c parse_test.c pool_test.c print_test.c \
- queue_test.c radix_test.c random_test.c regex_test.c \
- result_test.c safe_test.c sockaddr_test.c \
+SRCS = isctest.c aes_test.c atomic_test.c buffer_test.c \
+ counter_test.c errno_test.c file_test.c hash_test.c \
+ heap_test.c ht_test.c inet_ntop_test.c lex_test.c \
+ mem_test.c netaddr_test.c parse_test.c pool_test.c \
+ print_test.c queue_test.c radix_test.c random_test.c \
+ regex_test.c result_test.c safe_test.c sockaddr_test.c \
socket_test.c socket_test.c symtab_test.c task_test.c \
taskpool_test.c time_test.c
SUBDIRS =
-TARGETS = aes_test@EXEEXT@ buffer_test@EXEEXT@ counter_test@EXEEXT@ \
- errno_test@EXEEXT@ file_test@EXEEXT@ hash_test@EXEEXT@ \
- heap_test@EXEEXT@ ht_test@EXEEXT@ inet_ntop_test@EXEEXT@ \
- lex_test@EXEEXT@ mem_test@EXEEXT@ netaddr_test@EXEEXT@ \
- parse_test@EXEEXT@ pool_test@EXEEXT@ print_test@EXEEXT@ \
- queue_test@EXEEXT@ radix_test@EXEEXT@ random_test@EXEEXT@ \
- regex_test@EXEEXT@ result_test@EXEEXT@ safe_test@EXEEXT@ \
- sockaddr_test@EXEEXT@ socket_test@EXEEXT@ \
+TARGETS = aes_test@EXEEXT@ atomic_test@EXEEXT@ buffer_test@EXEEXT@ \
+ counter_test@EXEEXT@ errno_test@EXEEXT@ file_test@EXEEXT@ \
+ hash_test@EXEEXT@ heap_test@EXEEXT@ ht_test@EXEEXT@ \
+ inet_ntop_test@EXEEXT@ lex_test@EXEEXT@ mem_test@EXEEXT@ \
+ netaddr_test@EXEEXT@ parse_test@EXEEXT@ pool_test@EXEEXT@ \
+ print_test@EXEEXT@ queue_test@EXEEXT@ radix_test@EXEEXT@ \
+ random_test@EXEEXT@ regex_test@EXEEXT@ result_test@EXEEXT@ \
+ safe_test@EXEEXT@ sockaddr_test@EXEEXT@ socket_test@EXEEXT@ \
socket_test@EXEEXT@ symtab_test@EXEEXT@ task_test@EXEEXT@ \
taskpool_test@EXEEXT@ time_test@EXEEXT@
@BIND9_MAKE_RULES@
+atomic_test@EXEEXT@: atomic_test.@O@ isctest.@O@ ${ISCDEPLIBS}
+ ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
+ atomic_test.@O@ isctest.@O@ ${ISCLIBS} ${LIBS}
+
aes_test@EXEEXT@: aes_test.@O@ ${ISCDEPLIBS}
${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
aes_test.@O@ ${ISCLIBS} ${LIBS}
diff --git a/bin/tests/atomic/t_atomic.c b/lib/isc/tests/atomic_test.c
similarity index 59%
rename from bin/tests/atomic/t_atomic.c
rename to lib/isc/tests/atomic_test.c
index 2e46503924..3777073a78 100644
--- a/bin/tests/atomic/t_atomic.c
+++ b/lib/isc/tests/atomic_test.c
@@ -10,45 +10,17 @@
*/
#include
-
-#include
#include
+#include
+
#include
-#include
-#include
-#include
-#include
-#include
-#include
+#include
-#include
-
-char *progname;
-
-#define CHECK(x) RUNTIME_CHECK(ISC_R_SUCCESS == (x))
-
-isc_mem_t *mctx = NULL;
-isc_taskmgr_t *task_manager = NULL;
-
-#if defined(ISC_PLATFORM_HAVEXADD) || defined(ISC_PLATFORM_HAVEXADDQ) || \
- defined(ISC_PLATFORM_HAVEATOMICSTORE) || \
- defined(ISC_PLATFORM_HAVEATOMICSTOREQ)
-static void
-setup(void) {
- /* 1 */ CHECK(isc_mem_create(0, 0, &mctx));
- /* 2 */ CHECK(isc_taskmgr_create(mctx, 32, 0, &task_manager));
-}
-
-static void
-teardown(void) {
- /* 2 */ isc_taskmgr_destroy(&task_manager);
- /* 1 */ isc_mem_destroy(&mctx);
-}
-#endif
+#include "isctest.h"
#define TASKS 32
-#define ITERATIONS 10000
+#define ITERATIONS 1000
#define COUNTS_PER_ITERATION 1000
#define INCREMENT_64 (isc_int64_t)0x0000000010000000
#define EXPECTED_COUNT_32 (TASKS * ITERATIONS * COUNTS_PER_ITERATION)
@@ -80,17 +52,20 @@ do_xadd(isc_task_t *task, isc_event_t *ev) {
}
}
-static void
-test_atomic_xadd() {
- int test_result;
+ATF_TC(atomic_xadd);
+ATF_TC_HEAD(atomic_xadd, tc) {
+ atf_tc_set_md_var(tc, "descr", "atomic XADD");
+}
+ATF_TC_BODY(atomic_xadd, tc) {
+ isc_result_t result;
isc_task_t *tasks[TASKS];
- isc_event_t *event;
+ isc_event_t *event = NULL;
int i;
- t_assert("test_atomic_xadd", 1, T_REQUIRED, "%s",
- "ensure that isc_atomic_xadd() works.");
+ UNUSED(tc);
- setup();
+ result = isc_test_begin(NULL, ISC_TRUE);
+ ATF_REQUIRE_EQ(result, ISC_R_SUCCESS);
memset(counters, 0, sizeof(counters));
counter_32 = 0;
@@ -100,20 +75,21 @@ test_atomic_xadd() {
*/
for (i = 0 ; i < TASKS ; i++) {
tasks[i] = NULL;
- CHECK(isc_task_create(task_manager, 0, &tasks[i]));
+ ATF_REQUIRE_EQ(isc_task_create(taskmgr, 0, &tasks[i]),
+ ISC_R_SUCCESS);
event = isc_event_allocate(mctx, NULL, 1000, do_xadd,
- &counters[i], sizeof(struct isc_event));
+ &counters[i],
+ sizeof(struct isc_event));
+ ATF_REQUIRE(event != NULL);
isc_task_sendanddetach(&tasks[i], &event);
}
- teardown();
+ isc_test_end();
- test_result = T_PASS;
- t_info("32-bit counter %d, expected %d\n", counter_32, EXPECTED_COUNT_32);
- if (counter_32 != EXPECTED_COUNT_32)
- test_result = T_FAIL;
- t_result(test_result);
+ printf("32-bit counter %d, expected %d\n",
+ counter_32, EXPECTED_COUNT_32);
+ ATF_CHECK_EQ(counter_32, EXPECTED_COUNT_32);
counter_32 = 0;
}
#endif
@@ -138,17 +114,20 @@ do_xaddq(isc_task_t *task, isc_event_t *ev) {
}
}
-static void
-test_atomic_xaddq() {
- int test_result;
+ATF_TC(atomic_xaddq);
+ATF_TC_HEAD(atomic_xaddq, tc) {
+ atf_tc_set_md_var(tc, "descr", "atomic XADDQ");
+}
+ATF_TC_BODY(atomic_xaddq, tc) {
+ isc_result_t result;
isc_task_t *tasks[TASKS];
- isc_event_t *event;
+ isc_event_t *event = NULL;
int i;
- t_assert("test_atomic_xaddq", 1, T_REQUIRED, "%s",
- "ensure that isc_atomic_xaddq() works.");
+ UNUSED(tc);
- setup();
+ result = isc_test_begin(NULL, ISC_TRUE);
+ ATF_REQUIRE_EQ(result, ISC_R_SUCCESS);
memset(counters, 0, sizeof(counters));
counter_64 = 0;
@@ -158,26 +137,27 @@ test_atomic_xaddq() {
*/
for (i = 0 ; i < TASKS ; i++) {
tasks[i] = NULL;
- CHECK(isc_task_create(task_manager, 0, &tasks[i]));
+ ATF_REQUIRE_EQ(isc_task_create(taskmgr, 0, &tasks[i]),
+ ISC_R_SUCCESS);
event = isc_event_allocate(mctx, NULL, 1000, do_xaddq,
- &counters[i], sizeof(struct isc_event));
+ &counters[i],
+ sizeof(struct isc_event));
+ ATF_REQUIRE(event != NULL);
isc_task_sendanddetach(&tasks[i], &event);
}
- teardown();
+ isc_test_end();
- test_result = T_PASS;
- t_info("64-bit counter %"ISC_PRINT_QUADFORMAT"d, expected %"ISC_PRINT_QUADFORMAT"d\n",
+ printf("64-bit counter %"ISC_PRINT_QUADFORMAT"d, "
+ "expected %"ISC_PRINT_QUADFORMAT"d\n",
counter_64, EXPECTED_COUNT_64);
- if (counter_64 != EXPECTED_COUNT_64)
- test_result = T_FAIL;
- t_result(test_result);
- counter_64 = 0;
+ ATF_CHECK_EQ(counter_64, EXPECTED_COUNT_64);
+ counter_32 = 0;
}
#endif
-#ifdef ISC_PLATFORM_HAVEATOMICSTORE
+#if defined(ISC_PLATFORM_HAVEATOMICSTORE)
static isc_int32_t store_32;
static void
@@ -202,19 +182,22 @@ do_store(isc_task_t *task, isc_event_t *ev) {
}
}
-static void
-test_atomic_store() {
- int test_result;
+ATF_TC(atomic_store);
+ATF_TC_HEAD(atomic_store, tc) {
+ atf_tc_set_md_var(tc, "descr", "atomic STORE");
+}
+ATF_TC_BODY(atomic_store, tc) {
+ isc_result_t result;
isc_task_t *tasks[TASKS];
- isc_event_t *event;
- int i;
- isc_uint32_t r;
+ isc_event_t *event = NULL;
isc_uint32_t val;
+ isc_uint32_t r;
+ int i;
- t_assert("test_atomic_store", 1, T_REQUIRED, "%s",
- "ensure that isc_atomic_store() works.");
+ UNUSED(tc);
- setup();
+ result = isc_test_begin(NULL, ISC_TRUE);
+ ATF_REQUIRE_EQ(result, ISC_R_SUCCESS);
memset(counters, 0, sizeof(counters));
store_32 = 0;
@@ -225,24 +208,24 @@ test_atomic_store() {
*/
for (i = 0 ; i < TASKS ; i++) {
tasks[i] = NULL;
- CHECK(isc_task_create(task_manager, 0, &tasks[i]));
+ ATF_REQUIRE_EQ(isc_task_create(taskmgr, 0, &tasks[i]),
+ ISC_R_SUCCESS);
event = isc_event_allocate(mctx, NULL, 1000, do_store,
&counters[i],
sizeof(struct isc_event));
+ ATF_REQUIRE(event != NULL);
isc_task_sendanddetach(&tasks[i], &event);
}
- teardown();
+ isc_test_end();
- test_result = T_PASS;
r = store_32 & 0xff;
val = (r << 24) | (r << 16) | (r << 8) | r;
- t_info("32-bit store 0x%x, expected 0x%x\n",
- (isc_uint32_t) store_32, val);
- if ((isc_uint32_t) store_32 != val)
- test_result = T_FAIL;
- t_result(test_result);
+ printf("32-bit store 0x%x, expected 0x%x\n",
+ (isc_uint32_t) store_32, val);
+
+ ATF_CHECK_EQ((isc_uint32_t) store_32, val);
store_32 = 0;
}
#endif
@@ -276,73 +259,74 @@ do_storeq(isc_task_t *task, isc_event_t *ev) {
}
}
-static void
-test_atomic_storeq() {
- int test_result;
+ATF_TC(atomic_storeq);
+ATF_TC_HEAD(atomic_storeq, tc) {
+ atf_tc_set_md_var(tc, "descr", "atomic STOREQ");
+}
+ATF_TC_BODY(atomic_storeq, tc) {
+ isc_result_t result;
isc_task_t *tasks[TASKS];
- isc_event_t *event;
- int i;
- isc_uint8_t r;
+ isc_event_t *event = NULL;
isc_uint64_t val;
+ isc_uint32_t r;
+ int i;
- t_assert("test_atomic_storeq", 1, T_REQUIRED, "%s",
- "ensure that isc_atomic_storeq() works.");
+ UNUSED(tc);
- setup();
+ result = isc_test_begin(NULL, ISC_TRUE);
+ ATF_REQUIRE_EQ(result, ISC_R_SUCCESS);
memset(counters, 0, sizeof(counters));
store_64 = 0;
/*
- * Create our tasks, and allocate an event to get the counters going.
+ * Create our tasks, and allocate an event to get the counters
+ * going.
*/
for (i = 0 ; i < TASKS ; i++) {
tasks[i] = NULL;
- CHECK(isc_task_create(task_manager, 0, &tasks[i]));
+ ATF_REQUIRE_EQ(isc_task_create(taskmgr, 0, &tasks[i]),
+ ISC_R_SUCCESS);
event = isc_event_allocate(mctx, NULL, 1000, do_storeq,
- &counters[i], sizeof(struct isc_event));
+ &counters[i],
+ sizeof(struct isc_event));
+ ATF_REQUIRE(event != NULL);
isc_task_sendanddetach(&tasks[i], &event);
}
- teardown();
+ isc_test_end();
- test_result = T_PASS;
r = store_64 & 0xff;
val = (((isc_uint64_t) r << 24) |
((isc_uint64_t) r << 16) |
((isc_uint64_t) r << 8) |
(isc_uint64_t) r);
val |= ((isc_uint64_t) val << 32);
- t_info("64-bit store 0x%"ISC_PRINT_QUADFORMAT"x, expected 0x%"ISC_PRINT_QUADFORMAT"x\n",
- (isc_uint64_t) store_64, val);
- if ((isc_uint64_t) store_64 != val)
- test_result = T_FAIL;
- t_result(test_result);
+ printf("64-bit store 0x%"ISC_PRINT_QUADFORMAT"x, "
+ "expected 0x%"ISC_PRINT_QUADFORMAT"x\n",
+ (isc_uint64_t) store_64, val);
+
+ ATF_CHECK_EQ((isc_uint64_t) store_64, val);
store_64 = 0;
}
-#endif /* ISC_PLATFORM_HAVEATOMICSTOREQ */
+#endif
-testspec_t T_testlist[] = {
+/*
+ * Main
+ */
+ATF_TP_ADD_TCS(tp) {
#if defined(ISC_PLATFORM_HAVEXADD)
- { (PFV) test_atomic_xadd, "test_atomic_xadd" },
+ ATF_TP_ADD_TC(tp, atomic_xadd);
#endif
#if defined(ISC_PLATFORM_HAVEXADDQ)
- { (PFV) test_atomic_xaddq, "test_atomic_xaddq" },
+ ATF_TP_ADD_TC(tp, atomic_xaddq);
#endif
#ifdef ISC_PLATFORM_HAVEATOMICSTORE
- { (PFV) test_atomic_store, "test_atomic_store" },
+ ATF_TP_ADD_TC(tp, atomic_store);
#endif
#if defined(ISC_PLATFORM_HAVEATOMICSTOREQ)
- { (PFV) test_atomic_storeq, "test_atomic_storeq" },
+ ATF_TP_ADD_TC(tp, atomic_storeq);
#endif
- { (PFV) 0, NULL }
-};
-
-#ifdef WIN32
-int
-main(int argc, char **argv) {
- t_settests(T_testlist);
- return (t_main(argc, argv));
+ return (atf_no_error());
}
-#endif
diff --git a/util/copyrights b/util/copyrights
index 314da97c48..f246609e06 100644
--- a/util/copyrights
+++ b/util/copyrights
@@ -335,11 +335,6 @@
./bin/tests/Kchild.example.+003+04017.private X 2000,2001,2018
./bin/tests/Makefile.in MAKE 1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018
./bin/tests/adb_test.c C 1999,2000,2001,2004,2005,2007,2009,2011,2012,2013,2015,2016,2018
-./bin/tests/atomic/Makefile.in MAKE 2011,2012,2014,2016,2017,2018
-./bin/tests/atomic/t_atomic.c C 2011,2013,2015,2016,2017,2018
-./bin/tests/atomic/win32/t_atomic.vcxproj.filters.in X 2013,2015,2018
-./bin/tests/atomic/win32/t_atomic.vcxproj.in X 2013,2015,2016,2017,2018
-./bin/tests/atomic/win32/t_atomic.vcxproj.user X 2013,2018
./bin/tests/backtrace_test.c C 2009,2013,2015,2016,2018
./bin/tests/bigtest/README TXT.BRIEF 2013,2016,2018
./bin/tests/bigtest/buildzones.sh SH 2013,2016,2018
diff --git a/win32utils/Configure b/win32utils/Configure
index 7fdff945ea..a290bfdb56 100644
--- a/win32utils/Configure
+++ b/win32utils/Configure
@@ -116,8 +116,6 @@ my @projectlist = ("..\\bin\\check\\win32\\checkconf.vcxproj",
"..\\bin\\tools\\win32\\nsec3hash.vcxproj.filters",
"..\\bin\\tools\\win32\\rrchecker.vcxproj",
"..\\bin\\tools\\win32\\rrchecker.vcxproj.filters",
- "..\\bin\\tests\\atomic\\win32\\t_atomic.vcxproj",
- "..\\bin\\tests\\atomic\\win32\\t_atomic.vcxproj.filters",
"..\\bin\\tests\\db\\win32\\t_db.vcxproj",
"..\\bin\\tests\\db\\win32\\t_db.vcxproj.filters",
"..\\bin\\tests\\dst\\win32\\t_dst.vcxproj",
diff --git a/win32utils/bind9.sln.in b/win32utils/bind9.sln.in
index b79a9ad3f8..7dd0765ffb 100644
--- a/win32utils/bind9.sln.in
+++ b/win32utils/bind9.sln.in
@@ -498,14 +498,6 @@ EndProject
@END PKCS11
@IF TESTS
@IF ATOMIC
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "t_atomic", "..\bin\tests\atomic\win32\t_atomic.vcxproj", "{EC6ECB35-58C0-48EC-BAC9-9A652D9406C9}"
- ProjectSection(ProjectDependencies) = postProject
- {A3F71D12-F38A-4C77-8D87-8E8854CA74A1} = {A3F71D12-F38A-4C77-8D87-8E8854CA74A1}
- {3840E563-D180-4761-AA9C-E6155F02EAFF} = {3840E563-D180-4761-AA9C-E6155F02EAFF}
- {5FEBFD4E-CCB0-48B9-B733-E15EEB85C16A} = {5FEBFD4E-CCB0-48B9-B733-E15EEB85C16A}
- {F6F08940-7597-4FEE-9CE0-E09A009C45A3} = {F6F08940-7597-4FEE-9CE0-E09A009C45A3}
- EndProjectSection
-EndProject
@END ATOMIC
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "t_db", "..\bin\tests\db\win32\t_db.vcxproj", "{E6338E67-3224-4E66-9463-7AD719DA9346}"
ProjectSection(ProjectDependencies) = postProject