mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2025-12-05 23:23:13 +00:00
psxhdrs: Implement POSIX API Signature Compliance Tests for iconv.h (GCI 2018)
This commit is contained in:
committed by
Joel Sherrill
parent
fdcba406db
commit
adc11af97a
@@ -1138,7 +1138,10 @@ lib_a_SOURCES = psxhdrs/devctl/posix_devctl.c \
|
||||
psxhdrs/regex/regerror.c \
|
||||
psxhdrs/regex/regexec.c \
|
||||
psxhdrs/regex/regfree.c \
|
||||
psxhdrs/fnmatch/fnmatch.c
|
||||
psxhdrs/fnmatch/fnmatch.c \
|
||||
psxhdrs/iconv/iconv.c \
|
||||
psxhdrs/iconv/iconv_close.c \
|
||||
psxhdrs/iconv/iconv_open.c
|
||||
endif
|
||||
|
||||
rtems_tests_PROGRAMS = $(psx_tests)
|
||||
|
||||
44
testsuites/psxtests/psxhdrs/iconv/iconv.c
Executable file
44
testsuites/psxtests/psxhdrs/iconv/iconv.c
Executable file
@@ -0,0 +1,44 @@
|
||||
/**
|
||||
* @file
|
||||
* @brief iconv() 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 <iconv.h>
|
||||
|
||||
int test( void );
|
||||
|
||||
int test( void )
|
||||
{
|
||||
|
||||
iconv_t cd = iconv_open("ASCII", "UTF-8");
|
||||
char inbuf[10] = "string";
|
||||
char outbuf[10];
|
||||
char *inptr = inbuf;
|
||||
char *outptr = (char *)outbuf;
|
||||
size_t inbytesLeft = 7;
|
||||
size_t outbytesLeft = 10;
|
||||
size_t return_value;
|
||||
|
||||
return_value = iconv(cd, &inptr, &inbytesLeft, &outptr, &outbytesLeft);
|
||||
return (return_value != (size_t)-1);
|
||||
}
|
||||
37
testsuites/psxtests/psxhdrs/iconv/iconv_close.c
Executable file
37
testsuites/psxtests/psxhdrs/iconv/iconv_close.c
Executable file
@@ -0,0 +1,37 @@
|
||||
/**
|
||||
* @file
|
||||
* @brief iconv_close() 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 <iconv.h>
|
||||
|
||||
int test( void );
|
||||
|
||||
int test( void )
|
||||
{
|
||||
iconv_t cd = iconv_open("UTF-8", "WCHAR_T");
|
||||
int return_value;
|
||||
|
||||
return_value = iconv_close(cd);
|
||||
return (return_value != -1);
|
||||
}
|
||||
36
testsuites/psxtests/psxhdrs/iconv/iconv_open.c
Executable file
36
testsuites/psxtests/psxhdrs/iconv/iconv_open.c
Executable file
@@ -0,0 +1,36 @@
|
||||
/**
|
||||
* @file
|
||||
* @brief iconv_open() 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 <iconv.h>
|
||||
|
||||
int test( void );
|
||||
|
||||
int test( void )
|
||||
{
|
||||
iconv_t return_value;
|
||||
|
||||
return_value = iconv_open("WCHAR_T", "UTF-8");
|
||||
return (return_value != (iconv_t)-1);
|
||||
}
|
||||
Reference in New Issue
Block a user