diff options
author | Michael R. Mauger <michael@mauger.com> | 2019-04-20 20:13:56 -0400 |
---|---|---|
committer | Michael R. Mauger <michael@mauger.com> | 2019-04-21 00:05:42 -0400 |
commit | 23d8cfb9ce950f12b80314a9840a637177178e29 (patch) | |
tree | 8f2d9b233d40b50d199ddb3265e1d70d46e69181 /test/lisp/progmodes/sql-tests.el | |
parent | 21db386ac0df26f0b1a549e0bd4f83c5bbce6361 (diff) | |
download | emacs-23d8cfb9ce950f12b80314a9840a637177178e29.tar.gz |
* lisp/progmodes.sql.el
(sql-product-alist): Corrected :terminator defns.
(sql-debug-send): New variable.
(sql-send-string): Use it and correct buffer context.
(sql-send-magic-terminator): Use `sql-input-sender'.
(sql-placeholders-filter): Bug#11481 Don't recursively replace placeholders
* test/lisp/progmodes/sql-tests.el
(sql-test-placeholder-filter): Test placeholder functionality.
Diffstat (limited to 'test/lisp/progmodes/sql-tests.el')
-rw-r--r-- | test/lisp/progmodes/sql-tests.el | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/test/lisp/progmodes/sql-tests.el b/test/lisp/progmodes/sql-tests.el index 7a11f762eb0..5ac34907c2d 100644 --- a/test/lisp/progmodes/sql-tests.el +++ b/test/lisp/progmodes/sql-tests.el @@ -270,5 +270,39 @@ Perform ACTION and validate results" (sql-test-product-feature-harness (should-not (sql-get-product-feature 'd :Z)))) +;;; SQL Oracle SCAN/DEFINE +(ert-deftest sql-tests-placeholder-filter () + "Test that placeholder relacement is as expected." + (let ((syntab (syntax-table)) + (sql-oracle-scan-on t) + (placeholder-value "")) + (set-syntax-table sql-mode-syntax-table) + + (cl-letf + (((symbol-function 'read-from-minibuffer) + (lambda (&rest _) placeholder-value))) + + (setq placeholder-value "XX") + (should (equal + (sql-placeholders-filter "select '&x' from dual;") + "select 'XX' from dual;")) + + (setq placeholder-value "&Y") + (should (equal + (sql-placeholders-filter "select '&x' from dual;") + "select '&Y' from dual;")) + (should (equal + (sql-placeholders-filter "select '&x' from dual;") + "select '&Y' from dual;")) + (should (equal + (sql-placeholders-filter "select '&x.' from dual;") + "select '&Y' from dual;")) + (should (equal + (sql-placeholders-filter "select '&x.y' from dual;") + "select '&Yy' from dual;"))) + + (set-syntax-table syntab))) + + (provide 'sql-tests) ;;; sql-tests.el ends here |