forked from Imagelibrary/rtems
psxtests : Add POSIX API Signature Compliance Tests for semaphore.h (GCI 2018)
This commit is contained in:
committed by
Joel Sherrill
parent
d6d40024b3
commit
7ea4c02604
@@ -1103,7 +1103,17 @@ lib_a_SOURCES = psxhdrs/devctl/posix_devctl.c \
|
||||
psxhdrs/mqueue/mq_send.c \
|
||||
psxhdrs/mqueue/mq_timedreceive.c \
|
||||
psxhdrs/mqueue/mq_timedsend.c \
|
||||
psxhdrs/mqueue/mq_unlink.c
|
||||
psxhdrs/mqueue/mq_unlink.c \
|
||||
psxhdrs/semaphore/sem_init.c \
|
||||
psxhdrs/semaphore/sem_destroy.c \
|
||||
psxhdrs/semaphore/sem_open.c \
|
||||
psxhdrs/semaphore/sem_close.c \
|
||||
psxhdrs/semaphore/sem_getvalue.c \
|
||||
psxhdrs/semaphore/sem_unlink.c \
|
||||
psxhdrs/semaphore/sem_post.c \
|
||||
psxhdrs/semaphore/sem_wait.c \
|
||||
psxhdrs/semaphore/sem_trywait.c \
|
||||
psxhdrs/semaphore/sem_timedwait.c
|
||||
endif
|
||||
|
||||
rtems_tests_PROGRAMS = $(psx_tests)
|
||||
|
||||
45
testsuites/psxtests/psxhdrs/semaphore/sem_close.c
Normal file
45
testsuites/psxtests/psxhdrs/semaphore/sem_close.c
Normal file
@@ -0,0 +1,45 @@
|
||||
/**
|
||||
* @file
|
||||
* @brief sem_close() API Conformance Test
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 2018.
|
||||
* Himanshu Sekhar Nayak
|
||||
*
|
||||
* 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 <fcntl.h>
|
||||
#include <sys/stat.h>
|
||||
#include <semaphore.h>
|
||||
|
||||
int test( void );
|
||||
|
||||
int test( void )
|
||||
{
|
||||
sem_t *sem1;
|
||||
int oflag = O_CREAT;
|
||||
int result;
|
||||
int value;
|
||||
|
||||
value = 1;
|
||||
|
||||
sem1 = sem_open( "sem", oflag, 0777, value );
|
||||
result = sem_close( sem1 );
|
||||
|
||||
return result;
|
||||
}
|
||||
45
testsuites/psxtests/psxhdrs/semaphore/sem_destroy.c
Normal file
45
testsuites/psxtests/psxhdrs/semaphore/sem_destroy.c
Normal file
@@ -0,0 +1,45 @@
|
||||
/**
|
||||
* @file
|
||||
* @brief sem_destroy() API Conformance Test
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 2018.
|
||||
* Himanshu Sekhar Nayak
|
||||
*
|
||||
* 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 <fcntl.h>
|
||||
#include <sys/stat.h>
|
||||
#include <semaphore.h>
|
||||
|
||||
int test( void );
|
||||
|
||||
int test( void )
|
||||
{
|
||||
sem_t *sem1;
|
||||
int oflag = O_CREAT;
|
||||
int result;
|
||||
int value;
|
||||
|
||||
value = 1;
|
||||
|
||||
sem1 = sem_open( "sem", oflag, 0777, value );
|
||||
result = sem_destroy( sem1 );
|
||||
|
||||
return result;
|
||||
}
|
||||
46
testsuites/psxtests/psxhdrs/semaphore/sem_getvalue.c
Normal file
46
testsuites/psxtests/psxhdrs/semaphore/sem_getvalue.c
Normal file
@@ -0,0 +1,46 @@
|
||||
/**
|
||||
* @file
|
||||
* @brief sem_getval() API Conformance Test
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 2018.
|
||||
* Himanshu Sekhar Nayak
|
||||
*
|
||||
* 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 <semaphore.h>
|
||||
|
||||
int test( void );
|
||||
|
||||
int test( void )
|
||||
{
|
||||
sem_t sem;
|
||||
int pshared;
|
||||
unsigned int value;
|
||||
int sval;
|
||||
int result;
|
||||
|
||||
pshared = 0;
|
||||
value = 1;
|
||||
sval = 1;
|
||||
|
||||
sem_init( &sem, pshared, value );
|
||||
result = sem_getvalue( &sem, &sval );
|
||||
|
||||
return result;
|
||||
}
|
||||
43
testsuites/psxtests/psxhdrs/semaphore/sem_init.c
Normal file
43
testsuites/psxtests/psxhdrs/semaphore/sem_init.c
Normal file
@@ -0,0 +1,43 @@
|
||||
/**
|
||||
* @file
|
||||
* @brief sem_init() API Conformance Test
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 2018.
|
||||
* Himanshu Sekhar Nayak
|
||||
*
|
||||
* 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 <semaphore.h>
|
||||
|
||||
int test( void );
|
||||
|
||||
int test( void )
|
||||
{
|
||||
sem_t sem;
|
||||
int pshared;
|
||||
unsigned int value;
|
||||
int result;
|
||||
|
||||
pshared = 0;
|
||||
value = 1;
|
||||
|
||||
result = sem_init( &sem, pshared, value );
|
||||
|
||||
return result;
|
||||
}
|
||||
46
testsuites/psxtests/psxhdrs/semaphore/sem_open.c
Normal file
46
testsuites/psxtests/psxhdrs/semaphore/sem_open.c
Normal file
@@ -0,0 +1,46 @@
|
||||
/**
|
||||
* @file
|
||||
* @brief sem_open() API Conformance Test
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 2018.
|
||||
* Himanshu Sekhar Nayak
|
||||
*
|
||||
* 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 <fcntl.h>
|
||||
#include <sys/stat.h>
|
||||
#include <semaphore.h>
|
||||
|
||||
int test( void );
|
||||
|
||||
int result = 1;
|
||||
|
||||
int test( void )
|
||||
{
|
||||
sem_t *sem1;
|
||||
int oflag = O_CREAT;
|
||||
unsigned int value;
|
||||
|
||||
value = 1;
|
||||
|
||||
sem1 = sem_open( "sem", oflag, 0777, value );
|
||||
(void) sem1;
|
||||
|
||||
return result;
|
||||
}
|
||||
44
testsuites/psxtests/psxhdrs/semaphore/sem_post.c
Normal file
44
testsuites/psxtests/psxhdrs/semaphore/sem_post.c
Normal file
@@ -0,0 +1,44 @@
|
||||
/**
|
||||
* @file
|
||||
* @brief sem_post() API Conformance Test
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 2018.
|
||||
* Himanshu Sekhar Nayak
|
||||
*
|
||||
* 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 <semaphore.h>
|
||||
|
||||
int test( void );
|
||||
|
||||
int test( void )
|
||||
{
|
||||
sem_t sem;
|
||||
int pshared;
|
||||
unsigned int value;
|
||||
int result;
|
||||
|
||||
pshared = 0;
|
||||
value = 1;
|
||||
|
||||
sem_init( &sem, pshared, value );
|
||||
result = sem_post( &sem );
|
||||
|
||||
return result;
|
||||
}
|
||||
49
testsuites/psxtests/psxhdrs/semaphore/sem_timedwait.c
Normal file
49
testsuites/psxtests/psxhdrs/semaphore/sem_timedwait.c
Normal file
@@ -0,0 +1,49 @@
|
||||
/**
|
||||
* @file
|
||||
* @brief sem_timedwait() API Conformance Test
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 2018.
|
||||
* Himanshu Sekhar Nayak
|
||||
*
|
||||
* 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 <fcntl.h>
|
||||
#include <time.h>
|
||||
#include <semaphore.h>
|
||||
|
||||
int test( void );
|
||||
|
||||
int test( void )
|
||||
{
|
||||
sem_t sem;
|
||||
struct timespec abs_timeout;
|
||||
int pshared;
|
||||
unsigned int value;
|
||||
int result;
|
||||
|
||||
pshared = 0;
|
||||
value = 1;
|
||||
abs_timeout.tv_sec = 0;
|
||||
abs_timeout.tv_nsec = 0;
|
||||
|
||||
sem_init( &sem, pshared, value );
|
||||
result = sem_timedwait( &sem, &abs_timeout );
|
||||
|
||||
return result;
|
||||
}
|
||||
44
testsuites/psxtests/psxhdrs/semaphore/sem_trywait.c
Normal file
44
testsuites/psxtests/psxhdrs/semaphore/sem_trywait.c
Normal file
@@ -0,0 +1,44 @@
|
||||
/**
|
||||
* @file
|
||||
* @brief sem_trywait() API Conformance Test
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 2018.
|
||||
* Himanshu Sekhar Nayak
|
||||
*
|
||||
* 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 <semaphore.h>
|
||||
|
||||
int test( void );
|
||||
|
||||
int test( void )
|
||||
{
|
||||
sem_t sem;
|
||||
int pshared;
|
||||
unsigned int value;
|
||||
int result;
|
||||
|
||||
pshared = 0;
|
||||
value = 1;
|
||||
|
||||
sem_init( &sem, pshared, value );
|
||||
result = sem_trywait( &sem );
|
||||
|
||||
return result;
|
||||
}
|
||||
44
testsuites/psxtests/psxhdrs/semaphore/sem_unlink.c
Normal file
44
testsuites/psxtests/psxhdrs/semaphore/sem_unlink.c
Normal file
@@ -0,0 +1,44 @@
|
||||
/**
|
||||
* @file
|
||||
* @brief sem_unlink() API Conformance Test
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 2018.
|
||||
* Himanshu Sekhar Nayak
|
||||
*
|
||||
* 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 <semaphore.h>
|
||||
|
||||
int test( void );
|
||||
|
||||
int test( void )
|
||||
{
|
||||
sem_t sem;
|
||||
int pshared;
|
||||
unsigned int value;
|
||||
int result;
|
||||
|
||||
pshared = 0;
|
||||
value = 1;
|
||||
|
||||
sem_init( &sem, pshared, value );
|
||||
result = sem_unlink( "sem" );
|
||||
|
||||
return result;
|
||||
}
|
||||
44
testsuites/psxtests/psxhdrs/semaphore/sem_wait.c
Normal file
44
testsuites/psxtests/psxhdrs/semaphore/sem_wait.c
Normal file
@@ -0,0 +1,44 @@
|
||||
/**
|
||||
* @file
|
||||
* @brief sem_wait() API Conformance Test
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 2018.
|
||||
* Himanshu Sekhar Nayak
|
||||
*
|
||||
* 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 <semaphore.h>
|
||||
|
||||
int test( void );
|
||||
|
||||
int test( void )
|
||||
{
|
||||
sem_t sem;
|
||||
int pshared;
|
||||
unsigned int value;
|
||||
int result;
|
||||
|
||||
pshared = 0;
|
||||
value = 1;
|
||||
|
||||
sem_init( &sem, pshared, value );
|
||||
result = sem_wait( &sem );
|
||||
|
||||
return result;
|
||||
}
|
||||
Reference in New Issue
Block a user