summaryrefslogtreecommitdiff
path: root/app/src/test/java/se/leap/bitmaskclient/base/utils/ConfigHelperTest.java
blob: 6e0ceb56a65704bb00ff63af98b4bd93a8fccf37 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
package se.leap.bitmaskclient.base.utils;

import static org.junit.Assert.assertEquals;

import com.tngtech.java.junit.dataprovider.DataProvider;
import com.tngtech.java.junit.dataprovider.DataProviderRunner;
import com.tngtech.java.junit.dataprovider.UseDataProvider;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.powermock.modules.junit4.PowerMockRunner;
import org.powermock.modules.junit4.PowerMockRunnerDelegate;

@RunWith(PowerMockRunner.class)
@PowerMockRunnerDelegate(DataProviderRunner.class)
public class ConfigHelperTest {

    @DataProvider
    public static Object[][] dataProviderIPs() {
        // @formatter:off
        return new Object[][] {
                { "0.0.0.0", true },
                { "1.1.1.1", true },
                { "8.8.8.8", true },
                { "127.0.0.1", true },
                { "255.255.255.255", true },
                { "200.50.20.10", true },
                { "97.72.15.12", true },
                {"02.0.0.0", false},
                {"10.000.1.1", false},
                {"256.256.256.256", false},
                {"127..0.1", false},
                {"127.0..1", false},
                {"127.0.0.", false},
                {"127.0.0", false},
                {"255.255.255.255.255", false},
                {"", false},
                {null, false},
        };
    }


    @Test
    @UseDataProvider("dataProviderIPs")
    public void testisIPv4_validIPs_returnsTrue(String ip, boolean isValidExpected) {
        assertEquals(isValidExpected, ConfigHelper.isIPv4(ip));
    }

    @Test
    public void testGetDomainFromMainURL_ignoreSubdomain() {
        assertEquals("riseup.net", ConfigHelper.getDomainFromMainURL("https://black.riseup.net"));
        assertEquals("riseup.net", ConfigHelper.getDomainFromMainURL("https://riseup.net"));
    }

    @Test
    public void testGetDomainFromMainURL_handleSuffix() {
        assertEquals("domain.co.uk", ConfigHelper.getDomainFromMainURL("https://subdomain.domain.co.uk"));
        assertEquals("domain.co.uk", ConfigHelper.getDomainFromMainURL("https://domain.co.uk"));
    }
}