Added tests for kagi-translate
This commit is contained in:
parent
ec63275484
commit
4bb7a1d63e
1 changed files with 84 additions and 58 deletions
28
kagi-test.el
28
kagi-test.el
|
@ -61,6 +61,7 @@ TEXT is the output text, optionally with a list of REFERENCES."
|
||||||
:var ((dummy-output "text"))
|
:var ((dummy-output "text"))
|
||||||
(before-each
|
(before-each
|
||||||
(spy-on #'kagi--call-api :and-return-value (kagi-test--dummy-output dummy-output)))
|
(spy-on #'kagi--call-api :and-return-value (kagi-test--dummy-output dummy-output)))
|
||||||
|
(describe "kagi-fastgpt-prompt"
|
||||||
(it "converts *bold* markup to a bold face"
|
(it "converts *bold* markup to a bold face"
|
||||||
(spy-on #'kagi--call-api :and-return-value (kagi-test--dummy-output "**bold**"))
|
(spy-on #'kagi--call-api :and-return-value (kagi-test--dummy-output "**bold**"))
|
||||||
(expect (kagi-fastgpt-prompt "foo")
|
(expect (kagi-fastgpt-prompt "foo")
|
||||||
|
@ -121,12 +122,37 @@ https://www.example.com"
|
||||||
(it "shows short output in the echo area when called interactively"
|
(it "shows short output in the echo area when called interactively"
|
||||||
(spy-on #'message)
|
(spy-on #'message)
|
||||||
(spy-on #'kagi--call-api :and-return-value (kagi-test--dummy-output dummy-output))
|
(spy-on #'kagi--call-api :and-return-value (kagi-test--dummy-output dummy-output))
|
||||||
(kagi-fastgpt-prompt "foo" nil t))
|
(kagi-fastgpt-prompt "foo" nil t)
|
||||||
|
(expect #'message :to-have-been-called-with dummy-output))
|
||||||
(it "shows longer output in a separate buffer when called interactively"
|
(it "shows longer output in a separate buffer when called interactively"
|
||||||
(spy-on #'kagi--fastgpt-display-result)
|
(spy-on #'kagi--fastgpt-display-result)
|
||||||
(spy-on #'kagi--call-api :and-return-value (kagi-test--dummy-output (format "%s\n%s" dummy-output dummy-output)))
|
(spy-on #'kagi--call-api :and-return-value (kagi-test--dummy-output (format "%s\n%s" dummy-output dummy-output)))
|
||||||
(kagi-fastgpt-prompt "foo" nil t)
|
(kagi-fastgpt-prompt "foo" nil t)
|
||||||
(expect #'kagi--fastgpt-display-result :to-have-been-called)))
|
(expect #'kagi--fastgpt-display-result :to-have-been-called)))
|
||||||
|
(describe "kagi-translate"
|
||||||
|
(before-each
|
||||||
|
(spy-on #'message)
|
||||||
|
(spy-on #'kagi--fastgpt-display-result))
|
||||||
|
(it "returns output on minimal input"
|
||||||
|
(kagi-translate "foo" "English")
|
||||||
|
(expect #'kagi--call-api :to-have-been-called)
|
||||||
|
(expect #'message :not :to-have-been-called)
|
||||||
|
(expect #'kagi--fastgpt-display-result :not :to-have-been-called))
|
||||||
|
(it "returns output with a source language"
|
||||||
|
(kagi-translate "foo" "English" "Spanish")
|
||||||
|
(expect #'kagi--call-api :to-have-been-called))
|
||||||
|
(it "shows short output in the echo area when called interactively"
|
||||||
|
(spy-on #'message)
|
||||||
|
(spy-on #'kagi--call-api :and-return-value (kagi-test--dummy-output dummy-output))
|
||||||
|
(kagi-translate "foo" "English" nil t)
|
||||||
|
(expect #'message :to-have-been-called-with dummy-output)
|
||||||
|
(expect #'kagi--fastgpt-display-result :not :to-have-been-called))
|
||||||
|
(it "shows longer output in a separate buffer when called interactively"
|
||||||
|
(spy-on #'kagi--fastgpt-display-result)
|
||||||
|
(spy-on #'kagi--call-api :and-return-value (kagi-test--dummy-output (format "%s\n%s" dummy-output dummy-output)))
|
||||||
|
(kagi-translate "foo" "English" nil t)
|
||||||
|
(expect #'message :not :to-have-been-called)
|
||||||
|
(expect #'kagi--fastgpt-display-result :to-have-been-called))))
|
||||||
|
|
||||||
(xdescribe "Kagi Summarizer"
|
(xdescribe "Kagi Summarizer"
|
||||||
(before-each
|
(before-each
|
||||||
|
|
Loading…
Reference in a new issue