[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/phps-mode 19dd2c7 2/7: Improved incremental test and fi
From: |
Christian Johansson |
Subject: |
[elpa] externals/phps-mode 19dd2c7 2/7: Improved incremental test and fixed bug with inconsistent parse variable after incremental parse |
Date: |
Sun, 7 Nov 2021 14:21:36 -0500 (EST) |
branch: externals/phps-mode
commit 19dd2c7db4931f8c15a6fb6e41101cfdcc2977a6
Author: Christian Johansson <christian@cvj.se>
Commit: Christian Johansson <christian@cvj.se>
Improved incremental test and fixed bug with inconsistent parse variable
after incremental parse
---
phps-mode-lex-analyzer.el | 3 ++-
phps-mode-test.el | 33 ++++++++++++++++++++++++++++++++-
2 files changed, 34 insertions(+), 2 deletions(-)
diff --git a/phps-mode-lex-analyzer.el b/phps-mode-lex-analyzer.el
index 32b9ede..6e18a52 100644
--- a/phps-mode-lex-analyzer.el
+++ b/phps-mode-lex-analyzer.el
@@ -1054,7 +1054,6 @@
(nth 4 phps-mode-lex-analyzer--parse-error))))))))
(lambda(result)
- (message "error 1: %S" result)
(when (get-buffer buffer-name)
(with-current-buffer buffer-name
(let ((error-type (nth 0 result))
@@ -1230,6 +1229,8 @@
(setq phps-mode-lex-analyzer--heredoc-label nil)
(setq phps-mode-lex-analyzer--heredoc-label-stack nil)
(setq phps-mode-lex-analyzer--nest-location-stack nil)
+ (setq phps-mode-lex-analyzer--parse-trail nil)
+ (setq phps-mode-lex-analyzer--parse-error nil)
;; NOTE Starts are inclusive while ends are exclusive buffer
locations
diff --git a/phps-mode-test.el b/phps-mode-test.el
index c499d8c..b89d01d 100644
--- a/phps-mode-test.el
+++ b/phps-mode-test.el
@@ -35,15 +35,28 @@
(defmacro phps-mode-test--incremental-vs-intial-buffer (source &optional title
&rest change)
"Set up test buffer with SOURCE, TITLE, apply CHANGE and compare incremental
values with initial values."
`(let ((test-buffer-incremental (generate-new-buffer "test-incremental"))
+ (incremental-state)
+ (incremental-state-stack)
(incremental-states)
+ (incremental-heredoc-label)
+ (incremental-heredoc-label-stack)
+ (incremental-parse-trail)
+ (incremental-parse-error)
(incremental-tokens)
(incremental-imenu)
(incremental-indent)
(incremental-buffer)
(incremental-bookkeeping)
(incremental-nest-location-stack)
+ (incremental)
(test-buffer-initial (generate-new-buffer "test-initial"))
+ (initial-state)
+ (initial-state-stack)
(initial-states)
+ (initial-heredoc-label)
+ (initial-heredoc-label-stack)
+ (initial-parse-trail)
+ (initial-parse-error)
(initial-tokens)
(initial-imenu)
(initial-indent)
@@ -64,6 +77,12 @@
,@change
(phps-mode-lex-analyzer--process-changes test-buffer-incremental)
+ (setq incremental-state phps-mode-lex-analyzer--state)
+ (setq incremental-state-stack phps-mode-lex-analyzer--state-stack)
+ (setq incremental-heredoc-label phps-mode-lex-analyzer--heredoc-label)
+ (setq incremental-heredoc-label-stack
phps-mode-lex-analyzer--heredoc-label-stack)
+ (setq incremental-parse-trail phps-mode-lex-analyzer--parse-trail)
+ (setq incremental-parse-error phps-mode-lex-analyzer--parse-error)
(setq incremental-states phps-mode-lex-analyzer--states)
(setq incremental-tokens phps-mode-lex-analyzer--tokens)
(setq incremental-imenu phps-mode-lex-analyzer--imenu)
@@ -79,7 +98,13 @@
(phps-mode-debug-message
(message "\nTesting initial buffer '%s':\n'%s'\n" ,title
incremental-buffer))
(phps-mode)
+ (setq initial-state phps-mode-lex-analyzer--state)
+ (setq initial-state-stack phps-mode-lex-analyzer--state-stack)
(setq initial-states phps-mode-lex-analyzer--states)
+ (setq initial-heredoc-label phps-mode-lex-analyzer--heredoc-label)
+ (setq initial-heredoc-label-stack
phps-mode-lex-analyzer--heredoc-label-stack)
+ (setq initial-parse-trail phps-mode-lex-analyzer--parse-trail)
+ (setq initial-parse-error phps-mode-lex-analyzer--parse-error)
(setq initial-tokens phps-mode-lex-analyzer--tokens)
(setq initial-imenu phps-mode-lex-analyzer--imenu)
(setq initial-indent (phps-mode-test--hash-to-list
phps-mode-lex-analyzer--lines-indent))
@@ -94,13 +119,19 @@
;; (message "Initial tokens: %s\n" initial-tokens)
;; (message "Incremental tokens: %s\n" incremental-tokens)
(should (equal initial-tokens incremental-tokens))
+ (should (equal initial-state incremental-state))
+ (should (equal initial-state-stack incremental-state-stack))
(should (equal initial-states incremental-states))
+ (should (equal initial-heredoc-label incremental-heredoc-label))
+ (should (equal initial-heredoc-label-stack
incremental-heredoc-label-stack))
+ (should (equal initial-parse-trail incremental-parse-trail))
+ (should (equal initial-parse-error incremental-parse-error))
+ (should (equal initial-nest-location-stack
incremental-nest-location-stack))
;; (message "Initial indent: %s\n" initial-indent)
;; (message "Incremental indent: %s\n" incremental-indent)
(should (equal initial-indent incremental-indent))
(should (equal initial-imenu incremental-imenu))
(should (equal initial-bookkeeping incremental-bookkeeping))
- (should (equal initial-nest-location-stack
incremental-nest-location-stack))
(kill-buffer test-buffer-incremental)
(kill-buffer test-buffer-initial)
- [elpa] externals/phps-mode updated (38e99b2 -> 3734d56), Christian Johansson, 2021/11/07
- [elpa] externals/phps-mode 19dd2c7 2/7: Improved incremental test and fixed bug with inconsistent parse variable after incremental parse,
Christian Johansson <=
- [elpa] externals/phps-mode 1c75371 1/7: Added FSF header to generated parser script, Christian Johansson, 2021/11/07
- [elpa] externals/phps-mode 004f60d 3/7: Started on test for SDT, Christian Johansson, 2021/11/07
- [elpa] externals/phps-mode 8ec76e8 5/7: Improved parser to pass more meta-data about tokens for SDT, Christian Johansson, 2021/11/07
- [elpa] externals/phps-mode 3734d56 7/7: More testing with generating AST, Christian Johansson, 2021/11/07
- [elpa] externals/phps-mode 5994746 4/7: Started on generating imenu-index via parser translation, Christian Johansson, 2021/11/07
- [elpa] externals/phps-mode e82483e 6/7: More testing of generating imenu-index via parser SDT, Christian Johansson, 2021/11/07