OLD | NEW |
(Empty) | |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 package org.chromium.net; |
| 5 |
| 6 import android.test.suitebuilder.annotation.SmallTest; |
| 7 |
| 8 import org.chromium.base.test.util.Feature; |
| 9 |
| 10 /** |
| 11 * Tests CronetUtil class. |
| 12 */ |
| 13 public class CronetUtilTest extends CronetTestBase { |
| 14 @SmallTest |
| 15 @Feature({"Cronet"}) |
| 16 public void testHostNameValidation() throws Exception { |
| 17 // Valid host names. |
| 18 assertValidHostName("domain.com"); |
| 19 assertValidHostName("section4.domain.info"); |
| 20 assertValidHostName("44.domain44.info"); |
| 21 assertValidHostName("very.long.long.long.long.long.long.long.domain.com"
); |
| 22 assertValidHostName("host"); |
| 23 assertValidHostName("новости.ру"); |
| 24 assertValidHostName("новости.ру"); |
| 25 assertValidHostName("самые-последние.новости.рус"); |
| 26 // Invalid host names. |
| 27 assertInvalidHostName("domain.com:300"); |
| 28 assertInvalidHostName("http://domain.com"); |
| 29 assertInvalidHostName("domain.com:"); |
| 30 assertInvalidHostName("domain.com/"); |
| 31 assertInvalidHostName("новости.ру:"); |
| 32 assertInvalidHostName("новости.ру/"); |
| 33 assertInvalidHostName("FE80:0000:0000:0000:0202:B3FF:FE1E:8329"); |
| 34 assertInvalidHostName("[2001:db8:0:1]:80"); |
| 35 assertInvalidHostName("_http._sctp.www.example.com"); |
| 36 } |
| 37 |
| 38 @SmallTest |
| 39 @Feature({"Cronet"}) |
| 40 public void testIPv4Validation() throws Exception { |
| 41 // Valid IPv4 addresses. |
| 42 assertValidIPv4("127.0.0.1"); |
| 43 assertValidIPv4("1.0.0.10"); |
| 44 // Invalid IPv4 addresses. |
| 45 assertInvalidIPv4("domain.com"); |
| 46 assertInvalidIPv4("новости.ру"); |
| 47 assertInvalidIPv4("256.0.0.1"); |
| 48 assertInvalidIPv4("127.0.0.299"); |
| 49 assertInvalidIPv4("127.0.0."); |
| 50 assertInvalidIPv4("127.0.0"); |
| 51 assertInvalidIPv4("127.0.0.a"); |
| 52 assertInvalidIPv4("127.0.0.1:80"); |
| 53 assertInvalidIPv4("127.0.0.1:80/"); |
| 54 assertInvalidIPv4("http://127.0.0.1:80"); |
| 55 } |
| 56 |
| 57 private void assertValidHostName(String hostName) { |
| 58 boolean valid = CronetUtil.isValidHostName(hostName); |
| 59 assertTrue(hostName + " should be a valid host name", valid); |
| 60 } |
| 61 |
| 62 private void assertInvalidHostName(String hostName) { |
| 63 boolean valid = CronetUtil.isValidHostName(hostName); |
| 64 assertFalse(hostName + " should be an invalid host name", valid); |
| 65 } |
| 66 |
| 67 private void assertValidIPv4(String addr) { |
| 68 boolean valid = CronetUtil.isValidIPv4(addr); |
| 69 assertTrue(addr + " should be a valid IPv4 address", valid); |
| 70 } |
| 71 |
| 72 private void assertInvalidIPv4(String addr) { |
| 73 boolean valid = CronetUtil.isValidIPv4(addr); |
| 74 assertFalse(addr + " should be an invalid IPv4 address", valid); |
| 75 } |
| 76 } |
OLD | NEW |