[rtems commit] psxhdrs: POSIX API Signature Compliance Tests for langinfo.h (GCI 2018)

Joel Sherrill joel at rtems.org
Wed Dec 5 17:32:06 UTC 2018


Module:    rtems
Branch:    master
Commit:    7fe5922a5f5ae4bfd88dbca609d4fe6730360056
Changeset: http://git.rtems.org/rtems/commit/?id=7fe5922a5f5ae4bfd88dbca609d4fe6730360056

Author:    Jacob Shin <jacobshin313 at gmail.com>
Date:      Wed Dec  5 12:14:17 2018 -0500

psxhdrs: POSIX API Signature Compliance Tests for langinfo.h (GCI 2018)

---

 testsuites/psxtests/Makefile.am                    |  4 ++-
 testsuites/psxtests/psxhdrs/langinfo/nl_langinfo.c | 38 ++++++++++++++++++++
 .../psxtests/psxhdrs/langinfo/nl_langinfo_l.c      | 41 ++++++++++++++++++++++
 3 files changed, 82 insertions(+), 1 deletion(-)

diff --git a/testsuites/psxtests/Makefile.am b/testsuites/psxtests/Makefile.am
index b25184c..a4993fe 100644
--- a/testsuites/psxtests/Makefile.am
+++ b/testsuites/psxtests/Makefile.am
@@ -1147,7 +1147,9 @@ lib_a_SOURCES = psxhdrs/devctl/posix_devctl.c \
 	psxhdrs/sys/time/utimes.c \
 	psxhdrs/sys/time/setitimer.c \
 	psxhdrs/sys/time/getitimer.c \
-	psxhdrs/sys/time/gettimeofday.c
+	psxhdrs/sys/time/gettimeofday.c \
+	psxhdrs/langinfo/nl_langinfo.c \
+	psxhdrs/langinfo/nl_langinfo_l.c
 
 ## Not supported by RTEMS, but POSIX API Compliance tests exist.
 ## lib_a_SOURCES += psxhdrs/ulimit/ulimit.c
diff --git a/testsuites/psxtests/psxhdrs/langinfo/nl_langinfo.c b/testsuites/psxtests/psxhdrs/langinfo/nl_langinfo.c
new file mode 100644
index 0000000..298542c
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/langinfo/nl_langinfo.c
@@ -0,0 +1,38 @@
+/**
+ *  @file
+ *  @brief nl_langinfo() API Conformance Test
+ */
+
+ /*
+  *  COPYRIGHT (c) 2018.
+  *  Jacob Shin
+  *
+  *  Permission to use, copy, modify, and/or distribute this software
+  *  for any purpose with or without fee is hereby granted.
+  *
+  *  THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+  *  WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+  *  WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+  *  BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+  *  OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+  *  WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+  *  ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+  */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <langinfo.h>
+#include <locale.h>
+
+int test( void );
+
+int test( void )
+{
+  char *firstday;
+  setlocale(LC_ALL, "en_GB");
+
+  firstday = nl_langinfo(ABDAY_1);
+  return (firstday != NULL);
+}
diff --git a/testsuites/psxtests/psxhdrs/langinfo/nl_langinfo_l.c b/testsuites/psxtests/psxhdrs/langinfo/nl_langinfo_l.c
new file mode 100644
index 0000000..b1820a3
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/langinfo/nl_langinfo_l.c
@@ -0,0 +1,41 @@
+/**
+ *  @file
+ *  @brief nl_langinfo_l() API Conformance Test
+ */
+
+ /*
+  *  COPYRIGHT (c) 2018.
+  *  Jacob Shin
+  *
+  *  Permission to use, copy, modify, and/or distribute this software
+  *  for any purpose with or without fee is hereby granted.
+  *
+  *  THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+  *  WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+  *  WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+  *  BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+  *  OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+  *  WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+  *  ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+  */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <langinfo.h>
+#include <locale.h>
+
+int test( void );
+
+int test( void )
+{
+  char *firstday;
+  locale_t loc = newlocale(LC_ALL_MASK, "C", (locale_t) 0);
+  setlocale(LC_ALL, "en_GB");
+
+  firstday = nl_langinfo_l(ABDAY_1, loc);
+
+  freelocale(loc);
+  return (firstday != NULL);
+}




More information about the vc mailing list