From 26a029d407be480d791972afb5975cf62c9360a6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 02:47:55 +0200 Subject: Adding upstream version 124.0.1. Signed-off-by: Daniel Baumann --- security/nss/gtests/common/gtests.cc | 52 ++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 security/nss/gtests/common/gtests.cc (limited to 'security/nss/gtests/common/gtests.cc') diff --git a/security/nss/gtests/common/gtests.cc b/security/nss/gtests/common/gtests.cc new file mode 100644 index 0000000000..bacf391fc4 --- /dev/null +++ b/security/nss/gtests/common/gtests.cc @@ -0,0 +1,52 @@ +#include "nspr.h" +#include "nss.h" + +#include + +#define GTEST_HAS_RTTI 0 +#include "gtest/gtest.h" + +// Tests are passed the location of their source directory +// so that they can load extra resources from there. +std::string g_source_dir; + +void usage(const char *progname) { + PR_fprintf(PR_STDERR, "Usage: %s [-s ] [-d [-w]]\n", progname); + exit(2); +} + +int main(int argc, char **argv) { + ::testing::InitGoogleTest(&argc, argv); + + const char *workdir = ""; + uint32_t flags = NSS_INIT_READONLY; + + for (int i = 0; i < argc; i++) { + if (!strcmp(argv[i], "-s")) { + if (i + 1 >= argc) { + usage(argv[0]); + } + i++; + g_source_dir = argv[i]; + } else if (!strcmp(argv[i], "-d")) { + if (i + 1 >= argc) { + usage(argv[0]); + } + i++; + workdir = argv[i]; + } else if (!strcmp(argv[i], "-w")) { + flags &= ~NSS_INIT_READONLY; + } + } + + if (NSS_Initialize(workdir, "", "", SECMOD_DB, flags) != SECSuccess) { + return 1; + } + int rv = RUN_ALL_TESTS(); + + if (NSS_Shutdown() != SECSuccess) { + return 1; + } + + return rv; +} -- cgit v1.2.3