From patchwork Fri Apr 14 05:49:44 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom de Vries X-Patchwork-Id: 67728 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id C59213858C20 for ; Fri, 14 Apr 2023 05:49:54 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C59213858C20 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1681451394; bh=txXCXU5x2l7MjUTONlNT78hhWb3cG4gfdadYcngM9ok=; h=To:Cc:Subject:Date:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From:Reply-To:From; b=X19A6YZYvUO0L07mfovQgCBC9O/zPrUPh+R1+CWC22zuixOvm7nkUiozmHegPkoCU p8V1n4Ss5JojufGzkXWt50mAzg76SMBQ0X7Wq7dvi810hSWIS0RBznDYiojarvPRca hx5cwiHlslzLzEq4MUq5UDH64vkoxESyJwdQr1Vo= X-Original-To: gdb-patches@sourceware.org Delivered-To: gdb-patches@sourceware.org Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by sourceware.org (Postfix) with ESMTPS id 2302F3858D33 for ; Fri, 14 Apr 2023 05:49:32 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 2302F3858D33 Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 476E8219BE; Fri, 14 Apr 2023 05:49:31 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 2767A13421; Fri, 14 Apr 2023 05:49:31 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id imNqCGvpOGRIJAAAMHmgww (envelope-from ); Fri, 14 Apr 2023 05:49:31 +0000 To: gdb-patches@sourceware.org Cc: Tom Tromey , Andrew Burgess Subject: [PATCH] [gdb/testsuite] Add regression test for PR30325 Date: Fri, 14 Apr 2023 07:49:44 +0200 Message-Id: <20230414054944.892-1-tdevries@suse.de> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 X-Spam-Status: No, score=-12.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_NUMSUBJECT, KAM_SHORT, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Tom de Vries via Gdb-patches From: Tom de Vries Reply-To: Tom de Vries Errors-To: gdb-patches-bounces+patchwork=sourceware.org@sourceware.org Sender: "Gdb-patches" Add regression tests for PR30325, one for the asm window and one for the source window. Use maint set tui-left-margin verbose to make the extend of the left margin clear. Tested on x86_64-linux. --- gdb/testsuite/gdb.tui/main.exp | 9 ++++++++- gdb/testsuite/gdb.tui/tui-layout-asm-short-prog.exp | 11 +++++++++-- 2 files changed, 17 insertions(+), 3 deletions(-) base-commit: f96328accde1e6302b62aa880675594618079cb3 diff --git a/gdb/testsuite/gdb.tui/main.exp b/gdb/testsuite/gdb.tui/main.exp index e5f26c7aac3..7fc9969044f 100644 --- a/gdb/testsuite/gdb.tui/main.exp +++ b/gdb/testsuite/gdb.tui/main.exp @@ -26,16 +26,23 @@ if {[build_executable "failed to prepare" ${testfile} ${srcfile}] == -1} { # Note: don't pass the executable here Term::clean_restart 24 80 +set line " return 0;" +set nr [gdb_get_line_number $line] + # Later on we'd like to avoid having to answer a question. gdb_test_no_output "set interactive-mode off" +# Show the left margin using tui-left-margin-verbose. +gdb_test_no_output "maint set tui-left-margin-verbose on" + if {![Term::enter_tui]} { unsupported "TUI not supported" return } Term::command "file [standard_output_file $testfile]" -Term::check_contents "show main after file" "\\|.*21 *return 0" +Term::check_contents "show main after file" \ + [string_to_regexp "|___[format %06d $nr]_$line"] # Ensure that "file" clears the source window. Term::command "file" diff --git a/gdb/testsuite/gdb.tui/tui-layout-asm-short-prog.exp b/gdb/testsuite/gdb.tui/tui-layout-asm-short-prog.exp index d32310fffcc..9014622d35c 100644 --- a/gdb/testsuite/gdb.tui/tui-layout-asm-short-prog.exp +++ b/gdb/testsuite/gdb.tui/tui-layout-asm-short-prog.exp @@ -37,6 +37,9 @@ if { $gdb_file_cmd_debug_info == "nodebug" } { return } +# Show the left margin using tui-left-margin-verbose. +gdb_test_no_output "maint set tui-left-margin-verbose on" + # This puts us into TUI mode, and should display the ASM window. Term::command_no_prompt_prefix "layout asm" Term::check_box_contents "check asm box contents" 0 0 80 15 "<_start>" @@ -44,13 +47,17 @@ Term::check_box_contents "check asm box contents" 0 0 80 15 "<_start>" # Record the first line of output, we'll need this later. set first_line [Term::get_line 1] +# Check that the left margin contains three underscores. +gdb_assert { [string match "|___0x*" $first_line] } \ + "check verbose left margin" + # Scroll forward a large amount, this should take us to the last # instruction in the program. Term::command "+ 13" Term::check_box_contents "check asm box contents again" 0 0 80 15 \ [multi_line \ - "^ *$hex\[^\r\n\]+" \ - "\\s+"] + "^___$hex\[^\r\n\]+" \ + "___\\s+"] # Now scroll backward again, we should return to the start of the # program.