From b19ad7899fecfb6835e19e23a7069233654c9fc7 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Wed, 18 Feb 2026 23:20:28 -0600 Subject: feat(restclient): add REST API client for interactive API exploration restclient.el + restclient-jq integration with SkyFi API templates, tutorial file, auto key injection from authinfo, 17 ERT tests. --- tests/test-restclient-config-new-buffer.el | 62 ++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 tests/test-restclient-config-new-buffer.el (limited to 'tests/test-restclient-config-new-buffer.el') diff --git a/tests/test-restclient-config-new-buffer.el b/tests/test-restclient-config-new-buffer.el new file mode 100644 index 00000000..a89ec3a3 --- /dev/null +++ b/tests/test-restclient-config-new-buffer.el @@ -0,0 +1,62 @@ +;;; test-restclient-config-new-buffer.el --- Tests for cj/restclient-new-buffer -*- lexical-binding: t; -*- + +;;; Commentary: +;; Unit tests for cj/restclient-new-buffer function. +;; Creates a scratch *restclient* buffer in restclient-mode. +;; Covers Normal and Boundary cases. + +;;; Code: + +(when noninteractive + (package-initialize)) + +(require 'ert) +(require 'restclient-config) + +;;; Normal Cases + +(ert-deftest test-restclient-new-buffer-creates-buffer () + "Creates a buffer named *restclient*." + (unwind-protect + (progn + (cj/restclient-new-buffer) + (should (get-buffer "*restclient*"))) + (when (get-buffer "*restclient*") + (kill-buffer "*restclient*")))) + +(ert-deftest test-restclient-new-buffer-sets-mode () + "Buffer is in restclient-mode." + (unwind-protect + (progn + (cj/restclient-new-buffer) + (with-current-buffer "*restclient*" + (should (eq major-mode 'restclient-mode)))) + (when (get-buffer "*restclient*") + (kill-buffer "*restclient*")))) + +(ert-deftest test-restclient-new-buffer-switches-to-buffer () + "Switches to the *restclient* buffer." + (unwind-protect + (progn + (cj/restclient-new-buffer) + (should (string= (buffer-name (current-buffer)) "*restclient*"))) + (when (get-buffer "*restclient*") + (kill-buffer "*restclient*")))) + +;;; Boundary Cases + +(ert-deftest test-restclient-new-buffer-reuses-existing () + "Reuses existing *restclient* buffer instead of creating a duplicate." + (unwind-protect + (let ((buf (get-buffer-create "*restclient*"))) + (with-current-buffer buf + (restclient-mode) + (insert "# existing content")) + (cj/restclient-new-buffer) + (should (eq (current-buffer) buf)) + (should (string-match-p "existing content" (buffer-string)))) + (when (get-buffer "*restclient*") + (kill-buffer "*restclient*")))) + +(provide 'test-restclient-config-new-buffer) +;;; test-restclient-config-new-buffer.el ends here -- cgit v1.2.3