elide-head: Make GPL regexp more forgiving
* lisp/elide-head.el (elide-head-headers-to-hide): Make GPL regexp more forgiving. * test/lisp/elide-head-tests.el (elide-head--add-test): New macro. (elide-head--test-headers-to-hide/gpl2-1) (elide-head--test-headers-to-hide/gpl3-1) (elide-head--test-headers-to-hide/gpl3-2) (elide-head--test-headers-to-hide/gpl3-3) (elide-head--test-headers-to-hide/gpl3-4): New tests.
This commit is contained in:
parent
61c35e415c
commit
bd9a09bb6b
2 changed files with 113 additions and 3 deletions
|
@ -52,9 +52,14 @@
|
|||
(defcustom elide-head-headers-to-hide
|
||||
`(;; GNU GPL
|
||||
("is free software[:;] you can redistribute it" .
|
||||
"\\(If not, see <https?://www\\.gnu\\.org/licenses/>\\|\
|
||||
Boston, MA 0211\\(1-1307\\|0-1301\\), USA\\|\
|
||||
675 Mass Ave, Cambridge, MA 02139, USA\\)\\.")
|
||||
,(rx (or (seq "If not, see " (? "<")
|
||||
"http" (? "s") "://www.gnu.org/licenses/"
|
||||
(? ">") (? " "))
|
||||
(seq "Boston, MA " (? " ")
|
||||
"0211" (or "1-1307" "0-1301")
|
||||
(or " " ", ") "USA")
|
||||
"675 Mass Ave, Cambridge, MA 02139, USA")
|
||||
(? ".")))
|
||||
;; FreeBSD license / Modified BSD license (3-clause)
|
||||
(,(rx (or "The Regents of the University of California. All rights reserved."
|
||||
"Redistribution and use in source and binary"))
|
||||
|
|
|
@ -58,5 +58,110 @@
|
|||
(elide-head-show)
|
||||
(should-not (overlays-at 14)))))
|
||||
|
||||
(defmacro elide-head--add-test (name text search-str)
|
||||
`(ert-deftest ,(intern (format "elide-head--test-headers-to-hide/%s" name)) ()
|
||||
(with-temp-buffer
|
||||
(insert ,text)
|
||||
(elide-head)
|
||||
(goto-char (point-min))
|
||||
(re-search-forward ,search-str)
|
||||
(let ((o (car (overlays-at (match-beginning 0)))))
|
||||
(should (overlayp o))
|
||||
(should (overlay-get o 'invisible))
|
||||
(should (overlay-get o 'evaporate))))))
|
||||
|
||||
|
||||
;;; GPLv3
|
||||
|
||||
;; from Emacs
|
||||
(elide-head--add-test gpl3-1 "\
|
||||
;; 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/>.
|
||||
" "GNU Emacs is distributed in the hope that")
|
||||
|
||||
;; from libtorrent
|
||||
(elide-head--add-test gpl3-2 "\
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
" "This library is distributed in the hope that")
|
||||
|
||||
;; from notmuch
|
||||
(elide-head--add-test gpl3-3 "\
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see https://www.gnu.org/licenses/ .
|
||||
" "This program is distributed in the hope that")
|
||||
|
||||
;; from fribok
|
||||
(elide-head--add-test gpl3-4 "\
|
||||
/***************************************************************************
|
||||
* Copyright (C) 2007, 2009 by J. Random Hacker <jrh@example.org> *
|
||||
* *
|
||||
* This program 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. *
|
||||
* *
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/> *.
|
||||
* *
|
||||
***************************************************************************/
|
||||
" "This program is distributed in the hope that")
|
||||
|
||||
|
||||
;;; GPLv2
|
||||
|
||||
;; from jackmeter
|
||||
(elide-head--add-test gpl2-1 "\
|
||||
This program 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 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program 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 this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
" "This program is distributed in the hope that")
|
||||
|
||||
(provide 'elide-head-tests)
|
||||
;;; elide-head-tests.el ends here
|
||||
|
|
Loading…
Add table
Reference in a new issue