@@ -396,6 +396,12 @@ def test_loopback?
396396 assert_equal ( true , IPAddr . new ( '::1' ) . loopback? )
397397 assert_equal ( false , IPAddr . new ( '::' ) . loopback? )
398398 assert_equal ( false , IPAddr . new ( '3ffe:505:2::1' ) . loopback? )
399+
400+ assert_equal ( true , IPAddr . new ( '::ffff:127.0.0.1' ) . loopback? )
401+ assert_equal ( true , IPAddr . new ( '::ffff:127.127.1.1' ) . loopback? )
402+ assert_equal ( false , IPAddr . new ( '::ffff:0.0.0.0' ) . loopback? )
403+ assert_equal ( false , IPAddr . new ( '::ffff:192.168.2.0' ) . loopback? )
404+ assert_equal ( false , IPAddr . new ( '::ffff:255.0.0.0' ) . loopback? )
399405 end
400406
401407 def test_private?
@@ -463,6 +469,15 @@ def test_link_local?
463469 assert_equal ( false , IPAddr . new ( 'fb84:8bf7:e905::1' ) . link_local? )
464470
465471 assert_equal ( true , IPAddr . new ( 'fe80::dead:beef:cafe:1234' ) . link_local? )
472+
473+ assert_equal ( false , IPAddr . new ( '::ffff:0.0.0.0' ) . link_local? )
474+ assert_equal ( false , IPAddr . new ( '::ffff:127.0.0.1' ) . link_local? )
475+ assert_equal ( false , IPAddr . new ( '::ffff:10.0.0.0' ) . link_local? )
476+ assert_equal ( false , IPAddr . new ( '::ffff:172.16.0.0' ) . link_local? )
477+ assert_equal ( false , IPAddr . new ( '::ffff:192.168.0.0' ) . link_local? )
478+
479+ assert_equal ( true , IPAddr . new ( '::ffff:169.254.1.1' ) . link_local? )
480+ assert_equal ( true , IPAddr . new ( '::ffff:169.254.254.255' ) . link_local? )
466481 end
467482
468483 def test_hash
0 commit comments