1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
;;; webjump-tests.el --- Tests for webjump.el -*- lexical-binding: t; -*-
;; Copyright (C) 2020-2025 Free Software Foundation, Inc.
;; Author: Simen Heggestøyl <simenheg@gmail.com>
;; Keywords:
;; This file is part of GNU Emacs.
;; GNU Emacs is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
;;
;;; Code:
(require 'ert)
(require 'webjump)
(ert-deftest webjump-tests-builtin ()
(should (equal (webjump-builtin '[name] "gnu.org") "gnu.org")))
(ert-deftest webjump-tests-builtin-check-args ()
(should (webjump-builtin-check-args [1 2 3] "Foo" 2))
(should-error (webjump-builtin-check-args [1 2 3] "Foo" 3)))
(ert-deftest webjump-tests-mirror-default ()
(should (equal (webjump-mirror-default
'("https://ftp.gnu.org/pub/gnu/"
"https://ftpmirror.gnu.org"))
"https://ftp.gnu.org/pub/gnu/")))
(ert-deftest webjump-tests-null-or-blank-string-p ()
(should (webjump-null-or-blank-string-p nil))
(should (webjump-null-or-blank-string-p ""))
(should (webjump-null-or-blank-string-p " "))
(should-not (webjump-null-or-blank-string-p " . ")))
(ert-deftest webjump-tests-url-encode ()
(should (equal (webjump-url-encode "") ""))
(should (equal (webjump-url-encode "a b c") "a+b+c"))
(should (equal (webjump-url-encode "foo?") "foo%3F"))
(should (equal (webjump-url-encode "/foo\\") "/foo%5C"))
(should (equal (webjump-url-encode "f&o") "f%26o")))
(ert-deftest webjump-tests-url-fix ()
(should (equal (webjump-url-fix nil) ""))
(should (equal (webjump-url-fix "/tmp/") "file:///tmp/"))
(should (equal (webjump-url-fix "gnu.org") "https://gnu.org/"))
(should (equal (webjump-url-fix "ftp.x.org") "ftp://ftp.x.org/"))
(should (equal (webjump-url-fix "https://gnu.org")
"https://gnu.org/")))
(ert-deftest webjump-tests-url-fix-trailing-slash ()
(should (equal (webjump-url-fix-trailing-slash "https://gnu.org")
"https://gnu.org/"))
(should (equal (webjump-url-fix-trailing-slash "https://gnu.org/")
"https://gnu.org/")))
(provide 'webjump-tests)
;;; webjump-tests.el ends here
|