summaryrefslogtreecommitdiffstats
path: root/testsuites/psxtests/psxsignal04
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2009-08-02 14:41:46 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2009-08-02 14:41:46 +0000
commit70a66ca5d354c34c15c85496967652076078be3e (patch)
treec63e6464c817a5c306efd5cae2032ac167a06738 /testsuites/psxtests/psxsignal04
parent2009-08-01 Joel Sherrill <joel.sherrill@oarcorp.com> (diff)
downloadrtems-70a66ca5d354c34c15c85496967652076078be3e.tar.bz2
2009-08-02 Joel Sherrill <joel.sherrill@oarcorp.com>
* Makefile.am, configure.ac, psxsignal03/Makefile.am, psxsignal03/init.c, psxsignal03/psxsignal03.doc: Add new test variation which focused on real-time signals rather than user signals. * psxsignal04/.cvsignore, psxsignal04/Makefile.am, psxsignal04/psxsignal04.doc, psxsignal04/psxsignal04.scn: New files.
Diffstat (limited to 'testsuites/psxtests/psxsignal04')
-rw-r--r--testsuites/psxtests/psxsignal04/.cvsignore2
-rw-r--r--testsuites/psxtests/psxsignal04/Makefile.am30
-rw-r--r--testsuites/psxtests/psxsignal04/psxsignal04.doc31
-rw-r--r--testsuites/psxtests/psxsignal04/psxsignal04.scn18
4 files changed, 81 insertions, 0 deletions
diff --git a/testsuites/psxtests/psxsignal04/.cvsignore b/testsuites/psxtests/psxsignal04/.cvsignore
new file mode 100644
index 0000000000..282522db03
--- /dev/null
+++ b/testsuites/psxtests/psxsignal04/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
diff --git a/testsuites/psxtests/psxsignal04/Makefile.am b/testsuites/psxtests/psxsignal04/Makefile.am
new file mode 100644
index 0000000000..e451ce72ee
--- /dev/null
+++ b/testsuites/psxtests/psxsignal04/Makefile.am
@@ -0,0 +1,30 @@
+##
+## $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = psxsignal04
+psxsignal04_SOURCES = ../psxsignal03/init.c ../include/pmacros.h
+
+dist_rtems_tests_DATA = psxsignal04.scn
+dist_rtems_tests_DATA += psxsignal04.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+psxsignal04_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/include
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -DUSE_REAL_TIME_SIGNALS
+
+LINK_OBJS = $(psxsignal04_OBJECTS) $(psxsignal04_LDADD)
+LINK_LIBS = $(psxsignal04_LDLIBS)
+
+psxsignal04$(EXEEXT): $(psxsignal04_OBJECTS) $(psxsignal04_DEPENDENCIES)
+ @rm -f psxsignal04$(EXEEXT)
+ $(make-exe)
+
+include $(top_srcdir)/../automake/local.am
diff --git a/testsuites/psxtests/psxsignal04/psxsignal04.doc b/testsuites/psxtests/psxsignal04/psxsignal04.doc
new file mode 100644
index 0000000000..328ac9f4d8
--- /dev/null
+++ b/testsuites/psxtests/psxsignal04/psxsignal04.doc
@@ -0,0 +1,31 @@
+#
+# $Id$
+#
+# COPYRIGHT (c) 1989-2009.
+# On-Line Applications Research Corporation (OAR).
+#
+# The license and distribution terms for this file may be
+# found in the file LICENSE in this distribution or at
+# http://www.rtems.com/license/LICENSE.
+#
+
+This file describes the directives and concepts tested by this test set.
+
+test set name: psxsignal04
+
+directives:
+
+ sigemptyset
+ sigaddset
+ pthread_sigmask
+ sigwaitinfo
+ sigaction
+ pthread_create
+ kill
+ kill
+
+concepts:
+
++ Ensure the the algorithm in killinfo.c which decides which
+ thread waiting on a signal is given a process wide signal to
+ dispatch. This variation focuses on the real-time signals.
diff --git a/testsuites/psxtests/psxsignal04/psxsignal04.scn b/testsuites/psxtests/psxsignal04/psxsignal04.scn
new file mode 100644
index 0000000000..7e4f72e767
--- /dev/null
+++ b/testsuites/psxtests/psxsignal04/psxsignal04.scn
@@ -0,0 +1,18 @@
+*** POSIX TEST SIGNAL 02 ***
+Init - Variation is: Real-Time Signals
+Init - sleep - let threads settle - OK
+SignalNotBlocked - Unblock SIGRTMIN
+SignalNotBlocked - Unblock SIGRTMAX
+SIGRTMIN - Wait for SIGRTMAX unblocked
+SignalBlocked - Unblock SIGRTMIN
+SIGRTMIN - Wait for SIGRTMIN unblocked
+Init - sleep - SignalBlocked thread settle - OK
+Init - sending SIGRTMAX - deliver to one thread
+Init - sending SIGRTMAX - deliver to other thread
+Init - sending SIGRTMAX - expect EAGAIN
+Init - sleep - let thread report if it unblocked - OK
+SignalNotBlocked - siginfo.si_signo=31
+SignalNotBlocked - siginfo.si_code=1
+SignalNotBlocked - siginfo.si_value=0x02027fe4
+SignalNotBlocked - exiting
+*** END OF POSIX TEST SIGNAL 02 ***