From a4325457a7293ae9eb973b1db93fc11863cc4841 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Fri, 28 Jan 2011 15:39:46 +0000 Subject: 2011-01-28 Bharath Suri PR 1661/testing * termios06/init.c: Extend the test to cover sections related to flow control in termios.c * termios06/termios06.doc: Updated test concept * termios06/termios06.scn: Updated test run log --- testsuites/libtests/ChangeLog | 8 ++++++++ testsuites/libtests/termios06/init.c | 25 +++++++++++++++++++++++++ testsuites/libtests/termios06/termios06.doc | 1 + testsuites/libtests/termios06/termios06.scn | 14 ++++++++++++++ 4 files changed, 48 insertions(+) (limited to 'testsuites') diff --git a/testsuites/libtests/ChangeLog b/testsuites/libtests/ChangeLog index 55ce1b94f5..8b03c21c19 100644 --- a/testsuites/libtests/ChangeLog +++ b/testsuites/libtests/ChangeLog @@ -1,3 +1,11 @@ +2011-01-28 Bharath Suri + + PR 1661/testing + * termios06/init.c: Extend the test to cover sections related to + flow control in termios.c + * termios06/termios06.doc: Updated test concept + * termios06/termios06.scn: Updated test run log + 2011-01-10 Ralf Corsépius * math/domath.in: Fix typo in printf. diff --git a/testsuites/libtests/termios06/init.c b/testsuites/libtests/termios06/init.c index 10b5d014f5..37ec1f7951 100644 --- a/testsuites/libtests/termios06/init.c +++ b/testsuites/libtests/termios06/init.c @@ -89,10 +89,35 @@ void set_discipline(void) void ioctl_it(void) { int rc; + struct termios t; puts( "ioctl(" TERMIOS_TEST_DRIVER_DEVICE_NAME ") - OK " ); rc = ioctl( Test_fd, 0xFFFF, NULL ); rtems_test_assert( rc == 0 ); + + puts( "tcgetattr(" TERMIOS_TEST_DRIVER_DEVICE_NAME ") - OK " ); + rc = tcgetattr( Test_fd, &t ); + rtems_test_assert( rc == 0 ); + + puts( "Turn on flow control on output - OK" ); + t.c_iflag |= IXON; + rc = tcsetattr( Test_fd, TCSANOW, &t ); + rtems_test_assert( rc == 0 ); + + puts( "Turn off flow control on output - OK" ); + t.c_iflag &= ~IXON; + rc = tcsetattr( Test_fd, TCSANOW, &t ); + rtems_test_assert( rc == 0 ); + + puts( "Turn on flow control on input - OK" ); + t.c_iflag |= IXOFF; + rc = tcsetattr( Test_fd, TCSANOW, &t ); + rtems_test_assert( rc == 0 ); + + puts( "Turn off flow control on input - OK" ); + t.c_iflag &= ~IXOFF; + rc = tcsetattr( Test_fd, TCSANOW, &t ); + rtems_test_assert( rc == 0 ); } void close_it(void) diff --git a/testsuites/libtests/termios06/termios06.doc b/testsuites/libtests/termios06/termios06.doc index 6e90369beb..49a18d86bc 100644 --- a/testsuites/libtests/termios06/termios06.doc +++ b/testsuites/libtests/termios06/termios06.doc @@ -20,3 +20,4 @@ directives: concepts: + Exercise PPPDISC functionality in termios ++ Tests to cover flow control settings for termios diff --git a/testsuites/libtests/termios06/termios06.scn b/testsuites/libtests/termios06/termios06.scn index 608037c773..b558077daa 100644 --- a/testsuites/libtests/termios06/termios06.scn +++ b/testsuites/libtests/termios06/termios06.scn @@ -1,5 +1,9 @@ + + *** TEST TERMIOS06 *** open(/dev/test) - OK +ioctl - RTEMS_IO_SNDWAKEUP - OK +ioctl - RTEMS_IO_RCVWAKEUP - OK ioctl - TIOCGETD - OK ioctl - TIOCSETD - OK pppopen called @@ -9,13 +13,21 @@ pppopen called write(PPPD TEST) - OK pppwrite called - 10 bytes 50 50 50 44 20 54 45 53 54 00 |PPPD TEST. | + pppstart called ioctl(/dev/test) - OK pppioctl called +tcgetattr(/dev/test) - OK +Turn on flow control on output - OK +Turn off flow control on output - OK +Turn on flow control on input - OK +Turn off flow control on input - OK Reading (expected): 54 68 69 73 20 69 73 20 74 65 73 74 20 50 50 50 |This is test PPP| + 20 69 6e 70 75 74 | input | + pppread called pppinput called - with (T) pppinput called - with (h) @@ -40,6 +52,8 @@ pppinput called - with (p) pppinput called - with (u) pppinput called - with (t) pppinput called - with (.) +Rx_Wake - invoked + Read 0 bytes from read(2) close(/dev/test) - OK pppclose called -- cgit v1.2.3