add: some contrived tests for marker handling in adjancent fields

This commit is contained in:
Joao Tavora 2013-10-20 12:43:21 +01:00
parent 90528b1664
commit fe4b622a5e

View File

@ -33,6 +33,9 @@
`((basic ((field 1 "foo") `((basic ((field 1 "foo")
" bar " " bar "
(mirror 1))) (mirror 1)))
(contrived ((field 1)
(field 2)
(field 3)))
(printf ("printf (\"" (printf ("printf (\""
(field 1 "%s") (field 1 "%s")
(mirror 1 (if (string-match "%" field-text) "\"," "\")")) (mirror 1 (if (string-match "%" field-text) "\"," "\")"))
@ -60,6 +63,30 @@
(overlay-end snippet--field-overlay)) (overlay-end snippet--field-overlay))
"foo" )))) "foo" ))))
(ert-deftest contrived ()
(with-temp-buffer
(snippet--insert-test-snippet 'contrived)
(should (equal (buffer-string) ""))
(ert-simulate-command '((lambda () (interactive) (insert "foo"))))
(ert-simulate-command '(snippet-next-field))
(ert-simulate-command '((lambda () (interactive) (insert "bar"))))
(ert-simulate-command '(snippet-next-field))
(ert-simulate-command '((lambda () (interactive) (insert "baz"))))
(should (equal (buffer-string) "foobarbaz"))))
(ert-deftest contrived-2 ()
(with-temp-buffer
(snippet--insert-test-snippet 'contrived)
(should (equal (buffer-string) ""))
(ert-simulate-command '(snippet-next-field))
(ert-simulate-command '(snippet-next-field))
(ert-simulate-command '((lambda () (interactive) (insert "baz"))))
(ert-simulate-command '(snippet-prev-field))
(ert-simulate-command '((lambda () (interactive) (insert "bar"))))
(ert-simulate-command '(snippet-prev-field))
(ert-simulate-command '((lambda () (interactive) (insert "foo"))))
(should (equal (buffer-string) "foobarbaz"))))
(ert-deftest printf-expansion () (ert-deftest printf-expansion ()
(with-temp-buffer (with-temp-buffer
(snippet--insert-test-snippet 'printf) (snippet--insert-test-snippet 'printf)