summaryrefslogtreecommitdiffstats
path: root/testsuites/sptests/sp77
diff options
context:
space:
mode:
authorKrzysztof Mięsowicz <krzysztof.miesowicz@gmail.com>2012-08-29 07:35:23 -0500
committerJoel Sherrill <joel.sherrill@oarcorp.com>2012-08-29 07:37:01 -0500
commit3913e3cf934d21e3efd80369ef3cf694484a1955 (patch)
tree93bc35b0ca6a91ff78d883dfa5d144262f689f7c /testsuites/sptests/sp77
parentbsp/mpc55xx: Use a one second timeout (diff)
downloadrtems-3913e3cf934d21e3efd80369ef3cf694484a1955.tar.bz2
sp77: new test to cover allocated message size overflowing
Author: Krzysztof Mięsowicz <krzysztof.miesowicz@gmail.com>
Diffstat (limited to 'testsuites/sptests/sp77')
-rw-r--r--testsuites/sptests/sp77/Makefile.am22
-rw-r--r--testsuites/sptests/sp77/init.c55
-rw-r--r--testsuites/sptests/sp77/sp77.doc21
-rw-r--r--testsuites/sptests/sp77/sp77.scn2
4 files changed, 100 insertions, 0 deletions
diff --git a/testsuites/sptests/sp77/Makefile.am b/testsuites/sptests/sp77/Makefile.am
new file mode 100644
index 0000000000..ee3eda773d
--- /dev/null
+++ b/testsuites/sptests/sp77/Makefile.am
@@ -0,0 +1,22 @@
+
+
+rtems_tests_PROGRAMS = sp77
+sp77_SOURCES = init.c
+
+dist_rtems_tests_DATA = sp77.scn
+dist_rtems_tests_DATA += sp77.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+
+LINK_OBJS = $(sp77_OBJECTS) $(sp77_LDADD)
+LINK_LIBS = $(sp77_LDLIBS)
+
+sp77$(EXEEXT): $(sp77_OBJECTS) $(sp77_DEPENDENCIES)
+ @rm -f sp77$(EXEEXT)
+ $(make-exe)
+
+include $(top_srcdir)/../automake/local.am
diff --git a/testsuites/sptests/sp77/init.c b/testsuites/sptests/sp77/init.c
new file mode 100644
index 0000000000..2af710e2f1
--- /dev/null
+++ b/testsuites/sptests/sp77/init.c
@@ -0,0 +1,55 @@
+/*
+ * COPYRIGHT (c) 2012.
+ * Krzysztof Miesowicz krzysztof.miesowicz@gmail.com
+ *
+ * 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.
+ */
+
+#include <tmacros.h>
+#include "test_support.h"
+
+/* forward declarations to avoid warnings */
+rtems_task Init(rtems_task_argument argument);
+
+rtems_task Init(
+ rtems_task_argument argument
+)
+{
+ puts( "\n\n*** TEST sp77 ***" );
+
+ rtems_status_code status;
+ rtems_id id;
+
+ status = rtems_message_queue_create(
+ rtems_build_name( 'M', 'Q' , 'T', '1'),
+ 2,
+ SIZE_MAX-2,
+ RTEMS_DEFAULT_ATTRIBUTES,
+ &id
+ );
+
+ fatal_directive_check_status_only(status , RTEMS_UNSATISFIED ,
+ "attempt to create message queue return: ");
+ puts( "*** END OF TEST sp77 ***" );
+
+ rtems_test_exit(0);
+}
+
+/* configuration information */
+
+#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
+#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
+
+#define CONFIGURE_MAXIMUM_TASKS 1
+#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
+
+#define CONFIGURE_INIT
+
+#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1
+#define CONFIGURE_MESSAGE_BUFFER_MEMORY (CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( \
+ 2,SIZE_MAX))
+
+#include <rtems/confdefs.h>
+/* end of file */
diff --git a/testsuites/sptests/sp77/sp77.doc b/testsuites/sptests/sp77/sp77.doc
new file mode 100644
index 0000000000..d54192e320
--- /dev/null
+++ b/testsuites/sptests/sp77/sp77.doc
@@ -0,0 +1,21 @@
+# COPYRIGHT (c) 2012.
+# Krzysztof Miesowicz krzysztof.miesowicz@gmail.com
+#
+# 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: sp77
+
+directives:
+
+ rtems_message_queue_create
+
+concepts:
+
++ test to check if rtems_message_queue_create work as supposed when
+maximum_message_size is too large and cause overflow in
+_core_message_queue_initialize symbol in coremsg.c file
diff --git a/testsuites/sptests/sp77/sp77.scn b/testsuites/sptests/sp77/sp77.scn
new file mode 100644
index 0000000000..48e4f85cc8
--- /dev/null
+++ b/testsuites/sptests/sp77/sp77.scn
@@ -0,0 +1,2 @@
+*** TEST sp77 ***
+*** END OF TEST sp77 ***