From 08d71bf1b687f6cd9be78489369a8e276714f808 Mon Sep 17 00:00:00 2001 From: Kyle Meyer Date: Wed, 29 Oct 2014 21:38:19 -0400 Subject: Fix bog-citekey-at-point for hyphenated citekeys Because bog-citekey-at-point used "(thing-at-point 'word)", it didn't handle hyphenated citekeys properly. Now the function relies on a set of characters that are allowed to precede citekeys. --- bog-tests.el | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) (limited to 'bog-tests.el') diff --git a/bog-tests.el b/bog-tests.el index 6a261f4..c1c98a2 100644 --- a/bog-tests.el +++ b/bog-tests.el @@ -41,13 +41,40 @@ ;; `bog-citekey-at-point' -(ert-deftest bog-citekey-at-point () +(ert-deftest bog-citekey-at-point-bob () (let ((citekey "name2010word")) (with-temp-buffer (insert citekey) (goto-char (point-min)) (should (equal (bog-citekey-at-point) citekey))))) +(ert-deftest bog-citekey-at-point-newline () + (let ((citekey "name2010word")) + (with-temp-buffer + (insert "\n" citekey) + (should (equal (bog-citekey-at-point) citekey))))) + +(ert-deftest bog-citekey-at-point-parens () + (let ((citekey "name2010word")) + (with-temp-buffer + (insert "\n(" citekey ")") + (backward-char 2) + (should (equal (bog-citekey-at-point) citekey))))) + +(ert-deftest bog-citekey-at-point-spaces () + (let ((citekey "name2010word")) + (with-temp-buffer + (insert "\n " citekey " ") + (backward-char 2) + (should (equal (bog-citekey-at-point) citekey))))) + +(ert-deftest bog-citekey-at-point-with-hyphen () + (let ((citekey "hyphen-name2010word")) + (with-temp-buffer + (insert citekey) + (goto-char (point-min)) + (should (equal (bog-citekey-at-point) citekey))))) + ;; `bog-citekey-from-tree' (ert-deftest bog-citekey-from-heading-title-current-level () -- cgit v1.2.3