diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2011-01-28 15:39:46 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2011-01-28 15:39:46 +0000 |
commit | a4325457a7293ae9eb973b1db93fc11863cc4841 (patch) | |
tree | 00809123b9fe59111969de0b795678372b8e6398 /testsuites/libtests/termios06 | |
parent | 2011-01-27 Sebastian Huber <sebastian.huber@embedded-brains.de> (diff) | |
download | rtems-a4325457a7293ae9eb973b1db93fc11863cc4841.tar.bz2 |
2011-01-28 Bharath Suri <bharath.s.jois@gmail.com>
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
Diffstat (limited to 'testsuites/libtests/termios06')
-rw-r--r-- | testsuites/libtests/termios06/init.c | 25 | ||||
-rw-r--r-- | testsuites/libtests/termios06/termios06.doc | 1 | ||||
-rw-r--r-- | testsuites/libtests/termios06/termios06.scn | 14 |
3 files changed, 40 insertions, 0 deletions
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 |