
* lisp/erc/erc-join.el (erc-autojoin-server-match): Favor network identities, falling back on old definition. (erc-autojoin--join): Add new helper containing common code from hookees `erc-autojoin-after-ident' and `erc-autojoin-channels'. (erc-autojoin-after-ident, erc-autojoin-channels): No longer make a point of returning nil because the hooks they're registered on, `erc-nickserv-identified-hook' and `erc-after-connect', don't stop on success. (erc-autojoin--mutate): Add helper for `erc-autojoin-add' and `erc-autojoin-remove'. (erc-autojoin-add, erc-autojoin-remove): Favor given network identities, over networks, when matching keys for `erc-autojoin-channels-alist'. * test/lisp/erc/erc-scenarios-base-reconnect.el: New file. * test/lisp/erc/erc-scenarios-join-netid-newcmd-id.el: New file. * test/lisp/erc/erc-scenarios-join-netid-newcmd.el: New file. * test/lisp/erc/erc-scenarios-join-netid-recon-id.el: New file. * test/lisp/erc/erc-scenarios-join-netid-recon.el: New file. * test/lisp/erc/resources/erc-scenarios-common.el: New file. * test/lisp/erc/resources/join/legacy/foonet.eld: New file. * test/lisp/erc/resources/join/network-id/barnet.eld: New file. * test/lisp/erc/resources/join/network-id/foonet-again.eld: New file. * test/lisp/erc/resources/join/network-id/foonet.eld: New file. * test/lisp/erc/resources/join/reconnect/foonet-again.eld: New file. * test/lisp/erc/resources/join/reconnect/foonet.eld: New file.
50 lines
2.1 KiB
EmacsLisp
50 lines
2.1 KiB
EmacsLisp
;;; erc-scenarios-join-netid-newcmd-id.el --- join netid newcmd scenarios -*- lexical-binding: t -*-
|
|
|
|
;; Copyright (C) 2022 Free Software Foundation, Inc.
|
|
;;
|
|
;; This file is part of GNU Emacs.
|
|
;;
|
|
;; 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/>.
|
|
|
|
(require 'ert-x)
|
|
(eval-and-compile
|
|
(let ((load-path (cons (ert-resource-directory) load-path)))
|
|
(require 'erc-scenarios-common)))
|
|
|
|
(ert-deftest erc-scenarios-join-netid--newcmd-id ()
|
|
:tags '(:expensive-test)
|
|
(let ((connect (lambda ()
|
|
(erc :server "127.0.0.1"
|
|
:port (with-current-buffer "oofnet"
|
|
(process-contact erc-server-process :service))
|
|
:nick "tester"
|
|
:password "foonet:changeme"
|
|
:full-name "tester"
|
|
:id 'oofnet))))
|
|
(erc-scenarios-common--join-network-id connect 'oofnet nil)))
|
|
|
|
(ert-deftest erc-scenarios-join-netid--newcmd-ids ()
|
|
:tags '(:expensive-test)
|
|
(let ((connect (lambda ()
|
|
(erc :server "127.0.0.1"
|
|
:port (with-current-buffer "oofnet"
|
|
(process-contact erc-server-process :service))
|
|
:nick "tester"
|
|
:password "foonet:changeme"
|
|
:full-name "tester"
|
|
:id 'oofnet))))
|
|
(erc-scenarios-common--join-network-id connect 'oofnet 'rabnet)))
|
|
|
|
;;; erc-scenarios-join-netid-newcmd-id.el ends here
|