<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jun 13, 2019 at 3:55 AM Gedare Bloom <<a href="mailto:gedare@rtems.org">gedare@rtems.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Wed, Jun 12, 2019 at 12:17 PM Vaibhav Gupta <<a href="mailto:vaibhavgupta40@gmail.com" target="_blank">vaibhavgupta40@gmail.com</a>> wrote:<br>
><br>
> Ok, will do that.<br>
><br>
> On Wed, Jun 12, 2019, 10:10 PM Aditya Upadhyay <<a href="mailto:aadit0402@gmail.com" target="_blank">aadit0402@gmail.com</a>> wrote:<br>
>><br>
>> Hi Vaibhav,<br>
>><br>
>> RTEMS does not use // for comment. Just make this little change and send the<br>
>> next version of this patch.<br>
<br>
Speaking of patch versions, please use the -v option of<br>
git-format-patch to generate version-numbrered patches. this one<br>
should have been maybe -v2, and next one would be -v3, etc...<br>
<br>
>><br>
>> On Wed, Jun 12, 2019 at 3:09 PM Vaibhav Gupta <<a href="mailto:vaibhavgupta40@gmail.com" target="_blank">vaibhavgupta40@gmail.com</a>> wrote:<br>
>> ><br>
>> > ---<br>
>> >  testsuites/psxtests/Makefile.am               |   7 +<br>
>> >  testsuites/psxtests/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a>              |   1 +<br>
>> >  testsuites/psxtests/psxinttypes01/init.c      | 233 ++++++++++++++++++<br>
>> >  .../psxtests/psxinttypes01/psxinttypes01.doc  |  70 ++++++<br>
>> >  .../psxtests/psxinttypes01/psxinttypes01.scn  |  44 ++++<br>
>> >  5 files changed, 355 insertions(+)<br>
>> >  create mode 100644 testsuites/psxtests/psxinttypes01/init.c<br>
>> >  create mode 100644 testsuites/psxtests/psxinttypes01/psxinttypes01.docs<br>
>> >  create mode 100644 testsuites/psxtests/psxinttypes01/psxinttypes01.scn<br>
>> ><br>
>> > diff --git a/testsuites/psxtests/Makefile.am b/testsuites/psxtests/Makefile.am<br>
>> > index 1e354c0df7..59c9f2085b 100755<br>
>> > --- a/testsuites/psxtests/Makefile.am<br>
>> > +++ b/testsuites/psxtests/Makefile.am<br>
>> > @@ -523,6 +523,13 @@ psxintrcritical01_CPPFLAGS = $(AM_CPPFLAGS) \<br>
>> >  endif<br>
>> >  endif<br>
>> ><br>
>> > +if TEST_psxinttypes01<br>
>> > +psx_tests += psxinttypes01<br>
>> > +psxinttypes01_SOURCES = psxinttypes01/init.c<br>
>> > +psxinttypes01_CPPFLAGS = $(AM_CPPFLAGS) $(TEST_FLAGS_psxinttypes01) \<br>
>> > +       $(support_includes)<br>
>> > +endif<br>
>> > +<br>
>> >  if HAS_POSIX<br>
>> >  if TEST_psxitimer<br>
>> >  psx_tests += psxitimer<br>
>> > diff --git a/testsuites/psxtests/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a> b/testsuites/psxtests/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
>> > index cdd6ee7e4e..85559e4aa5 100644<br>
>> > --- a/testsuites/psxtests/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
>> > +++ b/testsuites/psxtests/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
>> > @@ -91,6 +91,7 @@ RTEMS_TEST_CHECK([psxid01])<br>
>> >  RTEMS_TEST_CHECK([psximfs01])<br>
>> >  RTEMS_TEST_CHECK([psximfs02])<br>
>> >  RTEMS_TEST_CHECK([psxintrcritical01])<br>
>> > +RTEMS_TEST_CHECK([psxinttypes01])<br>
>> >  RTEMS_TEST_CHECK([psxitimer])<br>
>> >  RTEMS_TEST_CHECK([psxkey01])<br>
>> >  RTEMS_TEST_CHECK([psxkey02])<br>
>> > diff --git a/testsuites/psxtests/psxinttypes01/init.c b/testsuites/psxtests/psxinttypes01/init.c<br>
>> > new file mode 100644<br>
>> > index 0000000000..8eafae11ac<br>
>> > --- /dev/null<br>
>> > +++ b/testsuites/psxtests/psxinttypes01/init.c<br>
>> > @@ -0,0 +1,233 @@<br>
>> > +/**<br>
>> > + *  @file<br>
>> > + *  @brief Test suite for inttypes.h methods<br>
>> > + */<br>
>> > +<br>
>> > +/*<br>
>> > + * SPDX-License-Identifier: BSD-2-Clause<br>
>> > + *<br>
>> > + * Copyright (C) 2019, Aditya Upadhyay and Vaibhav Gupta<br>
>> > + *<br>
>> > + * Redistribution and use in source and binary forms, with or without<br>
>> > + * modification, are permitted provided that the following conditions<br>
>> > + * are met:<br>
>> > + * 1. Redistributions of source code must retain the above copyright<br>
>> > + *    notice, this list of conditions and the following disclaimer.<br>
>> > + * 2. Redistributions in binary form must reproduce the above copyright<br>
>> > + *    notice, this list of conditions and the following disclaimer in the<br>
>> > + *    documentation and/or other materials provided with the distribution.<br>
>> > + *<br>
>> > + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"<br>
>> > + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE<br>
>> > + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE<br>
>> > + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE<br>
>> > + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR<br>
>> > + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF<br>
>> > + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS<br>
>> > + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN<br>
>> > + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)<br>
>> > + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE<br>
>> > + * POSSIBILITY OF SUCH DAMAGE.<br>
>> > + */<br>
>> > +<br>
>> > +#ifdef HAVE_CONFIG_H<br>
>> > +#include "config.h"<br>
>> > +#endif<br>
>> > +<br>
>> > +#include <rtems/test.h><br>
>> > +#include <inttypes.h><br>
>> > +#include <stdio.h><br>
>> > +#include <errno.h><br>
>> > +#include <tmacros.h><br>
>> > +#include <stdint.h><br>
>> > +#include <stddef.h><br>
>> > +<br>
>> > +const char rtems_test_name[] = "PSXINTTYPE 01";<br>
>> > +<br>
>> > +/* forward declarations to avoid warnings */<br>
>> > +rtems_task Init(rtems_task_argument ignored);<br>
>> > +<br>
>> > +rtems_task Init(rtems_task_argument ignored)<br>
>> > +{<br>
>> > +  int       base            = 10;<br>
>> > +  int       invalid_base    = 40;<br>
>> > +<br>
>> > +  char     *nptr1_p         = "123abc";                                //char* pointing to string with positive number<br>
>> > +  char            *nptr1_p_errange = "9999999999999999999999";         //char* pointing to string with positive number that is out of range<br>
>> > +  char     *nptr1_n         = "-123abc";                       //char* pointing to string with negative number<br>
>> > +  char            *nptr1_n_errange = "-9999999999999999999999";        //char* pointing to string with negative number that is out of range<br>
>> > +  char     *endptr1         = NULL;<br>
>> > +<br>
>> > +  wchar_t  *nptr2_p         = L"123junk";                      //wchar_t* pointing to string with positive number<br>
>> > +  wchar_t  *nptr2_p_errange = L"9999999999999999999999";       //wchar_t* pointing to string with positive number that is out of range<br>
>> > +  wchar_t  *nptr2_n         = L"-123junk";                     //wchar_t* pointing to string with negative number<br>
>> > +  wchar_t  *nptr2_n_errange = L"-9999999999999999999999";      //wchar_t* pointing to string with negative number that is out of range<br>
<br>
Have a look at <a href="https://devel.rtems.org/wiki/Developer/Coding/Conventions" rel="noreferrer" target="_blank">https://devel.rtems.org/wiki/Developer/Coding/Conventions</a></blockquote><div>Okay, I guess there is no need of commenting the variables. The name of variables</div><div>itself define their purpose.<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
<br>
>> > +  wchar_t  *endptr2         = NULL;<br>
>> > +<br>
>> > +  intmax_t  result_strtoimax;<br>
>> > +  uintmax_t result_strtoumax;<br>
>> > +<br>
>> > +  TEST_BEGIN();<br>
>> > +<br>
>> > +  /*Test for strtoimax  */<br>
>> > +  puts( "\nstrtoimax Testcases...." );<br>
>> > +  puts( "Valid Inputs - Positive Number" );<br>
>> > +  result_strtoimax = strtoimax( nptr1_p, &endptr1, base );<br>
>> > +  rtems_test_assert( result_strtoimax == 123 );<br>
>> > +<br>
>> > +  puts( "Final string pointed by endptr" );<br>
>> > +  rtems_test_assert( endptr1 == ( nptr1_p + 3 ) );<br>
>> > +<br>
>> > +  puts( "Valid Inputs - Negative Number" );<br>
>> > +  result_strtoimax = strtoimax( nptr1_n, &endptr1, base );<br>
>> > +  rtems_test_assert( result_strtoimax == -123 );<br>
>> > +<br>
>> > +  puts( "Final string pointed by endptr" );<br>
>> > +  rtems_test_assert( endptr1 == ( nptr1_n + 4 ) );<br>
>> > +<br>
>> > +  puts( "Valid Input - Positive Number - Number out of Range" );<br>
>> > +  result_strtoimax = strtoimax( nptr1_p_errange, &endptr1, base );<br>
>> > +  rtems_test_assert( result_strtoimax == INTMAX_MAX );<br>
>> > +  rtems_test_assert( errno == ERANGE );<br>
>> > +<br>
>> > +  puts( "Valid Input - Negative Number - Number out of Range" );<br>
>> > +  result_strtoimax = strtoimax( nptr1_n_errange, &endptr1, base );<br>
>> > +  rtems_test_assert( result_strtoimax == INTMAX_MIN );<br>
>> > +  rtems_test_assert( errno == ERANGE );<br>
>> > +<br>
>> > +  puts( "Invalid Input - Send NULL Pointer" );<br>
>> > +  result_strtoimax = strtoimax( NULL, &endptr1, base );<br>
>> > +  rtems_test_assert( result_strtoimax == 0 );<br>
>> > +  rtems_test_assert( errno == EINVAL );<br>
>> > +<br>
>> > +  puts( "Invalid Input - Invalid base - Use base = 40" );<br>
>> > +  result_strtoimax = strtoimax( nptr1_p, &endptr1, invalid_base );<br>
>> > +  rtems_test_assert( result_strtoimax == 0 );<br>
>> > +  rtems_test_assert( errno == EINVAL );<br>
>> > +<br>
>> > +  /*Test for strtoumax  */<br>
>> > +  puts( "\nstrtoumax Testcases...." );<br>
>> > +  puts( "Valid Inputs - Positive Number" );<br>
>> > +  result_strtoumax = strtoumax( nptr1_p, &endptr1, base );<br>
>> > +  rtems_test_assert( result_strtoumax ==123 );<br>
>> > +<br>
>> > +  puts( "Final string pointed by endptr" );<br>
>> > +  rtems_test_assert( endptr1 == ( nptr1_p + 3 ) );<br>
>> > +<br>
>> > +  puts( "Valid Inputs - Negative Number" );<br>
>> > +  result_strtoumax = strtoumax( nptr1_n, &endptr1, base );<br>
>> > +  rtems_test_assert( result_strtoumax != 0 );<br>
>> > +<br>
>> > +  puts( "Final string pointed by endptr" );<br>
>> > +  rtems_test_assert( endptr1 == ( nptr1_n + 4 ) );<br>
>> > +<br>
>> > +  puts( "Valid Input - Positive Number - Number out of Range" );<br>
>> > +  result_strtoumax = strtoumax( nptr1_p_errange, &endptr1, base );<br>
>> > +  rtems_test_assert( result_strtoumax == UINTMAX_MAX );<br>
>> > +  rtems_test_assert( errno == ERANGE );<br>
>> > +<br>
>> > +  puts( "Valid Input - Negative Number - Number out of Range" );<br>
>> > +  result_strtoumax = strtoumax( nptr1_n_errange, &endptr1, base );<br>
>> > +  rtems_test_assert( result_strtoumax != 0 );<br>
>> > +  rtems_test_assert( errno == ERANGE );<br>
>> > +<br>
>> > +  puts( "Invalid Input - Send NULL Pointer" );<br>
>> > +  result_strtoumax = strtoumax( NULL, &endptr1, base );<br>
>> > +  rtems_test_assert( result_strtoumax == 0 );<br>
>> > +  rtems_test_assert( errno == EINVAL );<br>
>> > +<br>
>> > +  puts( "Invalid Input - Invalid base - Use base = 40" );<br>
>> > +  result_strtoumax = strtoumax( nptr1_p, &endptr1, invalid_base );<br>
>> > +  rtems_test_assert( result_strtoumax == 0 );<br>
>> > +  rtems_test_assert( errno == EINVAL );<br>
>> > +<br>
>> > +  /*Test for wcstoimax  */<br>
>> > +  puts( "\nwcstoimax Testcases...." );<br>
>> > +  puts( "Valid Inputs - Positive Number" );<br>
>> > +  result_strtoimax = wcstoimax( nptr2_p, &endptr2, base );<br>
>> > +  rtems_test_assert( result_strtoimax == 123 );<br>
>> > +<br>
>> > +  puts( "Final string pointed by endptr" );<br>
>> > +  rtems_test_assert( endptr2 == ( nptr2_p + 3 ) );<br>
>> > +<br>
>> > +  puts( "Valid Inputs - Negative Number" );<br>
>> > +  result_strtoimax = wcstoimax( nptr2_n, &endptr2, base );<br>
>> > +  rtems_test_assert( result_strtoimax == -123 );<br>
>> > +<br>
>> This should be like result_strtoimax == -123. ( one space between<br>
>> operator and and value)<br>
>><br>
I think it does have one space between operator and value?<br>
<br>
>> > +  puts( "Final string pointed by endptr" );<br>
>> > +  rtems_test_assert( endptr2 == ( nptr2_n + 4 ) );<br>
>> > +<br>
>> > +  puts( "Valid Input - Positive Number - Number out of Range" );<br>
>> > +  result_strtoimax = wcstoimax( nptr2_p_errange, &endptr2, base );<br>
>> > +  rtems_test_assert( result_strtoimax == INTMAX_MAX );<br>
>> > +  rtems_test_assert( errno == ERANGE );<br>
>> > +<br>
>> > +  puts( "Valid Input - Negative Number - Number out of Range" );<br>
>> > +  result_strtoimax = wcstoimax( nptr2_n_errange, &endptr2, base );<br>
>> > +  rtems_test_assert( result_strtoimax != 0 );<br>
This looks wrong to me, please double check the spec for wcstoimax<br></blockquote><div>Oh sorry, I mis read it for the case the wcstoumax. wcstoimax will return INTMAX_MIN.</div><div>I have corrected it.<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
>> > +  rtems_test_assert( errno == ERANGE );<br>
>> > +<br>
>> > +  puts( "Invalid Input - Send NULL Pointer" );<br>
>> > +  result_strtoimax = wcstoimax( NULL, &endptr2, base );<br>
>> > +  rtems_test_assert( result_strtoimax == 0 );<br>
>> > +  rtems_test_assert( errno == EINVAL );<br>
>> > +<br>
>> > +  puts( "Invalid Input - Invalid base - Use base = 40" );<br>
>> > +  result_strtoimax = wcstoimax( nptr2_p, &endptr2, invalid_base );<br>
>> > +  rtems_test_assert( result_strtoimax == 0 );<br>
>> > +  rtems_test_assert( errno == EINVAL );<br>
>> > +<br>
>> > +  /*Test for wcstoumax  */<br>
>> > +  puts( "\nwcstoumax Testcases...." );<br>
>> > +  puts( "Valid Inputs - Positive Number" );<br>
>> > +  result_strtoumax = wcstoumax( nptr2_p, &endptr2, base );<br>
>> > +  rtems_test_assert( result_strtoumax == 123 );<br>
>> > +<br>
>> > +  puts( "Final string pointed by endptr" );<br>
>> > +  rtems_test_assert( endptr2 == ( nptr2_p + 3 ) );<br>
>> > +<br>
>> > +  puts( "Valid Inputs - Negative Number" );<br>
>> > +  result_strtoumax = wcstoumax( nptr2_n, &endptr2, base );<br>
>> > +  rtems_test_assert( result_strtoumax != 0 );<br>
>> > +<br>
>> > +  puts( "Final string pointed by endptr" );<br>
>> > +  rtems_test_assert( endptr2 == ( nptr2_n + 4 ) );<br>
>> > +<br>
>> > +  puts( "Valid Input - Positive Number - Number out of Range" );<br>
>> > +  result_strtoumax = wcstoumax( nptr2_p_errange, &endptr2, base );<br>
>> > +  rtems_test_assert( result_strtoumax == UINTMAX_MAX );<br>
>> > +  rtems_test_assert( errno == ERANGE );<br>
>> > +<br>
>> > +  puts( "Valid Input - Negative Number - Number out of Range" );<br>
>> > +  result_strtoumax = wcstoumax( nptr2_n_errange, &endptr2, base );<br>
>> > +  rtems_test_assert( result_strtoumax != 0 );<br>
>> > +  rtems_test_assert( errno == ERANGE );<br>
>> > +<br>
>> > +  puts( "Invalid Input - Send NULL Pointer" );<br>
>> > +  result_strtoumax = wcstoumax( NULL, &endptr2, base );<br>
>> > +  rtems_test_assert( result_strtoumax == 0 );<br>
>> > +  rtems_test_assert( errno == EINVAL );<br>
>> > +<br>
>> > +  puts( "Invalid Input - Invalid base - Use base = 40" );<br>
>> > +  result_strtoumax = wcstoumax( nptr2_p, &endptr2, invalid_base );<br>
>> > +  rtems_test_assert( result_strtoumax == 0 );<br>
>> > +  rtems_test_assert( errno == EINVAL );<br>
>> > +<br>
>> > +  TEST_END();<br>
>> > +  rtems_test_exit(0);<br>
>> > +<br>
>> > +}<br>
>> > +<br>
>> > +/* NOTICE: the clock driver is explicitly disabled */<br>
>> > +<br>
>> > +#define CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER<br>
>> > +#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER<br>
>> > +<br>
>> > +#define CONFIGURE_MAXIMUM_TASKS            1<br>
>> > +<br>
>> > +#define CONFIGURE_RTEMS_INIT_TASKS_TABLE<br>
>> > +<br>
>> > +#define CONFIGURE_INITIAL_EXTENSIONS RTEMS_TEST_INITIAL_EXTENSION<br>
>> > +<br>
>> > +#define CONFIGURE_INIT<br>
>> > +#include <rtems/confdefs.h><br>
>> > diff --git a/testsuites/psxtests/psxinttypes01/psxinttypes01.doc b/testsuites/psxtests/psxinttypes01/psxinttypes01.doc<br>
>> > new file mode 100644<br>
>> > index 0000000000..b5fd8e6d0e<br>
>> > --- /dev/null<br>
>> > +++ b/testsuites/psxtests/psxinttypes01/psxinttypes01.doc<br>
>> > @@ -0,0 +1,70 @@<br>
>> > +/*<br>
>> > + * SPDX-License-Identifier: BSD-2-Clause<br>
>> > + *<br>
>> > + * Copyright (C) 2019, Vaibhav Gupta<br>
>> > + *<br>
>> > + * Redistribution and use in source and binary forms, with or without<br>
>> > + * modification, are permitted provided that the following conditions<br>
>> > + * are met:<br>
>> > + * 1. Redistributions of source code must retain the above copyright<br>
>> > + *    notice, this list of conditions and the following disclaimer.<br>
>> > + * 2. Redistributions in binary form must reproduce the above copyright<br>
>> > + *    notice, this list of conditions and the following disclaimer in the<br>
>> > + *    documentation and/or other materials provided with the distribution.<br>
>> > + *<br>
>> > + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"<br>
>> > + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE<br>
>> > + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE<br>
>> > + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE<br>
>> > + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR<br>
>> > + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF<br>
>> > + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS<br>
>> > + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN<br>
>> > + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)<br>
>> > + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE<br>
>> > + * POSSIBILITY OF SUCH DAMAGE.<br>
>> > + */<br>
Thought I already said to get rid of this license block? I don't think<br>
we include this in the .doc files...<br></blockquote><div>Oh, I thought you meant to remove only @breif part. <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
>> > +<br>
>> > +This File describes the concepts tested by this test suite.<br>
>> > +<br>
>> > +inttypes.h - fixed size integer types<br>
>> > +<br>
>> > +test suite name: PSXINTTYPE 01<br>
>> > +<br>
>> > +- Checks for invalid base value<br>
>> > +<br>
>> > +- Checks for Strtoimax Testcases<br>
>> > +       - checks for output for string having a positive number<br>
>> > +       - checks for output for string having a negative number<br>
>> > +       - checks for output for string having a positive number - Number Out of Range<br>
>> > +       - checks for output for string having a negative number - Number Out of Range<br>
>> > +       - checks for final string pointed by endptr<br>
>> > +       - checks for output for invalid argument - NULL Pointer<br>
>> > +       - checks for output for invalid argument - Invalid Base<br>
>> > +<br>
>> > +- Checks for Strtoumax Test Cases<br>
>> > +       - checks for output for string having a positive number<br>
>> > +       - checks for output for string having a negative number<br>
>> > +       - checks for output for string having a positive number - Number Out of Range<br>
>> > +       - checks for output for string having a negative number - Number Out of Range<br>
>> > +       - checks for final string pointed by endptr<br>
>> > +       - checks for output for invalid argument - NULL Pointer<br>
>> > +       - checks for output for invalid argument - Invalid Base<br>
>> > +<br>
>> > +- Checks for Wcstoimax Testcases<br>
>> > +       - checks for output for string having a positive number<br>
>> > +       - checks for output for string having a negative number<br>
>> > +       - checks for output for string having a positive number - Number Out of Range<br>
>> > +       - checks for output for string having a negative number - Number Out of Range<br>
>> > +       - checks for final string pointed by endptr<br>
>> > +       - checks for output for invalid argument - NULL Pointer<br>
>> > +       - checks for output for invalid argument - Invalid Base<br>
>> > +<br>
>> > +- Checks for Wcstoumax Testcases<br>
>> > +       - checks for output for string having a positive number<br>
>> > +       - checks for output for string having a negative number<br>
>> > +       - checks for output for string having a positive number - Number Out of Range<br>
>> > +       - checks for output for string having a negative number - Number Out of Range<br>
>> > +       - checks for final string pointed by endptr<br>
>> > +       - checks for output for invalid argument - NULL Pointer<br>
>> > +       - checks for output for invalid argument - Invalid Base<br>
>> > diff --git a/testsuites/psxtests/psxinttypes01/psxinttypes01.scn b/testsuites/psxtests/psxinttypes01/psxinttypes01.scn<br>
>> > new file mode 100644<br>
>> > index 0000000000..33e82428f1<br>
>> > --- /dev/null<br>
>> > +++ b/testsuites/psxtests/psxinttypes01/psxinttypes01.scn<br>
>> > @@ -0,0 +1,44 @@<br>
>> > +*** PSXINTTYPE 01 TEST ***<br>
>> > +<br>
>> > +strtoimax Testcases....<br>
>> > +Valid Inputs - Positive Number<br>
>> > +Final string pointed by endptr<br>
>> > +Valid Inputs - Negative Number<br>
>> > +Final string pointed by endptr<br>
>> > +Valid Input - Positive Number - Number out of Range<br>
>> > +Valid Input - Negative Number - Number out of Range<br>
>> > +Invalid Input - Send NULL Pointer<br>
>> > +Invalid Input - Invalid base - Use base = 40<br>
>> > +<br>
>> > +strtoumax Testcases....<br>
>> > +Valid Inputs - Positive Number<br>
>> > +Final string pointed by endptr<br>
>> > +Valid Inputs - Negative Number<br>
>> > +Final string pointed by endptr<br>
>> > +Valid Input - Positive Number - Number out of Range<br>
>> > +Valid Input - Negative Number - Number out of Range<br>
>> > +Invalid Input - Send NULL Pointer<br>
>> > +Invalid Input - Invalid base - Use base = 40<br>
>> > +<br>
>> > +wcstoimax Testcases....<br>
>> > +Valid Inputs - Positive Number<br>
>> > +Final string pointed by endptr<br>
>> > +Valid Inputs - Negative Number<br>
>> > +Final string pointed by endptr<br>
>> > +Valid Input - Positive Number - Number out of Range<br>
>> > +Valid Input - Negative Number - Number out of Range<br>
>> > +Invalid Input - Send NULL Pointer<br>
>> > +Invalid Input - Invalid base - Use base = 40<br>
>> > +<br>
>> > +wcstoumax Testcases....<br>
>> > +Valid Inputs - Positive Number<br>
>> > +Final string pointed by endptr<br>
>> > +Valid Inputs - Negative Number<br>
>> > +Final string pointed by endptr<br>
>> > +Valid Input - Positive Number - Number out of Range<br>
>> > +Valid Input - Negative Number - Number out of Range<br>
>> > +Invalid Input - Send NULL Pointer<br>
>> > +Invalid Input - Invalid base - Use base = 40<br>
>> > +<br>
>> > +*** END OF PSXINTTYPE 01 TEST ***<br>
>> > +<br>
>> > --<br>
>> > 2.21.0<br>
>> ><br>
>><br>
>> You can also look into this: <a href="http://man7.org/linux/man-pages/man3/strtol.3.html" rel="noreferrer" target="_blank">http://man7.org/linux/man-pages/man3/strtol.3.html</a><br>
>><br>
>> Thanks,<br>
</blockquote></div></div>