@@ -415,6 +415,12 @@ def test_loopback?
415415 assert_equal ( true , IPAddr . new ( '::1' ) . loopback? )
416416 assert_equal ( false , IPAddr . new ( '::' ) . loopback? )
417417 assert_equal ( false , IPAddr . new ( '3ffe:505:2::1' ) . loopback? )
418+
419+ assert_equal ( true , IPAddr . new ( '::ffff:127.0.0.1' ) . loopback? )
420+ assert_equal ( true , IPAddr . new ( '::ffff:127.127.1.1' ) . loopback? )
421+ assert_equal ( false , IPAddr . new ( '::ffff:0.0.0.0' ) . loopback? )
422+ assert_equal ( false , IPAddr . new ( '::ffff:192.168.2.0' ) . loopback? )
423+ assert_equal ( false , IPAddr . new ( '::ffff:255.0.0.0' ) . loopback? )
418424 end
419425
420426 def test_private?
@@ -482,6 +488,15 @@ def test_link_local?
482488 assert_equal ( false , IPAddr . new ( 'fb84:8bf7:e905::1' ) . link_local? )
483489
484490 assert_equal ( true , IPAddr . new ( 'fe80::dead:beef:cafe:1234' ) . link_local? )
491+
492+ assert_equal ( false , IPAddr . new ( '::ffff:0.0.0.0' ) . link_local? )
493+ assert_equal ( false , IPAddr . new ( '::ffff:127.0.0.1' ) . link_local? )
494+ assert_equal ( false , IPAddr . new ( '::ffff:10.0.0.0' ) . link_local? )
495+ assert_equal ( false , IPAddr . new ( '::ffff:172.16.0.0' ) . link_local? )
496+ assert_equal ( false , IPAddr . new ( '::ffff:192.168.0.0' ) . link_local? )
497+
498+ assert_equal ( true , IPAddr . new ( '::ffff:169.254.1.1' ) . link_local? )
499+ assert_equal ( true , IPAddr . new ( '::ffff:169.254.254.255' ) . link_local? )
485500 end
486501
487502 def test_hash
0 commit comments