summaryrefslogtreecommitdiff
path: root/ACE/tests/Bug_2975_Regression_Test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/tests/Bug_2975_Regression_Test.cpp')
-rw-r--r--ACE/tests/Bug_2975_Regression_Test.cpp57
1 files changed, 57 insertions, 0 deletions
diff --git a/ACE/tests/Bug_2975_Regression_Test.cpp b/ACE/tests/Bug_2975_Regression_Test.cpp
new file mode 100644
index 00000000000..379621358c8
--- /dev/null
+++ b/ACE/tests/Bug_2975_Regression_Test.cpp
@@ -0,0 +1,57 @@
+/**
+ * @file Bug_2975_Regression_Test.cpp
+ *
+ * $Id$
+ *
+ * Reproduces the problems reported in bug 2975:
+ * http://deuce.doc.wustl.edu/bugzilla/show_bug.cgi?id=2975
+ *
+ * @author Pavel Zaichenko <zaichep@mail.ru>
+ */
+
+#include "ace/ACE.h"
+#include "test_config.h"
+#include "ace/Service_Config.h"
+#include "ace/ARGV.h"
+
+int
+run_main (int, ACE_TCHAR *argv[])
+{
+ ACE_START_TEST (ACE_TEXT ("Bug_2975_Regression_Test"));
+
+ int ret = 0;
+
+ ACE_ARGV args;
+ args.add (argv[0], true);
+ args.add (ACE_TEXT("-S"));
+#if (ACE_USES_CLASSIC_SVC_CONF == 1)
+ args.add (
+ ACE_TEXT ("\"dynamic ACE_Logger Service_Object * ")
+ ACE_TEXT ("ACE:_make_ACE_Logging_Strategy() ")
+ ACE_TEXT ("'-p ~TRACE|DEBUG|INFO|WARNING|NOTICE|ERROR|CRITICAL|ALERT'")
+ ACE_TEXT ("\""));
+#else // not (ACE_USES_CLASSIC_SVC_CONF == 1)
+ args.add (
+ ACE_TEXT ("'<ACE_Svc_Conf>")
+ ACE_TEXT ("<dynamic id=\"ACE_Logger\"")
+ ACE_TEXT (" type=\"Service_Object\">")
+ ACE_TEXT ("<initializer path=\"ACE\"")
+ ACE_TEXT (" init=\"_make_ACE_Logging_Strategy\"")
+ ACE_TEXT (" params=\"-p ~TRACE|DEBUG|INFO|WARNING|NOTICE|ERROR|CRITICAL|ALERT\"/>")
+ ACE_TEXT ("</dynamic>")
+ ACE_TEXT ("</ACE_Svc_Conf>'"));
+#endif // not (ACE_USES_CLASSIC_SVC_CONF == 1)
+
+ ret = ACE_Service_Config::open(args.argc(), args.argv(),
+ ACE_DEFAULT_LOGGER_KEY,
+ 1, 1);
+
+ if (0 != ret)
+ {
+ ACE_ERROR ((LM_ERROR, ACE_TEXT ("ACE_Service_Config::open() failed\n")));
+ }
+
+ ACE_END_TEST;
+
+ return 0;
+}