[01/10] Test issuing a command split in multiple lines with continuation chars

Message ID 1455817236-13642-2-git-send-email-palves@redhat.com
State New, archived
Headers

Commit Message

Pedro Alves Feb. 18, 2016, 5:40 p.m. UTC
  I happened to break this locally and the testsuite didn't notice it.
Add some tests.

gdb/ChangeLog:
2016-02-18  Pedro Alves  <palves@redhat.com>

	* gdb.base/command-line-input.exp: New file.
---
 gdb/testsuite/gdb.base/command-line-input.exp | 36 +++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)
 create mode 100644 gdb/testsuite/gdb.base/command-line-input.exp
  

Comments

Sergio Durigan Junior Feb. 18, 2016, 9:53 p.m. UTC | #1
On Thursday, February 18 2016, Pedro Alves wrote:

> I happened to break this locally and the testsuite didn't notice it.
> Add some tests.
>
> gdb/ChangeLog:
> 2016-02-18  Pedro Alves  <palves@redhat.com>
>
> 	* gdb.base/command-line-input.exp: New file.
> ---
>  gdb/testsuite/gdb.base/command-line-input.exp | 36 +++++++++++++++++++++++++++
>  1 file changed, 36 insertions(+)
>  create mode 100644 gdb/testsuite/gdb.base/command-line-input.exp
>
> diff --git a/gdb/testsuite/gdb.base/command-line-input.exp b/gdb/testsuite/gdb.base/command-line-input.exp
> new file mode 100644
> index 0000000..0a9d44b
> --- /dev/null
> +++ b/gdb/testsuite/gdb.base/command-line-input.exp
> @@ -0,0 +1,36 @@
> +# Copyright (C) 2014-2016 Free Software Foundation, Inc.
> +#
> +# This program is free software; you can redistribute it and/or modify
> +# it under the terms of the GNU General Public License as published by
> +# the Free Software Foundation; either version 3 of the License, or
> +# (at your option) any later version.
> +#
> +# This program is distributed in the hope that it will be useful,
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +# GNU General Public License for more details.
> +#
> +# You should have received a copy of the GNU General Public License
> +# along with this program.  If not, see <http://www.gnu.org/licenses/>.
> +
> +# Command line input testing.
> +
> +# Test issuing a command split in multiple lines with continuation
> +# characters.
> +
> +gdb_exit
> +gdb_start
> +
> +set test "print 1\\\\n + 2"

I was worried that this would insert a newline in gdb.sum, but it
doesn't.

> +gdb_test_multiple "print 1\\\n + 2" $test {
> +    -re "^print 1\\\\\r\n \\+ 2\r\n\\\$$decimal = 3\r\n$gdb_prompt $" {
> +	pass $test
> +    }
> +}
> +
> +set test "print 1\\\\n2"
> +gdb_test_multiple "print 1\\\n2" $test {
> +    -re "^print 1\\\\\r\n2\r\n\\\$$decimal = 12\r\n$gdb_prompt $" {
> +	pass $test
> +    }
> +}
> -- 
> 1.9.3

This looks good to me.

Thanks,
  
Luis Machado Feb. 24, 2016, 12:40 p.m. UTC | #2
On 02/18/2016 03:40 PM, Pedro Alves wrote:
> I happened to break this locally and the testsuite didn't notice it.
> Add some tests.
>
> gdb/ChangeLog:
> 2016-02-18  Pedro Alves  <palves@redhat.com>
>
> 	* gdb.base/command-line-input.exp: New file.
> ---
>   gdb/testsuite/gdb.base/command-line-input.exp | 36 +++++++++++++++++++++++++++
>   1 file changed, 36 insertions(+)
>   create mode 100644 gdb/testsuite/gdb.base/command-line-input.exp
>
> diff --git a/gdb/testsuite/gdb.base/command-line-input.exp b/gdb/testsuite/gdb.base/command-line-input.exp
> new file mode 100644
> index 0000000..0a9d44b
> --- /dev/null
> +++ b/gdb/testsuite/gdb.base/command-line-input.exp
> @@ -0,0 +1,36 @@
> +# Copyright (C) 2014-2016 Free Software Foundation, Inc.
> +#

Should this be 2016, since it is a new file?
  
Pedro Alves March 9, 2016, 6:38 p.m. UTC | #3
On 02/24/2016 12:40 PM, Luis Machado wrote:
> On 02/18/2016 03:40 PM, Pedro Alves wrote:
>> I happened to break this locally and the testsuite didn't notice it.
>> Add some tests.
>>
>> gdb/ChangeLog:
>> 2016-02-18  Pedro Alves  <palves@redhat.com>
>>
>>     * gdb.base/command-line-input.exp: New file.
>> ---
>>   gdb/testsuite/gdb.base/command-line-input.exp | 36
>> +++++++++++++++++++++++++++
>>   1 file changed, 36 insertions(+)
>>   create mode 100644 gdb/testsuite/gdb.base/command-line-input.exp
>>
>> diff --git a/gdb/testsuite/gdb.base/command-line-input.exp
>> b/gdb/testsuite/gdb.base/command-line-input.exp
>> new file mode 100644
>> index 0000000..0a9d44b
>> --- /dev/null
>> +++ b/gdb/testsuite/gdb.base/command-line-input.exp
>> @@ -0,0 +1,36 @@
>> +# Copyright (C) 2014-2016 Free Software Foundation, Inc.
>> +#
>
> Should this be 2016, since it is a new file?

Whoops, indeed.  Fixed and pushed.

Thanks,
Pedro Alves
  

Patch

diff --git a/gdb/testsuite/gdb.base/command-line-input.exp b/gdb/testsuite/gdb.base/command-line-input.exp
new file mode 100644
index 0000000..0a9d44b
--- /dev/null
+++ b/gdb/testsuite/gdb.base/command-line-input.exp
@@ -0,0 +1,36 @@ 
+# Copyright (C) 2014-2016 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# Command line input testing.
+
+# Test issuing a command split in multiple lines with continuation
+# characters.
+
+gdb_exit
+gdb_start
+
+set test "print 1\\\\n + 2"
+gdb_test_multiple "print 1\\\n + 2" $test {
+    -re "^print 1\\\\\r\n \\+ 2\r\n\\\$$decimal = 3\r\n$gdb_prompt $" {
+	pass $test
+    }
+}
+
+set test "print 1\\\\n2"
+gdb_test_multiple "print 1\\\n2" $test {
+    -re "^print 1\\\\\r\n2\r\n\\\$$decimal = 12\r\n$gdb_prompt $" {
+	pass $test
+    }
+}