]> git.eshelyaron.com Git - emacs.git/commitdiff
Add nsm-should-check IPv6 local subnet tests
authorRobert Pluim <rpluim@gmail.com>
Mon, 18 Nov 2019 10:07:51 +0000 (11:07 +0100)
committerRobert Pluim <rpluim@gmail.com>
Fri, 29 Nov 2019 15:41:04 +0000 (16:41 +0100)
* test/lisp/net/nsm-tests.el (nsm-check-local-subnet-ipv6): Now
that IPv6 addresses are returned from network-interface-list, test
nsm-should check and nsm-network-same-subnet for IPv6 as well.

test/lisp/net/nsm-tests.el

index f3544370389965a3560dab1fa0c7d201c262d514..97edcca80de404c3e9e32715ad5aeca7db83096a 100644 (file)
@@ -49,9 +49,6 @@
       (should (eq nil (nsm-should-check "127.0.0.1")))
       (should (eq nil (nsm-should-check "localhost"))))))
 
-;; FIXME This will never return true, since
-;; network-interface-list only gives the primary address of each
-;; interface, which will be the IPv4 one
 (defun nsm-ipv6-is-available ()
   (and (featurep 'make-network-process '(:family ipv6))
        (cl-rassoc-if
 
 (ert-deftest nsm-check-local-subnet-ipv6 ()
   (skip-unless (nsm-ipv6-is-available))
+  (let ((local-ip '[123 456 789 11 172 26 128 160 0])
+        (mask '[255 255 255 255 255 255 255 0 0])
+
+        (wrong-length-mask '[255 255 255 255 255 255 255])
+        (wrong-mask '[255 255 255 255 255 255 255 255 0])
+        (remote-ip-yes '[123 456 789 11 172 26 128 161 0])
+        (remote-ip-no '[123 456 789 11 172 26 129 161 0]))
+    (should (eq t (nsm-network-same-subnet local-ip mask remote-ip-yes)))
+    (should (eq nil (nsm-network-same-subnet local-ip mask remote-ip-no)))
+    (should-error (nsm-network-same-subnet local-ip wrong-length-mask remote-ip-yes))
+    (should (eq nil (nsm-network-same-subnet local-ip wrong-mask remote-ip-yes))))
   (should (eq t (nsm-should-check "::1")))
   (let ((nsm-trust-local-network t))
     (should (eq nil (nsm-should-check "::1")))))