[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] master 01617c5 100/215: ipdb: add regex test
From: |
Rocky Bernstein |
Subject: |
[elpa] master 01617c5 100/215: ipdb: add regex test |
Date: |
Sat, 30 Jul 2016 14:48:57 +0000 (UTC) |
branch: master
commit 01617c5f60db9df3a84998257c82c0f0592758c4
Author: Sean Farley <address@hidden>
Commit: Sean Farley <address@hidden>
ipdb: add regex test
---
test/test-regexp-ipdb.el | 105 ++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 105 insertions(+)
diff --git a/test/test-regexp-ipdb.el b/test/test-regexp-ipdb.el
new file mode 100644
index 0000000..71aaa4b
--- /dev/null
+++ b/test/test-regexp-ipdb.el
@@ -0,0 +1,105 @@
+;; Press C-x C-e at the end of the next line to run this file test
non-interactively
+;; (test-simple-run "emacs -batch -L %s -l %s" (file-name-directory
(locate-library "test-simple.elc")) buffer-file-name)
+
+(require 'test-simple)
+(load-file "../realgud/debugger/ipdb/init.el")
+(load-file "./regexp-helper.el")
+
+(declare-function __FILE__ 'load-relative)
+(declare-function prompt-match 'regexp-helper)
+
+(test-simple-start)
+
+(eval-when-compile
+ (defvar loc-pat) (defvar prompt-pat) (defvar realgud:ipdb-pat-hash)
+ (defvar tb-pat) (defvar test-text) (defvar prompt-str)
+ (defvar bps-pat)
+)
+
+(set (make-local-variable 'bps-pat)
+ (gethash "brkpt-set" realgud:ipdb-pat-hash))
+
+(set (make-local-variable 'loc-pat)
+ (gethash "loc" realgud:ipdb-pat-hash))
+
+(set (make-local-variable 'prompt-pat)
+ (gethash "prompt" realgud:ipdb-pat-hash))
+
+(set (make-local-variable 'tb-pat)
+ (gethash "lang-backtrace" realgud:ipdb-pat-hash))
+
+;; FIXME: we get a void variable somewhere in here when running
+;; even though we define it in lexical-let. Dunno why.
+;; setq however will workaround this.
+(setq test-text
+ " File \"/usr/lib/python2.6/code.py\", line 281, in raw_input")
+(note "traceback location matching")
+
+(assert-t (numberp (loc-match test-text tb-pat)) "basic traceback location")
+
+(assert-equal "/usr/lib/python2.6/code.py"
+ (match-string (realgud-loc-pat-file-group tb-pat)
+ test-text))
+
+(setq test-text
+ " File \"/usr/lib/python2.6/code.py\", line 281, in raw_input")
+(loc-match test-text tb-pat)
+(assert-equal "281"
+ (match-string (realgud-loc-pat-line-group tb-pat)
+ test-text) "extract line number")
+
+(note "breakpoint location matching")
+
+(setq test-text "Breakpoint 1 at /src/git/code/gcd.py:13")
+(assert-t (numberp (loc-match test-text bps-pat))
+ "basic breakpoint location")
+
+(assert-equal "/src/git/code/gcd.py"
+ (match-string (realgud-loc-pat-file-group
+ bps-pat)
+ test-text)
+ "extract breakpoint file name")
+
+
+(assert-equal "13"
+ (match-string (realgud-loc-pat-line-group
+ bps-pat)
+ test-text) "extract breakpoint line number")
+
+;; (set test-text "(c:\\working\\python\\helloworld.py:30): <module>")
+;;
+;; (assert-t (numberp (loc-match test-text loc-pat)) "MS DOS position
location")
+;; ;;
+;; (assert-equal "c:\\working\\python\\helloworld.py"
+;; (match-string (realgud-loc-pat-file-group loc-pat)
+;; test-text)
+;; (format "Failing file group is %s"
+;; (realgud-loc-pat-file-group tb-pat))
+;; "extract file name")
+;; (assert-equal "30"
+;; (match-string (realgud-loc-pat-line-group loc-pat)
+;; test-text) "extract line number")
+
+(setq test-text "> /usr/bin/ipython(24)<module>")
+(assert-t (numberp (loc-match test-text loc-pat)) "position location")
+(assert-equal "/usr/bin/ipython"
+ (match-string (realgud-loc-pat-file-group loc-pat)
+ test-text)
+ (format "Failing file group is %s"
+ (realgud-loc-pat-file-group tb-pat)))
+(assert-equal "24"
+ (match-string (realgud-loc-pat-line-group
+ loc-pat)
+ test-text)
+ "extract line number")
+
+
+(note "prompt matching")
+(set (make-local-variable 'prompt-str) "ipdb> ")
+(prompt-match prompt-str nil "debugger prompt: %s")
+(setq prompt-str "ipdb")
+(assert-nil (numberp (loc-match prompt-str prompt-pat))
+ (format "%s %s" "invalid debugger prompt"
+ prompt-str))
+
+(end-tests)
- [elpa] master e04eeb2 117/215: Improve eval: run on region if active, and fall back to prompting, (continued)
- [elpa] master e04eeb2 117/215: Improve eval: run on region if active, and fall back to prompting, Rocky Bernstein, 2016/07/30
- [elpa] master fd00428 118/215: Merge pull request #86 from cpitclaudel/83-improve-e-binding, Rocky Bernstein, 2016/07/30
- [elpa] master b275bd2 119/215: Improve behavior of delete, enable, and disable, Rocky Bernstein, 2016/07/30
- [elpa] master ca33520 120/215: Add a prefix arg to "continue" command, Rocky Bernstein, 2016/07/30
- [elpa] master 379528b 106/215: Disable ipdb until melpa is updated, Rocky Bernstein, 2016/07/30
- [elpa] master e049c12 124/215: Merge pull request #89 from cpitclaudel/87-improve-delete-command, Rocky Bernstein, 2016/07/30
- [elpa] master 91704f9 141/215: Automatically attach to a command buffer when enabling short-key-mode, Rocky Bernstein, 2016/07/30
- [elpa] master 40e73bc 123/215: Merge pull request #92 from cpitclaudel/82-add-safe-mode, Rocky Bernstein, 2016/07/30
- [elpa] master f3426ed 072/215: Merge branch 'master' of github.com:rocky/emacs-dbgr, Rocky Bernstein, 2016/07/30
- [elpa] master 4e85910 088/215: Add pytest error message pattern in python debuggers, Rocky Bernstein, 2016/07/30
- [elpa] master 01617c5 100/215: ipdb: add regex test,
Rocky Bernstein <=
- [elpa] master 5395757 091/215: More cleanup from last two commits., Rocky Bernstein, 2016/07/30
- [elpa] master 1e2fe55 098/215: Add rspec loc pattern.., Rocky Bernstein, 2016/07/30
- [elpa] master ea5dcba 094/215: ipdb: add new debugger based on pdb, Rocky Bernstein, 2016/07/30
- [elpa] master d1c1176 146/215: Simplify the implementation of realgud:cmdbuf-associate, Rocky Bernstein, 2016/07/30
- [elpa] master 95f076e 150/215: Improve IPDB completion, Rocky Bernstein, 2016/07/30
- [elpa] master d45788c 152/215: Merge pull request #106 from rocky/75-ipdb-completion, Rocky Bernstein, 2016/07/30
- [elpa] master 032ea4b 143/215: Merge branch 'master' of github.com:rocky/emacs-dbgr, Rocky Bernstein, 2016/07/30
- [elpa] master 549f6f0 135/215: Merge pull request #98 from rocky/83-better-scope-keybindings, Rocky Bernstein, 2016/07/30
- [elpa] master aedea61 138/215: Merge pull request #101 from rocky/bp-icon-in-fringe, Rocky Bernstein, 2016/07/30
- [elpa] master 87d1ada 137/215: Refactor and improve breakpoint UI, Rocky Bernstein, 2016/07/30